هذا الموضوع هو ملخص لهذا الموضوع:
http://www.sitepointforums.com/showt...threadid=63318
وقد أضفت بعض الإضافات.
الآن وقد بدأت في تعلم لغة برمجة ما، كيف تبدأ في عمل البرامج؟ تستطيع أن تبدأ في كتابة أي برنامج، لكن هل فكرت في الخطوات اللازمة لإنشاء البرنامج؟ هل خططت ووضعت أهداف البرنامج؟ في عالمنا العربي نفتقر إلى التخطيط في كل شيء تقريباً، حتى أساليب التخطيط لا تكون صحيحة في الكثير من الأحيان، ولذلك نرى تخبطاً في مشاريع كثيرة، لذلك، في هذا الموضوع أكتب بعض التلميحات حول كيفية التخطيط للبرامج وكيفية إنشاء البرامج فعلياً وما هي الخطوات اللازمة لذلك، وسأركز على لغة PHP وقواعد البيانات Mysql.
1) حدد الهدف من برنامجك.
لا يوجد شيء في الحياة بلا هدف، ولا بد أن تحدد الهدف من برنامجك، قد يكون تحديد الهدف أمراً غامضاً، وهذا يرجع إلى أن الفكرة غير واضحة في ذهنك أو أن هناك خيارات عديدة لديك ولم تختر أياً منها، وتحديد الهدف يساعدك على عدم تضييع الوقت بإضافة خصائص غير ضرورية في البرنامج، ويكون في نفس الوقت مقياساً لمدى نجاحك في إنجاز ما تريد.
كيف تحدد الهدف؟
أ) الهدف يجب أن يكون واضحاً محدداً، لا تقل: أريد أن أبرمج منتدى، بل حدد أكثر، هل تريد أن يكون هذا المنتدى لموقعك فقط؟ أم أنه لمنافسة منتدى آخر مثل phpBB أو VB؟ أو أنك تريد إنشاء منتدى بسيط للمواقع التي لا تحتاج لبرامج المنتديات الكبيرة والمعقدة؟ حدد بالضبط هدفك.
ب) حدد توقيتاً لهدفك، كم تحتاج لإنجاز الهدف؟ شهر؟ أسبوع؟ قم بتحديد المدة اللازمة لتحقيق هدفك لأنك إن لم تحدد مدة زمنية معينة، قد تسوف الأمر حتى ينتهي عمرك ولا تحقق هدفك.
2) حدد شكل البرنامج.
قم بإنشاء ملفات HTML عادية، تحدد فيها الشكل الذي تريد للبرنامج أن يخرج به، عادة ما تكون برامج PHP عبارة عن صفحة رئيسية فيها الأقسام الرئيسية، ثم من صفحة القسم ترى مجموعة مشاركات أو مقالات، وفي صفحة المقالة تجد بطبيعة الحال المقالة المطلوبة مع تفاصيل كثيرة كالتاريخ وكاتب الموضوع وتقييم الموضوع، عادة ما تشترك معظم برامج PHP في هذه الصفحات.
قم بتحديد شكل هذه الصفحات وهذه فقط أمثلة:
- الصفحة الرئيسية للبرنامج.
- صفحة القسم (إن كان هناك أقسام متعددة في البرنامج).
- صفحة المقال أو الموضوع.
- نسخة المقال للطباعة.
- لوحة التحكم بتفاصيلها الضرورية.
وفي كل صفحة حدد التفاصيل الضرورية التي يجب أن تكون في البرنامج، فمثلاً هذه التفاصيل الضرورية لصفحة المقال:
- عنوان المقال.
- المقال نفسه.
- كاتب المقال.
- تاريخ كتابة المقال.
أكتب كل هذا على الورق، ربما من الأفضل أن تكتب هذه التفاصيل في حاسوبك لكي تكون سهلة التعديل متى ما أردت أن تقوم بتغييرها.
3) صمم قاعدة البيانات.
قم بتخطيط قاعدة البيانات الضرورية لبرنامجك، واختبرها حتى تصل إلى أفضل تصميم لبرنامجك، لأنها أساس موقعك وأي خطأ في تصميمها سيجعلك ربما بحاجة إلى برمجة برنامجك من جديد.
4) قم بتصميم نظام التصفح لبرنامجك.
قد يكون نظام التصفح قائمة بسيطة من الروابط أو شيء أصعب من ذلك، المهم أن يكون نظام التصفح سهل الاستخدام من قبل الزوار ويخبرهم أين هم وكيف يتنقلون بين أقسام البرنامج.
5) إبدأ في كتابة البرنامج!
الآن وقد صممت وخططت لكل شيء، لم يبقى إلا أن تكتب البرنامج، قم بإنشاء ملفات فارغة لبرنامجك واكتب فيها ملاحظات تخبرك عن مهمة هذا الملف وما يجب أن يحتويه، وعندما تكتب البرنامج، عليك أن تتجنب كتابة أي أوامر برمجية بشكل متكرر، إذا وجدت أنك بحاجة إلى مجموعة أوامر بشكل متكرر، فعليك أن تجعلها كدالة (Function) تستخدمها متى ما أردتها، وهذا يوفر عليك الوقت والجهد، وعادة ما تكون الإعدادات وأوامر الاتصال بقاعدة البيانات أمور مشتركة بين كل البرامج، لذلك قم بعمل دالة (Function) لكل أمر واحفظها في حاسوبك لكي تستخدمها متى ما أردت في أية مشاريع متسقبلية، وحاول بقدر الإمكان فصل التصميم عن أوامر البرمجة، بحيث تستطيع تعديل التصميم فيما بعد كما تشاء دون المساس بأوامر البرنامج.
إبدأ البرمجة بملف الإعدادات الذي يسمى عادة config.php، حيث تضع فيه المتغيرات اللازمة للبرنامج، ثم بملف الاتصال بقاعدة البيانات db_connect، وكذلك ملف الدخول إلى لوحة التحكم login.php، وأذكر بأن هذه مجرد أمثلة، وكل برنامج قد يحتاج إلى ملفات أخرى غير مذكورة هنا.
6) كن مرناً.
أثناء كتابة البرنامج قد تواجه مشاكل أو تجد حلولاً أخرى غير موجودة ضمن المخطط، كن مرناً ونفذ ما تراه في صالح البرنامج.
7) كن منظماً.
- اكتب قائمة بما يجب عليك فعله بالتفصيل، هذا يساعدك على عدم نسيان مهمة ما، ويعينك على متابعة تنفيذ البرنامج.
- اكتب في كل ملف تاريخ آخر مرة قمت بتعديله.
- اختبر البرنامج بشكل دائم وبكل الاحتمالات، وصحح الأخطاء التي تجدها.
- أطلب من الآخرين أن يختبروا البرنامج واكتب ملاحظاتهم.
8) وثق كل شيء.
يجب عليك أن تتعود أن تكتب كل شيء عن البرنامج، ففي ملفات البرنامج نفسها عليك أن تكتب ملاحظات تشرح أوامر البرنامج، وعليك أن تكتب ملفاً يشابه ملفات readme.htm، تشرح فيه الهدف من البرنامج وكيفية تركيبه والمشاكل المحتملة وكيفية حلها، وملف آخر تكتب فيه التغييرات التي طرأت على برنامجك مع كل إصدار، فتكتب فيه مع أول إصدار خصائص البرنامج الأساسية، وفي كل إصدار جديد، تكتب الخصائص التي أضفتها للبرنامج، وإذا كنت مهتماً بحفظ حقوقك، فعليك أن تكتب بالتفصيل حقوق استخدام البرنامج، هل تبيح للآخرين تعديله وإنشاء برامجهم الخاصة من خلال برنامجك؟ هل توافق على أن يستفيد الآخرون من برنامجك تجارياً؟ ربما أنت تبيع البرنامج فهل تمسح لمن اشترى برنامجك أن يوزعه على الآخرين؟ أكتب بالتفصيل كل شيء حتى تضمن حقوقك أو على الأقل يكون لديك نظام واضح لكيفية الاستفادة من جهودك.
موضوع مهم: كيف انتهت برمجة المنتدى في إسبوع؟ (منتدى الموسوعة العربية)
http://www.c4arab.com/showthread.php?threadid=13331
ملاحظة: قريباً جداً تعود دروس المواقع