الثلاثاء، 17 سبتمبر 2013
السلام عليكم و رحمة الله
اليوم ان شاء سأوضح لك الطريق الى برمجة الويب ، لن نتعامل مع أكواد برمجية لكن سأوضح لك ما عمل كل لغة في الموقع ، لتتوضح لك الرؤية ، فللأسف الفرق بين المبرمج العربي و الأجنبي هو أن العربي تعلم لغة لأنه رأي أن كثيرون يتقنونها دون أن يحدد ما يريده بالظبط و لا سييحتاج اللغة ،و كما هو موضح في العنوان لن نتطرقة الى كل اللغات بل الى لغات الويب فقط
أولا لنأخذ أي صفحة ويب ، و لتكن صفحة الفايسبوك
1-كما ترون الصفحة بها حقول للكتابة ، و رابط ، و صور ، و نصوص ... ، و هذا ما نسيمه بهيكل الصفحة ، أي أنه هو الأساس ، و لادخال هذه الأشياء (الصور و الراوبط و النصوص ...) سنحتاج الى لغة هيكلة و التي هي ال html .
ال  لغة هيكلة و ليست لغة برمجة لأنه ليس بها دوال و بارامترات ... ، المهم ال html هي لادراج الأشياء في الصفحة لا غير
2-هنالك من سيقول لي ، ان أدرجت الأشياء في الصفحة (الجداول و الصور ...) فهذا كل شئ ، أقول لك لا ، لأنه بادراج الأشياء لا نتحكم فيها ، مثلا كالعرض و و المحاذاة و الارتفاع ...، و لأوضح أهمية ما أقوله ، سآخد نفس الصفحة لكن من دون تزيين

نعم ، هكذا ستبدو صفحاتكم من دون تزيين (يمكن التحكم في بعض الخصائص من ال  لكنها محدودة و أغلبها في النسخ القديمة أي أنها ألغيت رغم أنها ما زالت شغالة في الكثير من المتصفحات)
اذا نحتاج للغة تزيين ، اذا نحن في حاجة ل css ، و مرة أخرى ال css ليست لغة برمجة بل لغة تزيين فقط و هي فقط مكملة للغة الهيكلة html ، (يمكن قيام بها أشياء أخرى بها فمثلا توجد واجهة على لينكس اسمها cinnamon تمت برمجتها ب css)
3-هل هذا كل شئ ؟ ممكن ، لكن لصفحات احترافية ستحتاج لأن تتفاعل الصفحة مع المستخدم ، و سنبقى في نفس الصفحة(facebook) ، لأوضح معنى تفاعل الصفحة

لاحظ أنه عندما ضغطت على زر في أعلى الصفحة ظهرت قائمة لم تكن موجودة في الصفحة دون اعادة تحميل الصفحة ، أي أنه ظهرت قائمة بلغة الهيكلة html و مزينة بال css ، لكنها لم تكن موجودة الا عند الضغط و ستختفي مرة أخرى عند الضغط مرة ثانية
لاحظ أيضا أنها قد أخبرتني بوصول رسالة لم تكن موجودة من قبل و دون تحميل الصفحة , نفس الشيئ بالنسبة للأصدقاء المتصلين و ما الى ذلك ...
ما يحدث هنا هو أنه توجد لغة تجمع بين ال html و ال css و لاتنفذ الا عند حدوث شئ معين أو وقت معين ، أي أنها تنتظر حدثا (كالضغط مثلا) لتقوم بعمل ما (اظهار القائمة مثلا) ، توجد العديد من اللغات تقوم بهذا العمل لكن أشهرها هي javascript , كما يمكنك القيام بنفس الشيئ بمكتبات مشتقة من ال javascript نفسها و لعل أشهرها ال jQuery و ال MooTools
أريد أن أشير لشيئ آخر هو أن الرسائل يتم جلبها من قاعدة البيانات أولا ، ثم اظهارها بالجافاسكريبت هذه التقنية تسمى بالأجاكس ، و هي تعتمد على الجافاسكريبت ، كما توجد دوال في الجيكويري تسهل الأجاكس
4- هل صفحتنا الآن كاملة ؟ أكيد ، لكن لم ننته بعد ، فأين الايميلات و الباسوردات و الرسائل و البوستات ... انها في قاعدة البيانات :) ، أي أننا سنحتاج لقاعدة بيانات ، أها ، يوجد الكثير منها و لعل أشهرها ال mysql و ال mysqli ، و هي التي بها جداول مقسمة على صفوف و أعمدة ، و هي التي تحتفظ و تنظم كلمات المرور و الرسائل و البوستات ... اذن سنحتاج لتعلم ال mysql أو ال oracle أو ال mysqli
5-هل انتهينا ؟ لا ، لكن هذا آخر شيئ أعدكم ، الآن لدينا الصفحة ، و قاعدة البيانات ، كيف سنأخذ ما في الصفحة و نقارنه ما في قاعدة البيانات و نجلب ما في قاعدة البيانات و نعرضه في الصفحة ...؟
في هذه الحالة سنحتاج لاحدى اللغات البرمجية التي تتعامل مع صفحات الويب و قواعد البيانات ، و أشهر لغة ويب هي ال php ، اذن ستحتاج للغة ال  لتأخد المدخلات من الصفحة (الرسائل ، كلمات المرور ...) لتدخلها الى قاعدة البيانات و العكس ، كما ستتحق من المدخلات ، أي مطابقة كلمات المرور ، و كذلك هل تم تسجيل الدخول ، و كذلك عدم وجود استعلامات لاختراق قاعدة البيانات ...
الآن انتهينا :) ، ان فهمت هذه الأشياء و أتقنتها فعند ذلك يمكنك القول أنك مبرمج ويب
الى هنا تنتهي تدوينتي ، انتظروني في درس آخر

Wassim Rel

عن المدون

0 التعليقات