كيف أصبح مبرمج ؟ من أين الطريق

كيف أصبح مبرمج ؟ من أين الطريق



مجال تطوير الويب هو المجال الذي أستطيع أن أقول أنني أمتلك فيه رؤية واضحة لنفسي ، لكن عندما يأتيني سؤال : كيف أصبح مبرمج ؟ أكون مضطرا أن تكون إجابتي بسؤال أيضا ؟ ماذا تريد أن تبرمج ؟ غالبا تكون الإجابة بـ " هممممممم " ، أضيف .. ماذا تحب ؟ و تأتيني " همممممممممم " أخرى و ابتسامة :) .

من هو المبرمج ؟

لنبدأ بالجزء الخفي عن الناس ، و هو أن المبرمج هو شخص مهمته الأساسية هي وضع حلول منطقية للمشاكل ، أو وضع خطوات واضحة لتوفير خدمة معينة أو حل مشكلة قائمة ، نعم فالأمر لا يقتصر على كتابة الأكواد . بالمناسبة الأكواد هي الأوامر التي تعطيها لجهاز الكمبيوتر بلغة يفهمها حتى يكون قادرا على تنفيذها .

المبرمج لا يقضي كل وقته في كتابة الأكواد ، لكن المبرمج يقضي جزء كبير من وقته في التخطيط ، و التفكير المنطقي ، و تصميم برنامجه و وضع نموذج دقيق للعمل . و من هنا دعنا نتفق أن الورقة و القلم هي أدوات أساسية للمبرمج ! و تأكد أنك بعد دخول عالم البرمجة ستتغير طريقة تفكيرك تماما ، سيتغير سلوكك في كل شيء ، العيب الوحيد أنك ستتحول إلى شخص " محسوك " .

المبرمج يبدأ عمله بالتركيز على الأشياء الأساسية ، و يرى النتيجة النهائية أو الهدف دائما أمام عينه ، و خلال الطريق بين البداية و الهدف يبدأ في اضافة المزيد من التفاصيل و التسهيلات . حياة المبرمج هي أفضل تطبيق على قاعدة 20/80 . المبرمج هو الشخص الذي تتكون مهاراته و قدراته بمرور الأيام و المشاكل التي وقع فيها !

ما هي مجالات البرمجة ؟

مجالات البرمجة عديدة جدا ، تطوير الويب ، تطوير برامج سطح المكتب ، مبرمجي النظم ، علوم البرمجيات ، و غيرها الكثير و الكثير ، و كل نوع من هذه الأنواع يندرج تحته أنواع و تخصصات أخرى متنوعة و متعددة . لكن حديثنا هنا سيقتصر على ثلاثة : تطوير الويب ، و تطوير تطبيقات المحمول أو الهواتف النقالة ، و تطوير برمجيات سطح المكتب .

تطوير الويب

دعنا نتفق أن كل مجالات التطوير الثلاثة التي ذكرناها يوجد فيها تخصص لتطوير واجهات الاستخدام UI ، واجهة الاستخدام هي المنفذ الذي يستطيع من خلاله المستخدم أن يتعامل مع البرنامج الذي قدمته له ، فلو ضربنا المثال بواجهة نظام النوافذ 7 Windows 7 أنظر في الاسفل لشريط المهام ، و الأيقونات الموجودة فيه ، على اليسار ستجد زر " ابدأ " بالضغط عليه ستظهر لك قائمة ، أنظر لأعلى الشاشة ستجد شريطا للعنوان . هذه هي واجهة الاستخدام بشكل مبسط ، يمكنك أن تطبق نفس المفهوم على أجهزة الموبايل أو مواقع الويب .

إن أردت تكون مصمم أو مطور مواقع انترنت فعليك أن تبدأ بلغة الترميز HTML . هناك فارق بين مصمم مواقع الانترنت و بين مطور مواقع الانترنت ، و في جمل بسيطة فإن المصمم هو من يصنع الشكل أو واجهة الاستخدام في حين أن المبرمج أو المطور هو من يصنع الوظيفة لهذه الواجهة . يمكنك تعلم HTML من عدة مصادر استخدم الروابط التالية ، و تأكد أن HTML لن تتعدى دراستها سوى ساعات محدودة . [ لغة عربية ] [ لغة انجليزية ]. بعد تعلم HTML سينقسم الطريق أمامك .. ماذا تريد أن تكون مصمم أم مطور ؟

يبدأ طريق مصمم الويب بـ CSS ثم Jquery غالبا و هذا اختياري ، لكن نصيحتي لك أن تتعلم Javascript بعد تعلم CSS ثم من بعدها ستكون قادرا على استخدام أي مكتبة من مكتبات جافاسكربت و من بينها جي كويري بالتأكيد . أعرف أن الأمر أصبح مبهما الآن ، فماذا تصنع هذه اللغات ؟

CSS تساعدك في عمل تصميم يتم تطبيقه على كامل موقعك ، و هي جزء أساسي في كل مواقع الانترنت اليوم ، و جافاسكربت تساعدك على اضافة المزيد من الديناميكية لموقعك ، ماذا تنتظر ؟ أفضل مصدر للتعلم من وجهة نظري هو w3schools ستجد عليها كل ما تحتاجه لتبدأ تطوير و تصميم الويب .

أما طريق مطور الويب ، فبعد الانتهاء من تعلم HTML انتقل لجافاسكربت ، ثم لغة من لغات الـ server side ... هل مازال الأمر مبهم ؟ نعم بالتأكيد .. تعلم php أو C# . حسنا اذهب لنفس الرابط و هو w3schools ! [ لكن تأكد أنه هناك الكثير من اللغات الأخرى المستخدمة في الويب منها بايثون و روبي .. ] لكن نصيحتي أن تبدأ بلغة لها دعم قوي على الانترنت ، تستطيع الوصول بسهولة لمصادر للتعلم ، و مجتمعات للدعم ، هل فهمت ما أعنيه ؟

تطوير تطبيقات الموبايل أو سطح المكتب

مجال تطوير تطبيقات الموبايل ينقسم غالبا بين الكبيرين Android و IOS ... وقت كتابة هذه التدوينة أنا مطور Android مبتديء ، و الطريق الذي بدأت منه هو موقع أندرويد الرسمي بعدما تعلمت لغة Java و التي تختلف عن javascript بالطبع. و غالبا بعد اتقاني لتطوير أندرويد سأكتب هنا عن هذا الطريق ، و كيف تدخله .

و لتطوير تطبيقات سطح المكتب تعلم أحد لغات البرمجة ، مثل C# أو C++ أو java . و النصيحة الأخيرة أنك إذا اردت أن تتعلم كل المفاهيم الخاصة بالبرمجة سريعا فلتبدأ بلغة C++ ، ثم انتقل لغيرها فيما بعد إن أردت ، فهي ستفتح لك الطريق لفهم أي لغة برمجة أخرى .


شارك الموضوع