26 تغريدة 94 قراءة Sep 15, 2019
جايب سلسلة خفيفه لطيييييفه جداً كتبتها على السريع، وراح يكون اسمها #البرمجه_ليقو
ماني جالس أشرح أي شي في البرمجة، ولكن جالس اشرح "كيفية الوصول للمعلومة" في البرمجة من مصادر انجليزيه حتى لو ما تعرف الشي الكثير في الانجليزي ??
يتبع،
المصادر راح تكون مواقع كثير، منها:
-Google
-Stack overflow
-Github
-Medium Magazine
وغيرها الكثير...
وراح ناخذها حبه حبه بدءاً من الصور في قوقل الى مقالات مختلفه ومراجع لنفس اللغه وغيرها،،،
اللي بعده، ?
وطبعاً راح أختار لغة انا لا أفقه فيها شيء وهذا الثريد للناس اللي ماتعرف تستخرج معلومة لأي مشكلة وما تعرف تستخدم مراجع.
وأرجع وأقول:
لا تعطني سمكة.. بل علمني كيف أصطادها
نبدأ؟ طبعاً الثريد راح يكون حوار مدري ايش اللي جاني لكن فلسفة قبل النوم ?
نبدأ؟
بسم الله
كله Lego!
البرمجة وُجدت لحل المشكلات،
ولن تتعلم إلا بحل المشكلات!
عمرك شفت كتالوج مع مكعبات ليقو!؟ لا!?
بالضبط! البرمجة مكعبات ليقو!
ما تحتاج احد يعلمك كيف الشكل النهائي!
أو تمشي على شرح كأنك تمشي على وصفة طبخ!
تعلم كيف تركب المكعب بس!
وتعلم ايش وظيفة كل مكعب..
يتبع،
أقولكم إياها وبصراحة مافي انسان على وجه الأرض يقدر يسوي مشروع بدون أخطاء أو يكتب بدون ما يستخدم قوقل أو مواقع ثانيه!
مافي شي اسمه احط اي مكعب في اي مكان، في اكواد ما تجي الا بعد اكواد وفي اكواد ما تجي الا قبل اكواد. وطبعاً هذا يعتمد على اللغة نفسها مثلاً في لغات مهم فيها التسلسل ولغات غير مهم فيها التسلسل،
في لغات الاساس لازم ازرق واللي فوق احمر واللي جنبه اصفر. وفي لغات هذا غير مهم فيها
يتبع،
كل مكعب في البرمجة له Documentation اي دليل شروحات مثلاً مدري لو ترجمتها صح ?
في هذا الدليل تلاقي هذا الشي وين ينكتب وايش وظيفته وكيف لو حاب تعدله ومن وين،
لو مالقيت اللي تبحث عنه جا وقت قوقل.
قوقل جبار والكثير مو عارفين كيف يستخرجوا المعلومات منه.
خليني اشرح لكم افضل
يتبع،
اسف ادري بتكرهوني ? عشان هاللغة
بس لأني #فعلياً ما أعرف شي أبداً في الـ Ruby!
من وين ابدأ!؟ ""ليس"" كيف أبدأ!
هذا اهم سؤال في البداية
اول شي اسويه بدون تفكير أوجه أسئلتي للعم قوقل! ابداً لا تشيل هم الترتيب والقرامر ?
اول سؤال كذا ببساطه
What is Ruby
يتبع،
-ايش يقصد!؟
نقرا سطر سطر عشان نعرف من "وين" نبدأ الآن..
يقولك Ruby is High-level...
-كيف يعني High-level؟
-يمكن قصدهم صعبه!؟؟؟
مدري عمنا قوقل موجود!
قوقل،
طبعاً راح اكتب اللي ابغاه ولان high level تعني اشياء كثيرة راح اكتب جنبها:
in programming
يتبع،
جاتنا هذي بس الحين ضعت صح؟
-ايه
ماعليك العين تحب الصور ??? خلينا ندور بالصور افضل يمكن نفهم
يتبع،
لقينا هالصوره!
-اها في شي اسمه low-level كمان!
ايوه بس شايف فرق بينهم!!
-يمكن قصدهم واحد اصعب من الثاني!
ايوه
Low-level يعني باينري! يعني شي تحت! واقرب للهاردوير!
-اجل معناتها الـ High-level اعلى واقرب للانسان ومفهومه!
صح
خلينا نرجع للـRuby نشوف ايش عندهم كمان!
يتبع
-اوووف كثير بالانقليزي خليني ادور بالعربي
بتجيك اوقات كثير زي كذا بس عاااااااادي لا تستسلم لو تبغى تتعلم!
ايش المكتوب هنا!؟
-Ruby is an interpreted
-كيف يعني!!؟؟؟
قووووووووقل
what is interpreted in programming
طلع لنا كذا في قوقل ?
-اهااا يعني مو اكتب بعدين تتغير للغة آلة او باينري اللي هي ١٠١٠٠١٠١٠١
خليني افهمك اكثر ممكن تترجم الكلمة!؟
-اها طلع قصدهم مفسر
طيب ايش النوع الثاني اللي في الصورة!؟ ?
Compiler-
ترجمها اول!
-طلع معناها مترجم!
اها افهمك الحين!!
يتبع،
حلو يعني لغة "روبي" ما تحتاج مفسر او مترجم يحولها لـ Binary اللي هو 1010100100 عشان الآلة تفهمها!
لانها Interpreted وهذي الكلمة قلنا معناها يعني مُفسرة يعني نفس البيئة راح تفهمها وتتعامل معها بدون ما تاخذ وقت للتحويل!
تمام؟
-تمام
يتبع،
الان ايش هذا!؟
-لا كذا كثير ?
ماعلييييك والله سهالات ?
خلينا نخش ونشوف ايش الموضوع!
ننسخها زي ماهي!
صح اللي فوقها General-Purpose ترجمتها بقوقل مكتوب هدف عام! بس واضح يقصدوا لغة عامة يعني مو مخصصة لشي معين!
نرجع لجملتنا الطويلة!
خلينا ندور عليها!
يتبع،
-الله! يا ولد فكني من شرك خلينا ندور شرح عربي!
لاااااا ما عليك ? دقيقة وش ذا ?
-قلنالك خلينا ندور بالعربي ترا ماني كويس بالانجليزي!
ما عليك الحين نقلب فيها ونشوف كيف نلاقي حل
البرمجة وتعلمها وتطبيقها كلها عبارة عن مشكلة وحل!
اعتبر احتياجك مشكلة والمعلومة الحل!
يتبع،
الحين هذي الجملة
It supports multiple programming paradigms, including procedural, object-oriented, and functional programming
فكك الجملة!
-هاه؟
فككها!
-It supports multiple programming paradigms
حلو غيره؟
-تحتوي على هذي يقولك!
-procedural
-object-oriented
-functional
-الحين لازم نعرف الفرق! صح؟
بس هو يقولك ان في انواع للـ Paradigms
عارف معنى Paradigms؟
-لا
طيب وش منتظر؟ ترجمها وتعال لو سمحت!
عرفت معناها!؟
-بالله طلع هذا معناها؟ وش فيها كأنها صعبه لما قريتها!؟
قلت لك ما عليك
شفت كيف الوضع سهالات؟ حبه حبه??
نخش في اللي بعده؟
-يالله
تقولي وش طلع معناها!؟
-معناها نماذج! يعني قصدهم ان الثلاث هذيك نماذج مختلفه!؟
ايوه! بس كيف راح نسأل قوقل؟?
وحده من ثنتين يا اما نكتبهم كلهم ورا بعض عادي! او اننا نحط بينهم VS عشان نشوفها على شكل مقارنة ?
راح نستخدم VS يعني "ضد" زي ما قلنا عشان نطلع الفروقات ?
-ايش هذا حبيبي ماني فاهم شي من النتايج!طلعت معقده!
ما عليك!! انت تستطيييع يا مدير ???
طيب ناخذها وحدة كل مره وش رايك!؟
-طيب يعني قصدك ناخذ
procedural
وبعدين
functional
وبعدها
object-oriented
ايوه??
يتبع،
تعال شوف ايش طلع معانا لما بحثنا عن اول وحدة! قووووووقل! طبعاً راح نستخدم
in programming بعد الكلمة لانها ممكن تجيب لنا نتائج مالها علاقة في البرمجة!
طيب ترجمت هذي الكلمه!؟
procedural
-لا
طيب لا عاد تكمل شرح معي وانت ما ترجمت اي كلمة الا لو عارف معناها! ?
يتبع، ?
-طيب ترجمتها
ايش معناها؟
-اجرائي.
حلو يعني نموذج اجرائي خلينا نقوقلها نشوف ايش هي ??
زي ما قلنا عمنا قوقل بيجيبها صح ?
راح نكتب
procedural in programming
او
procedural programming
عادي زي ما قلنا ارمي طرف الخيط لقوقل وهو يضبطك ???
-كيف يعني؟
المعنى اللي عندنا اجرائي والصورة فيها تسلس...
-ايوه فهمت يعني قصدك ان البرنامج يبدأ من نقطة ويمشي في اجراءات؟
طيب لا تقاطعني حبيبي ثاني مره ?عشان لا اسحب عليك ?
صح يعني آلية البرنامج انه يمشي في إجراءات بالكود بالتسلسل.
خليني اوضحها لك التغريدة الجايه
يتبع،
نكملها!؟
تذكير: عمري ما درست برمجة! ولكن علمت نفسي بنفسي بدون دورات ?? وحبيت اشارككم الطريق الصعب للتعلم مو عشان انفركم ولكن عشان تعرفوا الطرق المختلفه للوصول للمعلومه

جاري تحميل الاقتراحات...