متقدمة كمثال @CodeIgniter فهو يعتمد على procedural programming وعلى بنية MVC التي تقتضي تقسيم المشروع الى ثلاث اطراف Model - View - Controller يمكنك تعلمها بكل سهولة
بالنسبة للخيار الاول فهو افضل خيار حيث يمكنك تعزيز مهاراتك البرمجية وتجربة واكتشاف اخطاءك وتصحيحها..?
بالنسبة للخيار الاول فهو افضل خيار حيث يمكنك تعزيز مهاراتك البرمجية وتجربة واكتشاف اخطاءك وتصحيحها..?
سلبية هذا الخيار ان المشروع سيكون فيه العديد من الاخطاء والثغرات وخاصة لوكنت جديدا في التعلم وايضا لاحقا سيكون صعبا في الصيانة والتطوير ويصبح legacy code مع مرور الوقت لكن كما اسلفت الذكر ستستفيد من هذا الخيار بشكل كبير لأن الغاية الاولى هي ان تتعلم وتطور نفسك وتتعلم من اخطاءك.?
بالنسبة للخيار الثاني فهو افضل من الاول لكن سلبيته يستغرق البعض من الوقت لأنك عندما تطور فريمورك خاص بك فيجب ان تعتني به دوما وتطوره باستمرار ليواكب النسخ والمكتبات الحديثة لكن سيسهل عليك بناء مشاريع به ويسرع العملية كذلك يفيدك بتطوير نفسك عن طريق الاطلاع على اكواد الاخرين..?
لأنك دوما في بحث مستمر لتطوير فريمورك خاص بك وتحتاج الى الاطلاع على اكواد المحترفين لتحسينه كذلك الشيء الجيد ربما في نقطة ما تستطيع نشره كمفتوح مصدر open source وتدع المبرمجين الاخرين يعطون اقتراحتهم ويطورنه عن طريق منصة github.
بهذه الطريقة تبقى دوما في تعلم وستصل الى مفاهيم..?
بهذه الطريقة تبقى دوما في تعلم وستصل الى مفاهيم..?
متقدمة كالOOPو Design pattern و Unit Test..الخ فلا شيء افضل من تطوير نفسك بالتطبيق العملي والاستفادة من تجارب الاخرين.
الخيار الثالث استخدام فريمورك جاهز هذه الطريق اسهل من الاولى والثانية لكنها ليست افضل لك كمتعلم في بداية الطريق, صحيح انها تختصر عليك الوقت والجهد لكن..?
الخيار الثالث استخدام فريمورك جاهز هذه الطريق اسهل من الاولى والثانية لكنها ليست افضل لك كمتعلم في بداية الطريق, صحيح انها تختصر عليك الوقت والجهد لكن..?
على حسابهما ستضيع فرصة تطوير نفسك وستكون وتيرة تعزيز مهاراتك برمجية بطيئة نوعا ما لأنك ستكون محصورا في مجال ضيق بما يتعلق بالفريمورك الذي تستخدمه لذا فهو يختصر عليك الجهد والوقت وبما انه يختصرهما فسيختصر ويقلص ايضا العلم والمعرفة البرمجية الواسعة ويحصرك في زاوية ضيقة..?
إذا متى تستخدم كل خيار ؟
تستخدم الأول :
اذا أنت في بداية التعلم يعني مبتدئ وتبني مشاريع لنفسك او مشاريع تطوعية او جامعية اومشاريع شخصية تستخدمها لنفسك وايضا حتى عندما تريد تعويد نفسك على كتابة اكواد طويلة دون ملل
تستخدم الثاني :
عندما تريد دخول الى عالم open source..?
تستخدم الأول :
اذا أنت في بداية التعلم يعني مبتدئ وتبني مشاريع لنفسك او مشاريع تطوعية او جامعية اومشاريع شخصية تستخدمها لنفسك وايضا حتى عندما تريد تعويد نفسك على كتابة اكواد طويلة دون ملل
تستخدم الثاني :
عندما تريد دخول الى عالم open source..?
وايضا الوصول الى مستوى متقدم في تطوير برمجيات ولديك صبر كبير في التعلم وقراءة الاكواد الاخرى فهذا الخيار ملاءم لك
تستخدم الثالث:
عندما تريد بناء مشروع فعلي لعميل اثناء رحلة تعلمك ولاتريد تضيع المشروع وتريد ذوق طعم دراهم ?(مزحة بالطبع ?) لما تريد بناء مشروع فعلي ولاتريد جعله..?
تستخدم الثالث:
عندما تريد بناء مشروع فعلي لعميل اثناء رحلة تعلمك ولاتريد تضيع المشروع وتريد ذوق طعم دراهم ?(مزحة بالطبع ?) لما تريد بناء مشروع فعلي ولاتريد جعله..?
مليء بالثغرات والاخطاء وايضا تختصر الوقت على نفسك وعلى العميل فهذا الخيار مناسب لك مع أنك لن ستفيد كثيرا في تعزيز مهاراتك البرمجية بل ربما قد تبني المشروع ونصف كوده لست تفهمه جيدا بل تتبع تعليمات docs الخاصة بالفريمورك دون الفهم المعمق لها.
هل استفدت من الثريد ؟
#تطوير_الويب
هل استفدت من الثريد ؟
#تطوير_الويب
كتبت ثريد سابق حول legacy code يمكنك الاطلاع عليه من هنا:
جاري تحميل الاقتراحات...