برمجة الويب web development ولا عندو إقبال كبير و هادشي راجع للإنتشار الكبير ديال الهواتف فالعالم و أيضا المواقع الإلكترونية أي واحد قادر إوصل ليهم من أي جهاز, عكس التطبيقات اللي كاتكون خاصة بنوع محدد من الأجهزة و نظام تشغيل معين.
إلى قررتي تتعلم ل web development خاصك ترسم الطريق اللي غادوز منها باش تربح الوقت و الجهد لأن الطريق الخاطئ يقدر يأدي بيك للفشل و الإستسلام, لذلك فهاد المقال غانتعرفو على الطرقان اللي كاينين و نشرحو كل وحدة فيهم باش تقدر تختار اللي تناسبك.
أول شيئ خاصك تعرفو هو أن ل web كايتكون من جانبين Frontend
و Backend
.
1- Frontend :
ل frontend هو الواجهة الخاصة بالمستخدم فين يقدر يضغط على الأزرار, إشاهد الصور, يقرا مقالات, يكتب ...
لإنشاء واجهات المستخدم غاتحتاج 3 أشياء:
-HTML
: بإستخدامه إمكلينا نبنيو الصفحة و نحددو العناصر اللي فيها من نصوص و صور و أزرار...
-CSS
: بإستخدامه إمكلينا نحددو الحجم و اللون و شكل عناصر ل HTML.
-JAVASCRIPT
: بإستخدامه إمكلينا نطلبو data من server أو نرسلوها, نحددو شنو غايوقع ملي المستخدم يضغط على شي زر و كذلك نتحكمو في عناصر ل html.
واش هادشي كافي ؟
إلى تعلمتي هادشي فأنت قادر تقاد واجهات مستخدم و تقدر تكتافي بهادشي لكن باش تسمي راسك frontend developer خاصك تتعلم شي frontend library ولا framework. اللي هي مجرد أداة غاتساعدك باش تبني داكشي اللي باغي بطريقة سريعة و إحترافية و كذلك منضمة.
شنو الفرق بين library و framework ؟
تقدر تتسائل شنو الفرق بين library و framework, الفرق هو أن ل framework كاتجي بالعديد من الأدوات جاهزين هادشي كايخليك تبني بسرعة لكن مكاتعطيكش حرية كبيرة بالإضافة لأن الوزن ديالها كايكون كبير. عكس library اللي كاتكون خفيفة فالوزن و كاتخليك تحدد كلشي كيف بغيتي أنت.
- من بين أشهر ل frameworks كاين
Angular
وVue
- من بين أشهر libraries كاين
React
وJquery
من الأفضل ؟
في الحقيقة حتى وحدة ما حسن من الأخرى. كل وحدة عندها نقاط قوة و نقاط ضعف. أنت خاصك تتعلم وحدة فقط لذلك دير بحث و شوف كل وحدة كيفاش كاتخدم و شنو كاتقدمليك, حاول تعرف نقاط القوة و نقاط الضعف ديال كل وحدة. هاكذا غاتعرف شكون اللي تناسبك.
2- backend :
هو برنامج كايكون في server كايقوم بالتواصل مع قاعدة البيانات database
و كايستقبل طلبات ل frontend
و كايعالجها. ل backend قادر إدير العديد من الأشياء كمعالجة الصور أو التواصل مع خدمات خارجية, مثلا إجراء مكالمات هاتفية أو إرسال البريد الإلكتروني ....
لغة البرمجة :
كاينين العديد من لغات البرمجة اللي بإمكانك تستعملهم باش تنشئ ل backend, منهم python , golang , java , php ... كما أنه بإمكانك تستخدم javascript في ل backend بإستخدام nodejs اللي هو بيئة كاتعطيك القدرة على إستعمال javascript خارج المتصفح.
خاصك تتعلم لغة وحدة و هنا أيضا مكاينش هادي حسن من هادي, دير البحث ديالك و شوف اللي تناسبك.
قاعدة البيانات database :
من بعد خاصك تتعلم شي قاعدة بيانات, اللي كاتكون المهمة ديالها حفض المعلومات. هنا كاينين 2 انواع ديال database.
SQL
: مثلا MySQL , PostgreSQL, SQLite ... فهاد النوع , المعلومات كايتم الحفض ديالهم على شكل جدول. 👇
NoSQL
: مثلا Mongodb , MariaDB, CouchDB ... فهاد النوع , المعلومات كايتم الحفض ديالهم على شكل ملفات. 👇
بالنسبة لقاعدة البيانات بدا غير بوحدة من نوع sql
مثلا Mysql
و وحدة من نوع Nosql
مثلا Mongodb
. من بعد ملي غاتبدا تخدم مشاريع كبيرة غاتعرف بلي بعض الأحيان ما تقدرش تستخدم أي database بغيتي و هادشي راجع لنوع التطبيق اللي غاتقاد لذلك خاصك تكون عندك فكرة على مختلف ألانواع.
security :
هاد الجانب مهم بزاف باش تحمي التطبيق و قاعدة البيانات, دائما كاين الجديد فهاد المجال لذلك خاصك تبقا متبع الاخبار الخاصة بالأمن و تقوم بتحديث دائم للبرامج اللي كاتستخدمهم.
fullstack :
بكل بساطة هو تجمع بين ل backend و ل frontend , يعني ان أي مبرمج كايخدمهم بجوج كايتسمى fullstack developer.
أشياء مهمة :
سواء بغيتي تخدم ل backend
ولا ل frontend
كاينين أشياء خاصك تبحث عليهم و تفهمهم مزيان:
1- كيفية عمل ل web
2- ماهي ل private key و ما هي public key
3- ما هي ل ssl certificate
4- الفرق بين http و https
5- ما هم ل cookies و ما عملهم
6- ماهي ل ip address
7- ما هو ل API
8- ما هو Github و كيف تستخدمه
9- ما هو Git و كيف تستخدمه
ما نقدرش نذكر كلشي لكن دكرت الأساسيات. ما تخلعكش هاد الائحة حيت كاينين بعض الأشياء اللي تفهمهم ف 10 دقائق.
النهاية :
دير فبالك ان هادي مجرد البداية حيت عالم البرمجة كايتطور كل يوم, يعني دائما خاصك تبحث و تعلم أشياء جديدة. و كل يوم كادوزو فهاد المجال هو يوم كايطورو فيه المهارات ديالك. و تذكر انه إلى بغيتي توصل فهاد المجال خاصك تسول و تعاود تسول و ما تحشمش من السؤال و كن متأكد دائما غا تلقا الجواب.
كانتمنا ليكم التوفيق