السلام عليكم ورحمة الله وبركاته نبدأ على بركة الله عند التفكير في بناء برنامج،فإن أغلب المبرمجين يبدأون في كتابة أكواد البرنامج دون تخطيط مسبق،وهو في طريقه لبناء البرنامج يتعثر بأولى مشاكله وينهي فكرة البرنامج من دماغه نهائيا،فيضيع جهده هباءا منثورة. وكي لا نصل الى طريق مسدودة يجب علينا أن نطرح مجموعة اسئلة عند بناء البرنامج. 1- ما هو تعريف البرنامج بوجهة نظرك؟ البرنامج بوجهة نظر الكثيرين بأنه كتلة واحدة متحدة،فهذا التعريف خاطئ،ولكن التعريف الصحيح للبرنامج بأنه مجموعة من الاوامر التي تهدف لعمل معين،فكل أمر من أوامر البرنامج تشكل مشكلة بحد ذاتها لها طريقة علمية للوصول للحل الأمثل لهذه المشكلة بما يتناسب مع الحاسوب. 2- حللنا البرنامج إلى مشاكل عديدة لتعطيني مرونة في تخطيط البرنامج وانجازه بسهولة، ولكن السؤال يكمن بــــــــ كيف نحل هذه المشكلة؟؟؟!!!!!!! لحل هذه المشكلة يجب أن نتبع مجموعة من الخطوات نلخصها في ستة خطوات: الخطوة الأولى : تحديد المشكلة ونحدد المشكلة عن طريق طرح عدة أسئلة منها: 1- هل هي مشكلة فعلا؟ 2- ما هي المدخلات(البيانات) المطلوب معالجتها لحل هذه المشكلة؟ 3- ما هي المخرجات التي يجب أن نصل اليها بعد حل المشكلة؟ الخطوة الثانية : تحليل المشكلة ويكون ذلك بتقسيمه الى أجزائه الرئيسية وهي: 1- المدخلات وأنواعها. 2- المخرجات وتنظيم كتابتها. 3- الحل الأمثل بما يتناسب مع الحاسوب. وهي الخطوة الاساسية في حل المشكلة. الخطوة الثالثة : كتابة الحل خطيا(كتابة الخوارزمية) وهو كتابة خطوات متسلسة ومتتابعة رياضيا ومترابطة منطقيا (تعريف الخوارزمية) وهذا أحد الأوجه لكتابة الخوارزمية _ مخطط كتبي(خطي) ويوجد مخطط أخر مخطط سير العمليات مخطط تصويري وهو تمثيل خطوات الحل بالرسم بواسطة رموز حيث كل رمز يمثل عملية محددة. الخطوة الرابعة : كتابة الحل بواسطة احدى لغات البرمجة وهو كتابة الكود المصدري للبرنامج (Source Code) المكتوب باحد لغات البرمجة الذي نفهم بسهولة ومن ثم نحوله الى البرنامج الهدف (Object Code) الذي يفهمه الحاسوب عن طريق برنامج المترجم (Compiler). الخطوة الخامسة : تجربة البرنامج وتكون بوضع معطيات تجريبة وتجريبها في البرنامج للتأكد من صحتها منطقيا ومطابقتها لحل مكتوب يدويا على سبيل المثال،لتجريبها على المدخلات الحقيقية. الخطوة السادسة : توثيق البرنامج توثيق البرنامج ويكون بوضع المخططات التي تشرح البرنامج وكيفية عمله وأهدافه،وكيفية تنفيذ البرنامج واجرائاته متضمنا وضع المستندات والمخططات الرسومية.