لكل من ينوي تعلم تطوير المواقع..
تحت هذه التغريدة سأضع أشهر التقنيات و اللغات المختلفة المستخدمة في تطوير المواقع و سأوضح خارطة الطريق لمن أراد الدخول في هذا المجال أو التقدم فيه...
#برمجة #حزب_المبرمجين
تحت هذه التغريدة سأضع أشهر التقنيات و اللغات المختلفة المستخدمة في تطوير المواقع و سأوضح خارطة الطريق لمن أراد الدخول في هذا المجال أو التقدم فيه...
#برمجة #حزب_المبرمجين
تعتبر الhtml + css تقنيات أساسية حيث لايوجد تقنيات بديلة يمكن اختيارها لعمل الصفحات و تصميمها للموقع
استخدام أحد هذه الخيارات ليس إجباريا كذلك، لكن الاعتماد على الcss-html-Javascript بشكل كامل دون استخدام أحد الخيارات المذكورة سيزيد من وقت العمل بشكل كبير و سيقلل من جمالية و جودة النتائج و هو أمر نادر الحدوث في المواقع بصفة عامة
ثم تأتي بعدها المرحلة الثانية و هي الخاصة ببرمجة منطق الموقع على السيرفر و التعامل مع قاعدة البيانات و التي يطلق عليها:
Backend development
و هذه المرحلة تحوي العديد من الخيارات المختلفة و هي أكثر بكثير من الخيارات الموجودة لتطوير الfrontend و خياراتها كالتالي:
Backend development
و هذه المرحلة تحوي العديد من الخيارات المختلفة و هي أكثر بكثير من الخيارات الموجودة لتطوير الfrontend و خياراتها كالتالي:
لكل من هذه اللغات عيوبه و ميزاته و الجدل حول الأفضل بينها لا ينتهي، و في النهاية اختيار أي واحدة منها و تعلمها سيؤدي الغرض.. و لذلك على مبرمج المواقع أن يختار أحدها و يتعلمه بشكل مفصل حتى يتقنها و يصبح خبيرا فيها
و الحقيقة أن تعلم اللغة هي الخطوة الأولى و هي الخطوة الأسهل..
تطوير المنطق على السيرفر و برمجة قواعد البيانات و التعامل معها باستخدام اللغة وحدها سيكلف المبرمج الكثير من الوقت و الجهد.. إذا ما هو الخيار الآخر؟
تطوير المنطق على السيرفر و برمجة قواعد البيانات و التعامل معها باستخدام اللغة وحدها سيكلف المبرمج الكثير من الوقت و الجهد.. إذا ما هو الخيار الآخر؟
الخيار الآخر هو استخدام أحد أطر العمل-frameworks- الخاصة بكل لغة حيث أن ميزاتها كثيرة جدا، منها:
١- تختصر الكثير من الوقت و الجهد
٢- تسهل بشكل كبير العمل مع فريق العمل
٣- توفر بعض الاحتياطات الخاصة ببعض جوانب حماية الموقع من الاختراق او الاطلاع على البيانات
و غيرها..
١- تختصر الكثير من الوقت و الجهد
٢- تسهل بشكل كبير العمل مع فريق العمل
٣- توفر بعض الاحتياطات الخاصة ببعض جوانب حماية الموقع من الاختراق او الاطلاع على البيانات
و غيرها..
لكن ماهو إطار العمل؟
إطار العمل هي مجموعة كبيرة من ملفات الأكواد الجاهزة و التي تعتبر أساسا مشتركا لأغلب المواقع حيث يبدأ المطور عمله من خلالها بدلا من البدء من الصفر
إطار العمل هي مجموعة كبيرة من ملفات الأكواد الجاهزة و التي تعتبر أساسا مشتركا لأغلب المواقع حيث يبدأ المطور عمله من خلالها بدلا من البدء من الصفر
و لذا يعتبر استخدام أطر العمل أمرا أساسيا، و لكل لغة كذلك أطر عمل مختلفة، و كذلك الجدل حول أفضل إطار عمل لكل لغة لا ينتهي و لكل أسبابه و حجته.. و سأذكر أشهر أطر العمل لكل لغة..
بعد تعلم برمجة السيرفر يجب التعرف على قواعد البيانات و طريقة التعامل معها و كغيرها من أجزاء تطوير المواقع فإنها تحتوي على عدد من الخيارات التي يمكن استخدامها
في البداية يجب التنويه على أن قواعد البيانات تنقسم لقسمين:
relational (sql) - non-relational (NoSql)
و لا يتسع المجال لذكر أوجه التشابه و الاختلاف.. و لكن يمكن الاطلاع عليه من هذه المقالة التي تقارن بين النوعين:
link.medium.com
relational (sql) - non-relational (NoSql)
و لا يتسع المجال لذكر أوجه التشابه و الاختلاف.. و لكن يمكن الاطلاع عليه من هذه المقالة التي تقارن بين النوعين:
link.medium.com
و من المفترض أن اختيار النوع يكون بناء على طبيعة المشروع.. إلا أن الاختيار غالبا - بناء على ملاحظتي على الأقل- يكون للsql
ولا أعتقد أن السبب في ذلك طبيعة المشروع بقدر ما هو انتشار الsql بشكل أكبر بين المطورين
ولا أعتقد أن السبب في ذلك طبيعة المشروع بقدر ما هو انتشار الsql بشكل أكبر بين المطورين
و إن أرادالمطور التقدم أكثر بعد ذلك فإن هناك بعض التقنيات أو أطر العمل التي تحسن كثيرا من أداء الموقع و تجعله أسرع بمراحل عن طريق نقل مهمة تحميل الصفحات إلى المتصفح بدلا من السيرفر مما يعني أن المتصفح لن يحتاج إلى التواصل مع السيرفر لعرض الصفحات و سيكون التواصل فقط لجلب البيانات
هذه التقنيات ليست بدائل عن أطر العمل التي ذكرتها سابقا و إنما يتم استخدام أحدها مع أحد أطر العمل الخاصة بالbackend و لا ترتبط أطر العمل بتقنية محددة و إنما يمكن للمطور اختيار أي إطار عمل للbackend مع أي تقنية من التقنيات
أخيرا هناك مسار آخر تماما لمن أراد تعلم تطوير المواقع دون بذل جهد و وقت كبيرين و دون الحاجة لتعلم البرمجة و هو عن طريق تعلم أحد نظم إدارة المحتوى أو نظم إدارة المتاجر الإلكترونية أو نظم إدارة المحتوى التعليمي.. الخ
و لأن لكل خيار ميزاته و عيوبه فإن السهولة و البساطة يقابلها عدة سلبيات:
١- أنها خاصة لمواقع إدارة المحتوى كالمدونات و المواقع الإخبارية مثلا و تخصيصها لغير ذلك ممكن لكن ليس دائما
٢- لا يوجد حرية كاملة في التحكم بالتصميم و في بعض الميزات الخاصة دائما
و غيرها
١- أنها خاصة لمواقع إدارة المحتوى كالمدونات و المواقع الإخبارية مثلا و تخصيصها لغير ذلك ممكن لكن ليس دائما
٢- لا يوجد حرية كاملة في التحكم بالتصميم و في بعض الميزات الخاصة دائما
و غيرها
أخيرا.. لو أردت أن أنصح بدورة واحدة فقط لتطوير المواقع فهي أحد الدورات على موقع يوديمي
التقنيات المضمنة فيها:
html-css-JavaScript-jquery-bootstrap-semantic-node js
مدتها: ٤٦ساعة (يمكنك أخذ جزء منها كالفرونت اند فقط مثلا)
الرابط:
udemy.com
#برمجة #حزب_المبرمجين
التقنيات المضمنة فيها:
html-css-JavaScript-jquery-bootstrap-semantic-node js
مدتها: ٤٦ساعة (يمكنك أخذ جزء منها كالفرونت اند فقط مثلا)
الرابط:
udemy.com
#برمجة #حزب_المبرمجين
جاري تحميل الاقتراحات...