عبدالعزيز البراهيم
عبدالعزيز البراهيم

@oxred9

18 تغريدة 14 قراءة Jan 18, 2021
كثير أسئلة تجي ، كيف ومن وين أبدا بتعلم البرمجة ؟
في هذه المقالة راح اشرح الشيء هذا بشكل مفصل ان شاءالله
@programming_4
@PrograminLovers
أولاً وقبل كل شيء لازم نعرف ان لغات البرمجة متشابهة بشكل كبير جداً في كثير من الأمور ، الفروقات غالباً تكون في ال (syntax) أي طريقة كتابة الشفرة البرمجية (الكود)
الآن نستفيد من هذي المعلومة أن الشخص إذا تعلم في البداية لغة برمجية وحده وبنى أساس قوي في هذي اللغة ، يصبح تعلم اللغات الثانية بمنتهى السهولة
وهذا يفسر وجود أشخاص متقنين للعديد العديد من لغات البرمجة
طيب الآن كيف أبدا بتعلم البرمجة 🤔 ، الجواب بكل بساطة يجب في البداية ان تحدد هدفك من البرمجة ، ووش الشيء اللي تبغى تبرمجه بالضبط ؟
لغات البرمجة كثيرة ولكل لغة وظيفة معينة اوعدة وظائف تقوم بها ، فا إذا اردت ان تكون مبرمج ويب ، يجب أولاً تعلم (html) كركيزة أساسية ثم يأتي بعدها (css and javaScript) ، تساعدنا هذه في تصميم واجهات المستخدم والمسماة بال (front-end) ، أما اللغات التي تُستعمل
في جانب السيرفر (قواعد البيانات ، API ...) تسمى بلغات ال (back-end) ، ومن أمثلتها (php , java , python ...) ، ومن ثم يأتي تعلم تصميم قواعد البيانات ، ثم أخيراً التعلم على كيفية التعامل مع السيرفرات والتي تكون غالباً تشتغل بنظام (GNU/LINUX) ⁦❤️⁩
يسمى الشخص الذي يستطيع التعامل مع هذا كله ب (Full stack developer) ، أي يستطيع التعامل مع (client-side) و (server-side) ، يعني بتاع كلو 😂 ، هذا فيما يخص المواقع الإلكترونية
في برمجة تطبيقات الجوال هناك عدة لغات أيضاً ، فمثلاً ، لغة (java) و (kotlin) يتم استخدامهم في تطوير تطبيقات الآندرويد ، ولغة (swift) و (objective-c) يتم استخدامهم في تطوير تطبيقات ال ios ، وتسمى التطبيقات التي تبرمج بإحدى هذه اللغات ب (native applications)
طيب هل من الممكن برمجة تطبيق جوال يشتغل بكلا النظامين بدلاً من كتابته مرتين ؟ ، الجواب نعم ، كيف طيب ؟ ، هنا يأتي اسم (hybrid applications) أي تطبيقات هجينة تستخدم إطار عمل ولغة واحدة ليتم بذلك تشغيل التطبيق لكلا النظامين
أمثلة ذلك ، (flutter framework) والذي يعتمد على لغة البرمجة (dart) ، هناك أيضاً إطار عمل آخر يسمى ب (xamarin framework) والذي يعتمد على لغة البرمجة C# ، والكثير من إطارات العمل الأخرى بنفس الطريقة والتي هدفها إنشاء تطبيقات تعمل لكلا النظامين أو عدة أنظمة
وأخيراً برمجة تطبيقات سطح المكتب ، والتي يتسخدم فيها عادة عدة لغات ، مثل ، (java ,c# ...)
الآن هل البرمجة مقتصرة فقط على هذه الثلاث مجالات ، الجواب طبعاً لا ! ، فعالم البرمجة كبير وضخم وبحررر ويشمل العديد من المجالات الأخرى غير التي تم ذكرها في هذه المقالة
طيب الآن شخص وده يتعلم برمجة لكن لا يعلم أي المجالات يجب أن يختار ، ولايجد أي ميول لأي من هذه المجالات بعد ، لكن لايريد ان يضيع عليه الوقت بلا فائدة بل يريد تعلم البرمجة ، فما الحل ؟ ، الحل بكل بساطة هو تعلم لغة برمجة واحدة وبناء أساس قوي فيها ، لأجل
ان يكون تعلم المجالات ولغات البرمجة الأخرى في منتهى السهولة لديه في حالة ظهرت لديه ميول الى إحدى المجالات ، طيب وشي اللغة التي يجب أن أبدأ فيها بالضبط ؟
برأيي الشخصي البدء بلغات قوية مثل (java) ، ولا اعني قوية انها مرغوبة او غير مرغوبة او اي شيء اخر أبداً ، الشيء الذي اقصده ان لغة كهذه توفر لك تعلم مفاهيم لاتوجد في لغات البرمجة الأخرى ، وهذا سيسمح لك تعلم أي لغة برمجية أخرى أياً كانت
أياً كانت بسهولة بعدما تمكنت وبنيت أساس قوي في البرمجة ، وبالتوفيق لك يارب ⁦❤️⁩
وفي الختام :
لاحول ولاقوة الا بالله 🌹

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