اليوم بدي أتكلم عن الطريقة الصحيحة لتعلم لغة برمجة جديدة في أقصر مدة زمنية ممكنة، مع التنبيه بإنه هاي الطريقة غير نافعة لتعلم لغة البرمجة الأولى في مسيرتك.
هذا المقال راح يكون مبني على تجربتي مع لغة Rust واللي تعتبر من أصعب اللغات من ناحية التعلم نتيجة لشموليتها وإحتواءها على الكثير من الخصائص والميزات.
أنا كمبرمج تطبيقات ويب ما عمري احتجت أتعلم Rust لكن في بداية الفصل الماضي قررنا نختار هاي اللغة لبناء مشروع التخرج الجامعي، وبتذكر صديقي حذرني وقاللي: "دير بالك Rust مش سهل تعلمها".
وبعدها قدرت -بفضل الله- أتمكن من اللغة خلال فترة أقل من شهر واليوم بدي أشارككم الطريقة اللي أنا اتبعتها.
من أهم الأشياى اللي لازم تعرفها حتى قبل تعلم الsyntax هي الفلسفة العامة للغة، هاي الجزئية بتعتمد بشكل رئيسي على النظر في الصفحة الرئيسية للغة أو عن طريق النقاش مع أحد برامج الذكاء الاصطناعي (أنا شخصيا بستخدم جيميناي) مثل هاي الأسئلة:
بعد ما أخذنا فكرة عامة عن اللغة صار لازم نوخذ فكرة عنها من ناحية الsyntax، من رأيي أحسن طريقة هي إنك تحضر كراش كورس على اليوتيوب ويفضل ما يكون كثير طويل أو مليان تفاصيل، ﻷنه بدنا نعرف التفاصيل لاحقا.
هذا من وجهة نظري هو الشيء الوحيد اللي بتحتاج فيه اليوتيوب عشان نتجنب فخ الTutorial Hell إلا إذا حبيت تتابع قنوات بتنزل محتوى عام عن اللغة أو advanced tips and tricks.
هذا هو الجزء الأهم في تعلم أي لغة، ﻷنك راح تكتسب خبرة حقيقة باللغة بدال ما تكون خبرتك كلها عبارة عن متابعة فيديوهات فقط.
اللي بدك تعمله كالاتي، بتروح على الai المفضل عندك وبتطلب منه مشاريع تستخدمها عشان تتعلم اللغة اللي بدك تتعلمها.
إذا ما بدك تستخدم الai ممكن تبني مشاريع سابقة بنيتها بلغات مستخدمة في نفس المجال.
يفضل في كل مشروع بتطلبه من الذكاء الاصطناعي تركز على فكرة معينة في اللغة، أنا مثلا وأنا بتعلم Rust كنت مركز على بناء مشاريع الsystem programming لأنه هذا هو اختصاص Rust، وكان تركيزي على المواضيع التالية:
وعن طريق التركيز على هاي القائمة بنيت مجموعة من المشاريع البسيطة وركزت على تقليد مشاريع مشهورة منها:
لازم ما ننسى أنه عملية التعليم دايما مستمرة، خلي عينك دايما على الdocs الخاصة باللغة اللي بتتعلمها ﻷنها أهم مصدر على الإطلاق وحاول اقرأ الأجزاء الadvanced من الdocs عشان تحافظ على تطورك تغطي أكبر جزء ممكن من اللغة.
هاي بالنسبة الي هي الطريقة الأفضل لتعلم أي لغة بدون تضييع وقت وهاي الطريقة مبنية على تجربتي واجتهادي واللي عنده نصائح أهلا وسهلا، بتمنى الكل يستفيد من هذا المقال والحمد لله رب العالمين.