Web Development Code
فهمتوا حاجه .
الي اختارو مفهمناش حاجه يقولوا مفهموش اي.
ليه ارقام العناصر في المصفوفة بتبدأ من صفر ؟
في البداية بس حابب اقول ان في لغات برمجة الرقم فيهم بيبدأ من 1 مش 0
طيب ايه الفرق وليه اللغات الحديثة كلها بتبدأ من 0 مش 1
عشان نفهم السبب لازم نعرف ازاي الكمبيوتر بيخزن المصفوفة
احنا عارفين ان الذاكرة بتتكون من مجموعة اماكن وكل مكان بيكون له عنوان معين اقدر من خلاله اتعامل مع المكان دا
لو انا عندي متغير كالآتي
x = 5
ف هنا الكمبيوتر هيروح في مكان ما في الذاكرة (وليكن عنوانه 100) ويحفظ جواه القيمة 5 ويبقى x دا عبارة عن اسم مستعار لعنوان المكان دا
يعني لما اقول x ف انا اقصد القيمة اللي جوا العنوان 100
طيب لو عندي مصفوفة ؟
a = [5,6,7,.....]
هنا الكمبيوتر بيروح يدور في الذاكرة على مجموعة اماكن جنب بعض تناسب عدد عناصر المصفوفة
ولنفترض انه لقى الاماكن دي من اول العنوان 200
هيبدأ يخرن عناصر المصفوفة في كلا من
200, 201, 202, ..........
طيب ازاي الكمبيوتر هيعرف ان المصفوفة a عناصرها موجودة من اول العنوان 200 ؟
الكمبيوتر بدور على مكان تاني فاضي (وليكن مثلا عنوانه 300) ويخزن جواه عنوان اول عنصر في المصفوفة (اللي هو 200) ويبقى اسم المصفوفة عبارة عن اسم مستعار للمكان دا
يعني لما اقول a ف انا اقصد القيمة اللي جوا العنوان 300
طيب لما اقول a[i] ؟
دي هنا بتترجم ل a+i
يعني هات القيمة اللي جوا a وزود عليها الرقم i ويبقى دا العنوان الجديد اللي عايز القيمة اللي جواه
يعني
a[2] = 200+2 = 202
طيب لو عايز اول عنصر في المصفوفة ؟
اول عنصر عنوانه 200 ودا القيمة اللي موجودة جوا a فبالتالي مش محتاج ازود حاجة (او بمعنى اخر انا بزود 0)
200 = 200+0 = a[0]
يعني ممكن اقول ان رقم العنصر دا بيدل على عدد الخطوات اللي محتاج امشيها من اول عنصر لحد ما اوصل للعنصر اللي انا عايزه
وعشان كدا ارقام العناصر بتبدأ من صفر
طيب اللغات اللي بتبدأ من 1 نظامها ايه ؟
بتكون معادلتها
a[i] = a+i-1
يعني محتاج اعمل عملية زيادة عشان اجيب العنصر اللي عايزه
طب يا عم دي عملية واحدة مش هتفرق في حاجة
هقولك انت في البرنامج بتاعك مش هتعمل مصفوفة واحدة وتجيب عنصر واحد
وكمان العملية دي بتترجم لمحموعة عمليات اصغر عشان المعالج ينفذها
فتخيل عدد العمليات اللي هنوفرها عالمعالج لما بس نبدأ من صفر
في البداية بس حابب اقول ان في لغات برمجة الرقم فيهم بيبدأ من 1 مش 0
طيب ايه الفرق وليه اللغات الحديثة كلها بتبدأ من 0 مش 1
عشان نفهم السبب لازم نعرف ازاي الكمبيوتر بيخزن المصفوفة
احنا عارفين ان الذاكرة بتتكون من مجموعة اماكن وكل مكان بيكون له عنوان معين اقدر من خلاله اتعامل مع المكان دا
لو انا عندي متغير كالآتي
x = 5
ف هنا الكمبيوتر هيروح في مكان ما في الذاكرة (وليكن عنوانه 100) ويحفظ جواه القيمة 5 ويبقى x دا عبارة عن اسم مستعار لعنوان المكان دا
يعني لما اقول x ف انا اقصد القيمة اللي جوا العنوان 100
طيب لو عندي مصفوفة ؟
a = [5,6,7,.....]
هنا الكمبيوتر بيروح يدور في الذاكرة على مجموعة اماكن جنب بعض تناسب عدد عناصر المصفوفة
ولنفترض انه لقى الاماكن دي من اول العنوان 200
هيبدأ يخرن عناصر المصفوفة في كلا من
200, 201, 202, ..........
طيب ازاي الكمبيوتر هيعرف ان المصفوفة a عناصرها موجودة من اول العنوان 200 ؟
الكمبيوتر بدور على مكان تاني فاضي (وليكن مثلا عنوانه 300) ويخزن جواه عنوان اول عنصر في المصفوفة (اللي هو 200) ويبقى اسم المصفوفة عبارة عن اسم مستعار للمكان دا
يعني لما اقول a ف انا اقصد القيمة اللي جوا العنوان 300
طيب لما اقول a[i] ؟
دي هنا بتترجم ل a+i
يعني هات القيمة اللي جوا a وزود عليها الرقم i ويبقى دا العنوان الجديد اللي عايز القيمة اللي جواه
يعني
a[2] = 200+2 = 202
طيب لو عايز اول عنصر في المصفوفة ؟
اول عنصر عنوانه 200 ودا القيمة اللي موجودة جوا a فبالتالي مش محتاج ازود حاجة (او بمعنى اخر انا بزود 0)
200 = 200+0 = a[0]
يعني ممكن اقول ان رقم العنصر دا بيدل على عدد الخطوات اللي محتاج امشيها من اول عنصر لحد ما اوصل للعنصر اللي انا عايزه
وعشان كدا ارقام العناصر بتبدأ من صفر
طيب اللغات اللي بتبدأ من 1 نظامها ايه ؟
بتكون معادلتها
a[i] = a+i-1
يعني محتاج اعمل عملية زيادة عشان اجيب العنصر اللي عايزه
طب يا عم دي عملية واحدة مش هتفرق في حاجة
هقولك انت في البرنامج بتاعك مش هتعمل مصفوفة واحدة وتجيب عنصر واحد
وكمان العملية دي بتترجم لمحموعة عمليات اصغر عشان المعالج ينفذها
فتخيل عدد العمليات اللي هنوفرها عالمعالج لما بس نبدأ من صفر
السلام عليكم…
النهارده هنكمل اللي بدأنا نتكلم عنه المرة اللي فاتت عن إزاي الjs عموما شغاله وبتنفذ الكود واتكلمنا بشكل بسيط عن الmemory heap و الcall stack وادينا مثال بسيط جدا عشان نعرف اساسيات الcall stack بيشتغل ازاي وهنكمل النهارده بإذن الله على اللي بدأناه المره اللي فاتت وهنبدأ اننا ندي مثال تاني بس قبل ما نبدأ ندي المثال هنرجع نشوف تاني الdiagram اللي بيوضحلنا طريقة عمل الjs في google chrome browsers
النهارده هنكمل اللي بدأنا نتكلم عنه المرة اللي فاتت عن إزاي الjs عموما شغاله وبتنفذ الكود واتكلمنا بشكل بسيط عن الmemory heap و الcall stack وادينا مثال بسيط جدا عشان نعرف اساسيات الcall stack بيشتغل ازاي وهنكمل النهارده بإذن الله على اللي بدأناه المره اللي فاتت وهنبدأ اننا ندي مثال تاني بس قبل ما نبدأ ندي المثال هنرجع نشوف تاني الdiagram اللي بيوضحلنا طريقة عمل الjs في google chrome browsers
في ال diagram الي قدامنا ده احنا اتكلمنا شويه عن ال call stack وال memory heap بس فيه كذا حاجه لسه متكلمناش عنها والي هيا ال web api's وال event loop وال call stack queue
طبب اي دول بقي ولا لزمتهم ايه...
بص اول حاجه احنا هندي مثال بكود بسط بعد ما نشوف ال output ومنه هنبدأ شرح ازاي ال run time بينفذ الكود نبدا بالمثال الجاي..
طبب اي دول بقي ولا لزمتهم ايه...
بص اول حاجه احنا هندي مثال بكود بسط بعد ما نشوف ال output ومنه هنبدأ شرح ازاي ال run time بينفذ الكود نبدا بالمثال الجاي..
Web Development Code
Photo
بعدها يبدأ ينفذ الfunction اللي بعدها واللي هيا setTimeOut وتدخل
الstack بالمنظر ده
تمام وبعدين؟؟
بعدين هيبدأ بقى يحصل حاجه جديدة عن المرة اللي فاتت خالص ال function دي javascript عارفها وحافظها لانها built in وعارف ان بالها طويل وبتغيب على ما تتنفذ ومش غريبة عليها ولا أول مرة تنفذها
وخليك فاكر كلمة انها مش غريبه عليها دي ف الحاجه js قالتلك بدل ما الكود يقف مستني على ما الثواني بتاعت الsetTimeOut دي تخلص عد والengine مش بيعمل اي حاجه وقاعد فاضي كده لحد ما البيه يخلص عد قالك بص انا هطلعه من الstack خالص
ايه ده يعني خلاص كدا مش هنفذه؟؟
لا هنفذه وكل حاجه بس مش دلوقتي اصبر الصبر حلو
يعني هتعمل ايه؟ قالك انا هوديه للWebApi's دي تتعامل معاها هيا بمعرفتها وانا اكمل اللي كنت بعمله ولما ربنا يسهل واخلص اللي ورايا ابقى اشوف بقى ال function اللي بتغيب دي وارجعلها بعدين طيب مش فاهم برضو ايه الWebApi's دي اللي ظهرت فاجئة لا دي ما ظهرتش فاجئة ولا حاجه دي موجوده في الdiagram فوق بس احنا الي كنا ليه متكلمناش عنها
بص احنا هنتكلم عنها دلوقتي ال black box لحد ما نبدأ نفهم الدنيا كلها ماشيه ازاي وبعدها نفتح ال box ده ونشوف اي الدنيا فيه وبيشتغل ازاي .. تمام؟؟
- تمام
يبقي دلوقتي لما ال stack يلاقي حاجه هو عارف انها هتغيب بيروح يرميها لل web api's دي صح
- اه صح
طيب اي الي بيحصل بعد كده؟؟
الي بيحصل هو نفس الي حصل المره الي فاتت بدون اي تغيير ولا كأننا شوفنا أصلا ال function اسمها setTimeoit انا خلاص طالما رميتها لل web api's انا هكمل شغل عادي خالص ده بالنسبه طبعا لل stack ماناش دعوة لسه بالباقي
- يعني تعالوا نشوف الكود دلوقتي هيمشي ازاي
تابع..
الstack بالمنظر ده
تمام وبعدين؟؟
بعدين هيبدأ بقى يحصل حاجه جديدة عن المرة اللي فاتت خالص ال function دي javascript عارفها وحافظها لانها built in وعارف ان بالها طويل وبتغيب على ما تتنفذ ومش غريبة عليها ولا أول مرة تنفذها
وخليك فاكر كلمة انها مش غريبه عليها دي ف الحاجه js قالتلك بدل ما الكود يقف مستني على ما الثواني بتاعت الsetTimeOut دي تخلص عد والengine مش بيعمل اي حاجه وقاعد فاضي كده لحد ما البيه يخلص عد قالك بص انا هطلعه من الstack خالص
ايه ده يعني خلاص كدا مش هنفذه؟؟
لا هنفذه وكل حاجه بس مش دلوقتي اصبر الصبر حلو
يعني هتعمل ايه؟ قالك انا هوديه للWebApi's دي تتعامل معاها هيا بمعرفتها وانا اكمل اللي كنت بعمله ولما ربنا يسهل واخلص اللي ورايا ابقى اشوف بقى ال function اللي بتغيب دي وارجعلها بعدين طيب مش فاهم برضو ايه الWebApi's دي اللي ظهرت فاجئة لا دي ما ظهرتش فاجئة ولا حاجه دي موجوده في الdiagram فوق بس احنا الي كنا ليه متكلمناش عنها
بص احنا هنتكلم عنها دلوقتي ال black box لحد ما نبدأ نفهم الدنيا كلها ماشيه ازاي وبعدها نفتح ال box ده ونشوف اي الدنيا فيه وبيشتغل ازاي .. تمام؟؟
- تمام
يبقي دلوقتي لما ال stack يلاقي حاجه هو عارف انها هتغيب بيروح يرميها لل web api's دي صح
- اه صح
طيب اي الي بيحصل بعد كده؟؟
الي بيحصل هو نفس الي حصل المره الي فاتت بدون اي تغيير ولا كأننا شوفنا أصلا ال function اسمها setTimeoit انا خلاص طالما رميتها لل web api's انا هكمل شغل عادي خالص ده بالنسبه طبعا لل stack ماناش دعوة لسه بالباقي
- يعني تعالوا نشوف الكود دلوقتي هيمشي ازاي
تابع..
السلام عليكم جميعا :
في هذا الفيديو سوف تعلم معه بعض كيفية إنشاء مشروع header باستخدام html & css فقط
تطبيق عملي على header او navigation يعتبر اهم شئ في صفحة الموقع و شئ اساسي في جميع مواقع الويب بيقدر من خلالة يصل الى جميع المحتوئ الموجود في الصفحة و التنقل احيانا بين الصفحات
اذا كنت مهتم في هذا اكتب تعليق عن الفيديو الذي تريد ان يتم شرحة في الفيديوهات القادمة
رابط الفيديو من هنا
https://youtu.be/lEdCo6oHj1A
channel telegram: @codedevelopment
في هذا الفيديو سوف تعلم معه بعض كيفية إنشاء مشروع header باستخدام html & css فقط
تطبيق عملي على header او navigation يعتبر اهم شئ في صفحة الموقع و شئ اساسي في جميع مواقع الويب بيقدر من خلالة يصل الى جميع المحتوئ الموجود في الصفحة و التنقل احيانا بين الصفحات
اذا كنت مهتم في هذا اكتب تعليق عن الفيديو الذي تريد ان يتم شرحة في الفيديوهات القادمة
رابط الفيديو من هنا
https://youtu.be/lEdCo6oHj1A
channel telegram: @codedevelopment