اذهب إلى المحتوى

السؤال

نشر (معدل)

الاستاذ في كل الدروس يكون محضر نفس الى المشروع او الكود الزي سيكتبه و في الدرس يشرحه و يكتب الكود ولاكن انا في الوضع الحالي وفي المشاريع كيف اعلم ما هي الطريقة التي يجب ان اعمل بها كم من مشروع بداته و ثم بعد ان وصلت للمنتصف وصلت الى طريق مسدود نوعا ما بسبب بداية خطء و لهذا السبب قد اتطر الى العودة الى المشروع من الصفر و هذا ما يجعلني اترك جزء من مشاريعي غير مكتملة فما الحل كيف احضر للمكاتب اللازمة في المشروت كلها و كيف ابني المشروع بشكل متكامل و بخطوات صحيحة

تم التعديل في بواسطة رياض عثمان

Recommended Posts

  • 0
نشر

أولا المدرب يقوم بتجهيز الكود مسبقا وذلك لتقليل الوقت الخاص بالدرس فلو قام بكتابة الكود أول مرة في الدرس فهذا سيطيل وقت التعلم للطلاب جميعا . ولكن المدرب بالفعل قام بكتابة الأكواد بنفسه من البداية وتقسيم وتخطيط للمشروع وللأدوات والمكتبات اللازمة لتنفيذ ما يريده.

والمشكلة التي تواجهك هي مشكلة أغلب الطلاب في بداية التعلم فالسبب الرئيسي هو البدء مباشرة في كتابة الكود قبل فهم المشروع ككل سواء من حيث المتطلبات أو هيكل المشروع حيث :

  • لا تقوم بتحديد المتطلبات أو الميزات منذ البداية.
  • وأيضا لا ترسم صورة كاملة عن بنية وهيكل المشروع.
  • وأيضا تبدأ في كتابة الكود قبل تخطيط الحل وفهم كيف سيتفاعل كل جزء مع الآخر.

فأول شي يجب فعله هو فهم المشروع وكتابة متطلباته فقبل ان تكتب أي سطر كود يجب عليك معرفة ما سيفعله المشروع وما هي ما هي صفحاته وهيكله وما هي الوظائف الرئيسية مثل تسجيل دخول أو رفع صور أو محادثة حية (chat) أو غيرها من الخصائص.

بعد ذلك يجب عليك تصميم المشروع سواء تصميم قاعدة البيانات التي ستستخدمها لتوفر لك جميع الخصائص التي تريدها أو تصميم الواجهات أو الصفحات وغيرها . وأيضا تصميم هيكل المشروع وكيف سيتفاعل المشروع مع بعضه فمثلا في الواجهة الخلفية تقوم بتصميم ال API المناسب وما هي البيانات التي سيستقبلها من الواجهة الأمامية وهكذا حتى تستطيع تحديد كيف سيتفاعل المشروع ككل مع بعضه البعض.

بعد ذلك تحديد الأدوات والمكتبات اللازمة فمثلا هل ستسعمل واجهة خلفية ؟ إذا كان كذلك وقمت بإختيار javascript فالمناسب لك هو nodejs مع express وقاعدة بيانات mongodb . وأيضا مثلا هل تحتاج إلى واجهة أمامية ؟ إذا ما المناسب هل هو React أو Vue أم غيره بناء على متطلبات المشروع . ومثلا لو أردنا تقديم خدمة chat أو إتصال لحظي فهنا الأفضل إستخدام socket.io مثلا . ويمكنك البحث عن المكتبات التي ستساعدك أو التقينة الأفضل لتنفيذ خصائص مشروعك .

بعد ذلك وأخيرا بعد أن حددت المتطلبات وحددت التقنيات والأدوات التي ستستخدمها يمكنك الآن البدأ في كتابة الكود جزء بجزء . أى تقوم بتقسمه إلى أجزاء صغيرة كل جزء منها خاص بوظيفة معينة وتجميع تلك الأجزاء معا لتشغيل المشروع ككل .

وفي البداية ستجد بالفعل صعوبة في الأمر لذلك يجب عليك التمرين على إنشاء مشاريع كثيرة بنفسك فأن تبدأ بمشاريع بسيطة ثم تدريجيا تقوم بالتقدم في المستوى قليلا إلى أن يتحسن مستواك.

 

  • 0
نشر

تحتاج أولاً قبل كتابة سطر واحد من الكود، فهم المشروع بشكل كامل أي ماذا سيفعل المشروع؟ حدد الميزات الأساسية التي يجب أن يقدمها مشروعك. ما هي المدخلات والمخرجات؟ كيف يتلقى المشروع المعلومات؟ وماذا يقدم كنتيجة

مثال: إذا كنت ستبني تطبيق لإدارة المهام، فكر: هل سيحفظ المهام محليًا أم سيتطلب قاعدة بيانات؟ هل سيكون له واجهة مستخدم رسومية أم سطر أوامر؟

وبعدها في الخطوة التالية هي تقسيم المشروع لأجزاء صغيرة  فيمكنك التفكير في مشروعك كوحدة متكاملة، ثم قسمه إلى أجزاء أصغر يمكن إدارتها بشكل منفصل. على سبيل المثال، في تطبيق إدارة المهام، قد يكون لديك جزء لإدارة المهام (إضافة، حذف، تعديل)، وجزء لتخزين البيانات، وجزء لواجهة المستخدم و بناءً على تقسيم المشروع ومتطلباته، يمكنك الآن تحديد اللغات، الأطر (Frameworks)، والمكتبات التي ستحتاجها لكل جزء.

مثال: إذا قررت أن تطبيق إدارة المهام سيكون له واجهة ويب، قد تفكر في React أو Vue.js للواجهة الأمامية، وNode.js أو Python/Django للواجهة الخلفية، وPostgreSQL كقاعدة بيانات.

ولا تقلق فمن خلال متابعة المدرب والتطبيق معه في المشاريع التي يتم بناءها ستتعلم الخطوات السابقة 

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...