Forwarded from Web Development Code (Jax T-39AB)
السلام عليكم
هنتكلم عن ال Variables الخاص بالجافاسكربت:
هو مكان بالذاكرة يقوم بتخزين القيمه وال value الذي نعطيها له
مثال :
فهو يقوم بالتخزين فالذاكرة المتغير name باسم jax طبعا يتم عمل كومبيلر للكود ويتحول للباينري ( نظام عد ثاني)
انوع المتغيرات
var // هذا كان يستخدم ف اوائل ظهور جافاسكربت
بعدين ظهرت ES6
وقامت باضافه
let
const
طبعا هتقلي الفرق بينهم اي
مثال لـ var
فهكذا لا يحدث اي اخطاء لان ال var يقوم بالبحث فالذاكره عن ال x ويقوم بتغييرها بالقيمه الخاصه به
مثال لـ let
هكذا رح يعطيك ايرور
redeclartion of let i
وهوا ان قام بحفظ المتغير i بالقيمه 5
وقمت بعمل متغير بنفس الاسم i بالقيمه 7
فعند انشاء المتغير i بالذاكره اكتشف ان يوجد متغير بنفس الاسم لذلك اعطي ايرور
اما ال const
فهو عنصر ثابت بالذاكره لا يتغير
مثال:
رح يكون الايرور
Invaild assignment to const y
وهو انك قمت بتخزين المتغير y بالقيمه 6 ولا يمكن تغير القيمه وهي قيمه ثابته.
اتمني تكون فهمت متنساش بقي الشير الجميل بتاعك لكي نستمر😁🔥
#JavaScript
@codedevelopment
هنتكلم عن ال Variables الخاص بالجافاسكربت:
Variables
هو مكان بالذاكرة يقوم بتخزين القيمه وال value الذي نعطيها له
مثال :
var name = "Jax"
فهو يقوم بالتخزين فالذاكرة المتغير name باسم jax طبعا يتم عمل كومبيلر للكود ويتحول للباينري ( نظام عد ثاني)
انوع المتغيرات
var // هذا كان يستخدم ف اوائل ظهور جافاسكربت
بعدين ظهرت ES6
وقامت باضافه
let
const
طبعا هتقلي الفرق بينهم اي
مثال لـ var
var x = 4
console.log(x)
var x = 7
console.log(x)
فهكذا لا يحدث اي اخطاء لان ال var يقوم بالبحث فالذاكره عن ال x ويقوم بتغييرها بالقيمه الخاصه به
مثال لـ let
let i = 5
console.log(i)
let i = 7
console.log(i)
هكذا رح يعطيك ايرور
redeclartion of let i
وهوا ان قام بحفظ المتغير i بالقيمه 5
وقمت بعمل متغير بنفس الاسم i بالقيمه 7
فعند انشاء المتغير i بالذاكره اكتشف ان يوجد متغير بنفس الاسم لذلك اعطي ايرور
اما ال const
فهو عنصر ثابت بالذاكره لا يتغير
مثال:
const y = 7
console.log(y)
const y = 6
console.log(y)
رح يكون الايرور
Invaild assignment to const y
وهو انك قمت بتخزين المتغير y بالقيمه 6 ولا يمكن تغير القيمه وهي قيمه ثابته.
اتمني تكون فهمت متنساش بقي الشير الجميل بتاعك لكي نستمر😁🔥
#JavaScript
@codedevelopment
Forwarded from DoT. (بِتمان)
unix-c-notes.tar.gz
4.6 MB
البرمجة الفعالة في C و Unix
من كلية علوم الكمبيوتر، جامعة ( كارنيجي ميلون )، تم تصميم هذه الدورة لتوفير تعرض كبير للغة برمجة C وبيئة برمجة Unix.
[...] سيتعرف الطلاب أيضًا على التعبيرات المنتظمة وسيكونون قادرين على استخدام لغات النصوص مثل Perl و Shell scripting.
المصدر :
https://www.cs.cmu.edu/~guna/15-123S11/
#يونيكس #سي
Effective Programming in C and Unix
From the School of Computer Science, Carnegie Mellon University, This course is designed to provide a substantial exposure to the C programming language and the Unix programming environment.
[...] Students will also learn about regular expressions and will be able to use scripting languages such as Perl and Shell scripting
Main site https://www.cs.cmu.edu/~guna/15-123S11/
#unix #c
من كلية علوم الكمبيوتر، جامعة ( كارنيجي ميلون )، تم تصميم هذه الدورة لتوفير تعرض كبير للغة برمجة C وبيئة برمجة Unix.
[...] سيتعرف الطلاب أيضًا على التعبيرات المنتظمة وسيكونون قادرين على استخدام لغات النصوص مثل Perl و Shell scripting.
المصدر :
https://www.cs.cmu.edu/~guna/15-123S11/
#يونيكس #سي
Effective Programming in C and Unix
From the School of Computer Science, Carnegie Mellon University, This course is designed to provide a substantial exposure to the C programming language and the Unix programming environment.
[...] Students will also learn about regular expressions and will be able to use scripting languages such as Perl and Shell scripting
Main site https://www.cs.cmu.edu/~guna/15-123S11/
#unix #c
Web Development Code
مين الشاطر الي يقول لي لم استخدمت var طلع كل اللوب الناتج 3 🔥👌
خلاص محدش عارف اقول السبب 🌚
Web Development Code
مين الشاطر الي يقول لي لم استخدمت var طلع كل اللوب الناتج 3 🔥👌
هنتكلم عن السبب الي خلي الناتج يطلع 3
طبعا هنا استخدمها ال let فالناتج طبع 0,1,2
- تمام كده؟
اللوب هيتكرر 3 مرات هيجي فالمره الرابعه هيخلي قيمه المتغر i ب 3 وهيقي عند الشرط هيلاقي التلاته مش اصغر من تلاته فاللوب هيقف كده
تمام
هتقلي طب لو عملت طباعه لل i برا ال loop هيكون الناتج اي؟
خلينا نشوف..
طبعا هنا استخدمها ال let فالناتج طبع 0,1,2
- تمام كده؟
اللوب هيتكرر 3 مرات هيجي فالمره الرابعه هيخلي قيمه المتغر i ب 3 وهيقي عند الشرط هيلاقي التلاته مش اصغر من تلاته فاللوب هيقف كده
تمام
هتقلي طب لو عملت طباعه لل i برا ال loop هيكون الناتج اي؟
خلينا نشوف..
هنتكلم بقي عن ال setTimeout
كلنا عارفين انها asynchronous يعني غير متزامنة
يعني الكود لم يجي يشوفها يعرف انها هتاخد وقت فيرميها لل event loop ويكمل الكود عادي
فالكود طبعا اتكرر 3 مرات
فلما بعت ال setTimeout اول مره اصبح ان قيمه ال i = 0
وهكذا لحد ما اللوب خلص
راح سأل ال event loop في حاجه عندك ولا لا قالتله اه عندي 3 من setTimeout قالها طب اي التواتج بتاعتهم
ف اجي يشوف قيمه ال i اول مره لقيتها 0 فقله الناتج الاولاني صفر وهكذا احد مخلص التلت مرات تمام كده
كلنا عارفين انها asynchronous يعني غير متزامنة
يعني الكود لم يجي يشوفها يعرف انها هتاخد وقت فيرميها لل event loop ويكمل الكود عادي
فالكود طبعا اتكرر 3 مرات
فلما بعت ال setTimeout اول مره اصبح ان قيمه ال i = 0
وهكذا لحد ما اللوب خلص
راح سأل ال event loop في حاجه عندك ولا لا قالتله اه عندي 3 من setTimeout قالها طب اي التواتج بتاعتهم
ف اجي يشوف قيمه ال i اول مره لقيتها 0 فقله الناتج الاولاني صفر وهكذا احد مخلص التلت مرات تمام كده
const names = ["Ahmed", "Zaid", "Hussain", "Ali", "Osama"];
let currIndex = 0;
function printName(name) {
console.log(name);
currIndex++;
}
setInterval(printName, 1000, names[currIndex]);
اي الناتج مع السبب.
#js
Web Development Code
Photo
يعني ايه Node.js ؟؟؟
كلنا عارفين ان ال Node.js
دي حاجة كدا بنعمل بيها backend زيها زي مثلا ال php و ال .net وهكذا
طب لو انت حد سألك وقالك يعني ايه Node.js ؟
هل هي لغة برمجة ؟ ولا فريم ورك ؟ ولا مكتبة ؟ ولا هيا ايه بالظبط؟
صديقي العزيز احب اقولك انها ولا واحدة من كل اللي فوق دول
اومال هي ايه ؟ ال Node.js عبارة عن
JavaScript runtime environment for executing JavaScript code outside a web browser
يعني ايه بقي الكلام ده ؟ تعالي لما اقولك
علشان نفهم يعني ايه نود تعالي نجيب الخيط من اوله خالص
في سنة 2009 في واحد محترم كدا اسمه Ryan Dahl
الراجل دا كان شايف ان الجافاسكريب فيها مميزات كتير حلوة زي مثلا انها single thread وانها Non blocking فقال احنا مانستفادش من المميزات الحلوة اللي موجودة في الجافاسكريبت دي ليه ونخليها بدل ماهي بتشتغل في الفرونت ايند بس تشتغل كمان في الباك ايند ونبقي بلغة برمجة واحدة بس نشتغل باك وفرونت
فبكل بساطة عمل بيئة جديدة زي البيئة بتاعت الفرونت بس بدل ما بتشتغل في الفرونت خلاها تشتغل في السيرفر وخد نفس ال engine اللي بيعمل compile لكود الجافا سكريبت في الفرونت اللي هو اسمه v8 وحطه في البيئة الجديدة اللي بتشتغل في السيرفر والبيئة الجديدة دي سماها Node.js
علشان نفهم اكتر برضو تقدر تقول ان chrome دا الابلكيشن او البيئة اللي بتعمل run لأكواد الجافاسكريبت بس عند ال client
نفس الكلام برضو ال Node هو دا الابلكيشن او البيئة اللي بتعمل run لنفس اكواد الجافاسكيربت بس في ال server
علشان كدا احنا بنقول ان النود دي عبارة عن environment for executing JavaScript code
طب هل هو لما عمل البيئة الجديدة دي خد كل اكواد الجافاسكريبت بالظبط ولا ضاف فيها وغير فيها؟ في الحقيقة اه هو حذف كل حاجة كانت بتكلم الDOM,BOM لان احنا في سيرفر فمبقاش فيه عندنا مثلا حاجة اسمها document.getElementByIdولا اي حاجة خالص من الكلام ده
وضاف اننا نقدر نتعامل مع ال file system ودي طبعا مكنتش موجودة في ال client
كلنا عارفين ان ال Node.js
دي حاجة كدا بنعمل بيها backend زيها زي مثلا ال php و ال .net وهكذا
طب لو انت حد سألك وقالك يعني ايه Node.js ؟
هل هي لغة برمجة ؟ ولا فريم ورك ؟ ولا مكتبة ؟ ولا هيا ايه بالظبط؟
صديقي العزيز احب اقولك انها ولا واحدة من كل اللي فوق دول
اومال هي ايه ؟ ال Node.js عبارة عن
JavaScript runtime environment for executing JavaScript code outside a web browser
يعني ايه بقي الكلام ده ؟ تعالي لما اقولك
علشان نفهم يعني ايه نود تعالي نجيب الخيط من اوله خالص
في سنة 2009 في واحد محترم كدا اسمه Ryan Dahl
الراجل دا كان شايف ان الجافاسكريب فيها مميزات كتير حلوة زي مثلا انها single thread وانها Non blocking فقال احنا مانستفادش من المميزات الحلوة اللي موجودة في الجافاسكريبت دي ليه ونخليها بدل ماهي بتشتغل في الفرونت ايند بس تشتغل كمان في الباك ايند ونبقي بلغة برمجة واحدة بس نشتغل باك وفرونت
فبكل بساطة عمل بيئة جديدة زي البيئة بتاعت الفرونت بس بدل ما بتشتغل في الفرونت خلاها تشتغل في السيرفر وخد نفس ال engine اللي بيعمل compile لكود الجافا سكريبت في الفرونت اللي هو اسمه v8 وحطه في البيئة الجديدة اللي بتشتغل في السيرفر والبيئة الجديدة دي سماها Node.js
علشان نفهم اكتر برضو تقدر تقول ان chrome دا الابلكيشن او البيئة اللي بتعمل run لأكواد الجافاسكريبت بس عند ال client
نفس الكلام برضو ال Node هو دا الابلكيشن او البيئة اللي بتعمل run لنفس اكواد الجافاسكيربت بس في ال server
علشان كدا احنا بنقول ان النود دي عبارة عن environment for executing JavaScript code
طب هل هو لما عمل البيئة الجديدة دي خد كل اكواد الجافاسكريبت بالظبط ولا ضاف فيها وغير فيها؟ في الحقيقة اه هو حذف كل حاجة كانت بتكلم الDOM,BOM لان احنا في سيرفر فمبقاش فيه عندنا مثلا حاجة اسمها document.getElementByIdولا اي حاجة خالص من الكلام ده
وضاف اننا نقدر نتعامل مع ال file system ودي طبعا مكنتش موجودة في ال client
Web Development Code
const names = ["Ahmed", "Zaid", "Hussain", "Ali", "Osama"]; let currIndex = 0; function printName(name) { console.log(name); currIndex++; } setInterval(printName, 1000, names[currIndex]); اي الناتج مع السبب. #js
Media is too big
VIEW IN TELEGRAM
شرح الكود اهو يارب تكونوا فهمتوا. 🙏
Data Types in python
اشهر انواع الداتا تايب
str int float complex list tuple range dict bool
NoneType
لعرض نوع المتغير
>>>s = "Hello , World"
>>>print(type(s))
<class 'str'>
النصوص توضع بداخل " "
او ' ' اما الارقام بدون مثل
x = 0
print(x)
ملحوظه ال space يعد سترينج علشان بشوف ناس كتير بيطلعلها ايرور بسبب الموضوع ده
ثانيا مينفعش تعمل concatenate بين سترينج وانتجر والعكس لازم تحولهم هشرح امثله اما نوصلهم
#python
اشهر انواع الداتا تايب
str int float complex list tuple range dict bool
NoneType
لعرض نوع المتغير
>>>s = "Hello , World"
>>>print(type(s))
<class 'str'>
النصوص توضع بداخل " "
او ' ' اما الارقام بدون مثل
x = 0
print(x)
ملحوظه ال space يعد سترينج علشان بشوف ناس كتير بيطلعلها ايرور بسبب الموضوع ده
ثانيا مينفعش تعمل concatenate بين سترينج وانتجر والعكس لازم تحولهم هشرح امثله اما نوصلهم
#python
Web Development Code
Photo
السلام عليكم ...
asynchronous VS multi-threading
ياريت وانت بتقرا تكون فاضي ورايق لو مش فاضي دلوقتي ممكن تحفظه عندك و ترجعله بعدين
اتكلمنا المرة اللي فاتت عن يعني اي asynchronous واي الفرق بينها وبين الsynchronous وإزاي هيا كويسة لما يبقى عندي حاجة هتعملي بلوك للكود وتعطلني فهيا بتحللي الموضوع ده بإنها تشيل الجزء اللي بيعطلني ده على جنب علشان ما تعطلش باقي الكود من التنفيذ وفي نفس الوقت تروح تنفذلي حاجة تانية وبكدا أكون استفدت إني عملت كذا حاجة في نفس الوقت
-استنى كدا ...قصدك ايه بكذا حاجة في نفس الوقت؟ انت تقصد ان الasynchronous هيا هيا الmulti-threading بس مغيرة اسمها وبتشتغلنا؟؟
كدا انت غلطت وانا كنت مستنيك تغلط الصراحة عشان ندخل في موضوع النهاردة على طول واللي هنتكلم فيه عن الفرق بين الasynchronous و الmulti-threading لأن أغلب الوقت كل واحدة فيهم بتتشرحلنا لوحدها واللي بيوصلنا بعد كدا أنهم شبه بعض جدا لدرجة أنهم ممكن يكونوا نفس الحاجة أصلا بس اتشرحتلنا ب اسمين مختلفين بس مش أكتر أو إن الasynchronous مرتبطة بإن لازم يكون فيه أكتر من thread عشان أقدر أطبقها ومتنفعش مع الsingle threaded بس الحقيقة غير كدا خالص الasynchronous و الmulti-threading كل واحدة فيهم concept لوحده غير معتمد على التاني نهائيا في أي حاجة
وكلامنا النهاردة كله هيكون عبارة عن أمثلة بس مش أكتر وبإذن الله هتوضحلنا كل الكلام اللي قولناه فوق ده
بس عاوزين نقول كلمتين كدا الأول ونحطهم على جنب عشان ندي المثال اللي هنفهم بيه الفرق ده
asynchronous is about non-blocking
multi-threading is about parallelism
- ايه الكلام ده بقى؟
الكلام ده فيه ملخص كل اللي هنقوله النهاردة بس خلينا ندي مثال عشان نفهم يعني ايه الكلام اللي فوق ده وهنبدأ بأشهر مثال بيتقال لما بنشرح الasynchronous اللي هوا مثال المطعم والعامل اللي في المطعم
وهنفترض ان فيه مطعم كل عميل بييجي يقعد وبعدها ينادي على الموظف ده يطلب منه الطلب اللي محتاجه بعد كدا الموظف يروح يجهزله الطلب بتاعه ويرجع
وكان عندنا 4 مطاعم كل مطعم بيطبق طريقة معينة
-أول مطعم كان متبني فكرة الsingle threaded مع الsynchronous
-تاني مطعم كان متبني فكرة الmulti threaded مع الsynchronous
-تالت مطعم كان متبني فكرة الsingle threaded مع الasynchronous
-رابع مطعم كان متبني فكرة الmulti threaded مع الasynchronous
أول مطعم كان فيه موظف واحد طريقة شغله هوا لما أي عميل بيوصل بيبدأ يروح يشوف ايه الطلب بتاعه وبعدها يروح يجهز الطلب بتاعه في المطبخ ويجيبه وييجي بس مشكلة المطعم ده ان كان فيه اوقات كتير جدا كان بيوصل أكتر من عميل في نفس الوقت فبيضطروا ينتظروا لحد ما الموظف ياخد الطلب بتاع أول واحد ويروح يجهزه ويرجع بعدها ياخد طلب الشخص اللي بعده ويروح ينفذه ويطبخه ويرجع وطبعا كانت مشكلة كبيرة كل ما عدد العملاء بيكتر
فالناس بدأت تسيبهم وتروح للمطعم اللي بعده واللي كان متبني فكرة الmulti threaded مع الsynchronous قالوا بدل ما شخص واحد بس اللي يعمل كل حاجة احنا هنشغل 2 موظفين بدل واحد بس بنفس النظام اللي فوق وبدل ما عميل واحد بس يتخدم في المطعم بقى فيه 2 عملاء بيتخدموا في نفس الوقت كل موظف بيروح ياخد الطلب بتاع عميل واحد بس ويروح ينفذه وبعد ما يخلص ياخده يقدمه لصاحبه ويبدأ يشوف اللي بعده وهكذا
طبعا الموضوع بقى أحسن من المطعم الأول شوية بس لسة مش أحسن حاجة وجود اتنين موظفين شغالين على التوازي حسن الموضوع شوية بس لسة محتاجين تحسين أكتر
فالناس بدأت تروح تجرب المطعم التالت واللي كان متبني فكرة الsingle threaded مع الasynchronous فكان النظام فيه أنه موظف واحد موجود بس كان جدع أوي كان أول لما عميل يوصل ياخد الطلب بتاعه ويروح المطبخ ينفذه بس لو وصل أي عميل تاني بيوقف الطبخ ويروح يشوف طلبه وممكن يبدأ يطبخ في الطلب بتاعه مع الطلب التاني ويسيبهم على النار ويطلع لو فيه عميل وصل تاني ياخد طلبه ولو فيه أكل استوى ياخده يديه لصاحبه والمطعم ده كان أحسن بكتير من الاتنين اللي قبله بسبب مجهود أستاذ أحمد السقا معانا اللي كان دايما شغال ومش بيضيع وقت في إنه يعمل للعملاء اللي منتظرين بلوك وهوا قاعد في المطبخ أصلا مش بيعمل حاجة ومنتظر الأكل يستوي مش أكتر فالناس كلها بدأت تتجه للمطعم ده بس من كتر ما الناس عجبها بدأ يبان عيوب النظام ده واللي هوا السقا لوحده مش كفاية!!
فبدأ شوية شباب يفكروا وهما قاعدين ع القهوة في فكرة مشروع المطعم الرابع لما لاحظوا إن فكرة المطعم الأخير كانت ممتازة جدا بس لسه ممكن يحسنوها فيها وبالفعل بدأوا يطبقوا فيه فكرة الmulti threaded مع الasynchronous بحيث إنهم جابوا أكتر من موظف بس كلهم كانوا من نسل أستاذ أحمد السقا اللي كان شغال في المطعم التالت فبدل كان واحد بس يخدم المطعم كله بطريقة إنه ياخر الorder ويروح ينفذه بقى فيه أكتر من
asynchronous VS multi-threading
ياريت وانت بتقرا تكون فاضي ورايق لو مش فاضي دلوقتي ممكن تحفظه عندك و ترجعله بعدين
اتكلمنا المرة اللي فاتت عن يعني اي asynchronous واي الفرق بينها وبين الsynchronous وإزاي هيا كويسة لما يبقى عندي حاجة هتعملي بلوك للكود وتعطلني فهيا بتحللي الموضوع ده بإنها تشيل الجزء اللي بيعطلني ده على جنب علشان ما تعطلش باقي الكود من التنفيذ وفي نفس الوقت تروح تنفذلي حاجة تانية وبكدا أكون استفدت إني عملت كذا حاجة في نفس الوقت
-استنى كدا ...قصدك ايه بكذا حاجة في نفس الوقت؟ انت تقصد ان الasynchronous هيا هيا الmulti-threading بس مغيرة اسمها وبتشتغلنا؟؟
كدا انت غلطت وانا كنت مستنيك تغلط الصراحة عشان ندخل في موضوع النهاردة على طول واللي هنتكلم فيه عن الفرق بين الasynchronous و الmulti-threading لأن أغلب الوقت كل واحدة فيهم بتتشرحلنا لوحدها واللي بيوصلنا بعد كدا أنهم شبه بعض جدا لدرجة أنهم ممكن يكونوا نفس الحاجة أصلا بس اتشرحتلنا ب اسمين مختلفين بس مش أكتر أو إن الasynchronous مرتبطة بإن لازم يكون فيه أكتر من thread عشان أقدر أطبقها ومتنفعش مع الsingle threaded بس الحقيقة غير كدا خالص الasynchronous و الmulti-threading كل واحدة فيهم concept لوحده غير معتمد على التاني نهائيا في أي حاجة
وكلامنا النهاردة كله هيكون عبارة عن أمثلة بس مش أكتر وبإذن الله هتوضحلنا كل الكلام اللي قولناه فوق ده
بس عاوزين نقول كلمتين كدا الأول ونحطهم على جنب عشان ندي المثال اللي هنفهم بيه الفرق ده
asynchronous is about non-blocking
multi-threading is about parallelism
- ايه الكلام ده بقى؟
الكلام ده فيه ملخص كل اللي هنقوله النهاردة بس خلينا ندي مثال عشان نفهم يعني ايه الكلام اللي فوق ده وهنبدأ بأشهر مثال بيتقال لما بنشرح الasynchronous اللي هوا مثال المطعم والعامل اللي في المطعم
وهنفترض ان فيه مطعم كل عميل بييجي يقعد وبعدها ينادي على الموظف ده يطلب منه الطلب اللي محتاجه بعد كدا الموظف يروح يجهزله الطلب بتاعه ويرجع
وكان عندنا 4 مطاعم كل مطعم بيطبق طريقة معينة
-أول مطعم كان متبني فكرة الsingle threaded مع الsynchronous
-تاني مطعم كان متبني فكرة الmulti threaded مع الsynchronous
-تالت مطعم كان متبني فكرة الsingle threaded مع الasynchronous
-رابع مطعم كان متبني فكرة الmulti threaded مع الasynchronous
أول مطعم كان فيه موظف واحد طريقة شغله هوا لما أي عميل بيوصل بيبدأ يروح يشوف ايه الطلب بتاعه وبعدها يروح يجهز الطلب بتاعه في المطبخ ويجيبه وييجي بس مشكلة المطعم ده ان كان فيه اوقات كتير جدا كان بيوصل أكتر من عميل في نفس الوقت فبيضطروا ينتظروا لحد ما الموظف ياخد الطلب بتاع أول واحد ويروح يجهزه ويرجع بعدها ياخد طلب الشخص اللي بعده ويروح ينفذه ويطبخه ويرجع وطبعا كانت مشكلة كبيرة كل ما عدد العملاء بيكتر
فالناس بدأت تسيبهم وتروح للمطعم اللي بعده واللي كان متبني فكرة الmulti threaded مع الsynchronous قالوا بدل ما شخص واحد بس اللي يعمل كل حاجة احنا هنشغل 2 موظفين بدل واحد بس بنفس النظام اللي فوق وبدل ما عميل واحد بس يتخدم في المطعم بقى فيه 2 عملاء بيتخدموا في نفس الوقت كل موظف بيروح ياخد الطلب بتاع عميل واحد بس ويروح ينفذه وبعد ما يخلص ياخده يقدمه لصاحبه ويبدأ يشوف اللي بعده وهكذا
طبعا الموضوع بقى أحسن من المطعم الأول شوية بس لسة مش أحسن حاجة وجود اتنين موظفين شغالين على التوازي حسن الموضوع شوية بس لسة محتاجين تحسين أكتر
فالناس بدأت تروح تجرب المطعم التالت واللي كان متبني فكرة الsingle threaded مع الasynchronous فكان النظام فيه أنه موظف واحد موجود بس كان جدع أوي كان أول لما عميل يوصل ياخد الطلب بتاعه ويروح المطبخ ينفذه بس لو وصل أي عميل تاني بيوقف الطبخ ويروح يشوف طلبه وممكن يبدأ يطبخ في الطلب بتاعه مع الطلب التاني ويسيبهم على النار ويطلع لو فيه عميل وصل تاني ياخد طلبه ولو فيه أكل استوى ياخده يديه لصاحبه والمطعم ده كان أحسن بكتير من الاتنين اللي قبله بسبب مجهود أستاذ أحمد السقا معانا اللي كان دايما شغال ومش بيضيع وقت في إنه يعمل للعملاء اللي منتظرين بلوك وهوا قاعد في المطبخ أصلا مش بيعمل حاجة ومنتظر الأكل يستوي مش أكتر فالناس كلها بدأت تتجه للمطعم ده بس من كتر ما الناس عجبها بدأ يبان عيوب النظام ده واللي هوا السقا لوحده مش كفاية!!
فبدأ شوية شباب يفكروا وهما قاعدين ع القهوة في فكرة مشروع المطعم الرابع لما لاحظوا إن فكرة المطعم الأخير كانت ممتازة جدا بس لسه ممكن يحسنوها فيها وبالفعل بدأوا يطبقوا فيه فكرة الmulti threaded مع الasynchronous بحيث إنهم جابوا أكتر من موظف بس كلهم كانوا من نسل أستاذ أحمد السقا اللي كان شغال في المطعم التالت فبدل كان واحد بس يخدم المطعم كله بطريقة إنه ياخر الorder ويروح ينفذه بقى فيه أكتر من
Web Development Code
Photo
شخص بيعمل كدا
وهنا بقى أحب أنهي بالجملتين اللي قولناهم قبل ما نبدأ الأمثلة بتاعتنا و ان شاء الله نكون فهمنا المقصود بيهم دلوقتي
asynchronous is about non-blocking
multi-threading is about parallelism
وهنا بقى أحب أنهي بالجملتين اللي قولناهم قبل ما نبدأ الأمثلة بتاعتنا و ان شاء الله نكون فهمنا المقصود بيهم دلوقتي
asynchronous is about non-blocking
multi-threading is about parallelism