Software Engineering
السلام عليكم ورحمة الله وبركاته 👋
مهمتك كمهندس برمجيات بتتخطى كتابة الكود، لأنك حرفياً بتصل مرحلة ممكن تتعلم فيها لغة برمجة جديدة بالكامل في أسبوعين. وحالياً مع الذكاء الاصطناعي، أنت ما محتاج تتعلم "لغة برمجة" — وركزوا معاي في إني قلت لغة برمجة — المفروض تتعلم كيف تكون مبرمج.
📚 الأساسيات اللي المفروض تتعلمها:
-
أساسيات الحاسوب: عشان ما تجي تسأل الذكاء الاصطناعي بـ 3 دولار تقول ليهو: "كيف أشغل تطبيق جافا؟".
-
أساسيات الهاردوير: من ذاكرة (RAM)، وتخزين، وكاش (Cache)، ومعالج (CPU)، وغيره.
-
كواليس الكود: تعرف أساسيات البرمجة من حيث كودك بيحصل ليهو شنو، وكيف بيتحول الكود المصدري (Source Code) لـ لغة الآلة (Machine Language) لي صفر وواحد.
-
أساليب البرمجة (Programming Paradigms):
- البرمجة الكائنية (OOP).
- برمجة الدوال (Functional Programming).
- البرمجة الخطية (Linear Programming).
- برمجة تدفق البيانات (Data-flow Programming) وغيرها من الأساليب.
أنواع اللغات (Typing Systems):
- Static Type: Java, TypeScript, #C, ++C وغيرها من اللغات المحتاجة تعرف فيها نوع البيانات وتكون صارمة في التعامل.
- Dynamic Type: Python, JavaScript, PHP, Ruby وغيرها.
مفاهيم البرمجة:
-
الأساسيات: أنواع المتغيرات، الحلقات التكرارية (Loops)، الجمل الشرطية، الـ Collections، الكائنات وغيرها.
-
المتقدمة: هياكل البيانات (Data Structures)، البرمجة الكائنية وغيرها.
-
تعلم لغة البرمجة (السينتاكس): ثم أخيراً تتعلم لغة برمجة إذا عايز تتعلم الـ Syntax وطريقة التعامل مع الذاكرة، التخزين، الملفات، الويب، والنظام عن طريق لغة البرمجة الانت عايزها.
⚠️ لغاية هنا.. أنت بقيت مبرمج! ما بقيت مهندس برمجيات 🙂💔
عشان تبقى مهندس، راجياك خوارزميات، وقواعد بيانات، ورياضيات وغيره.. إن شاء الله نتكلم عنها في بوست جديد. #برمجة #يوميات_مبرمج #programming #softwares_engineering