التصفح للزوار محدود

كــيــف تـصــبــح مـُـبـرمـجــا ؟

مهتمة

التميز



كيف تصبح مبرمجا ؟




344116936.gif






تعلم البرمجة يحتاج إلى مثابرة واستعداد




يسمونها وظيفة المثابرين وذوي القدرة على
المتابعة اليومية للجديد في عالم الكمبيوتر





من يريد العمل بها لا بد أن يكون لديه
ملكة اكتساب المهارات




إنها وظيفة المبرمج


إحدى الوظائف الهامة المطلوبة في السوق العربية.





والمبرمج هو الشخص القائم على


صنع تطبيقات وبرمجيات الكمبيوتر المختلفة


وفقا لاستخدامه لغة برمجة معينة يخاطب بها الكمبيوتر


لتحقيق أغراض المستخدمين.





وبعبارة أخرى فالمبرمج هو


حلقة الوصل بين الكمبيوتر والمستخدم


فكلاهما لا يعرف لغة الآخر


ولكن المبرمج يعرف لغة الاثنين.




وكما أن تطبيقات الكمبيوتر تتفاوت من حيث أنواعها


فكذلك تتفاوت لغات البرمجة من حيث نوعية التطبيقات التي تصنعها





ومن حيث القوة والضعف


فهناك مثلا لغات خاصة بصنع برامج الوسائط المتعددة Multimedia


وأخرى لصنع تطبيقات قواعد البيانات Database


وثالثة لصنع برامج تهدف إلى أغراض أخرى... وهكذا.





متي يبدأ المبرمج عمله؟



تصميم البرامج يحتاج إلى أكثر من شخص


أو إلى شخص يجيد جميع المهام التالية والتي ينفذها:





- محللو النظم System Analysts


وهم الأشخاص القائمون على دراسة متطلبات قيام النظام ومدخلاته ومخرجاته


وكذلك تحديد الموارد اللازمة لتنفيذه


بالإضافة إلى بيان كيفية التنفيذ وشرح ديناميكية العمل


وتنظيم العلاقات المختلفة بين الكائنات الموجودة بالنظام.





-مصممو النظم System Designers


ويأتي دورهم بعد مرحلة التحليل وتحديد الاحتياجات


حيث يكون النظام بحاجة لتحديد كيفية التطبيق


من حيث الشكل العام وتصميم نماذج تحليل النظام.






- المطورون – المبرمجون Developers - Programmers


ويأتي دورهم بعد المرحلتين السابقتين


حيث يتم التنفيذ الفعلي للنماذج المصممة
وكتابة الأكواد المسئولة بدورها عن بث روح الحياة في النظام.





فمثلا إذا كنا بصدد إنشاء نظام يهدف إلى القيام
بعملية إدارة شركة ما من الناحية المالية والتجارية


فسيقوم المحللون بدراسة الدورة المستندية لهذه الشركة


وكيفية تعاملها مع الشركات الأخرى


وديناميكية العمل من حيث المستندات المستخدمة
في دورات العمل المختلفة... إلخ



وكيفية تدفق البيانات من مرحلة إلى الأخرى


وبالتالي تحليل النظام ككل بشكل متكامل.





بعد ذلك يأتي دور المصممين


حيث يتم تصميم نماذج وأشكال الشاشات
ومواضعها وطريقة عرضها وربطها ببعضها
والتي سيصنعها المبرمجون





وبعد ذلك يأتي دور المبرمجين


حيث يتم التنفيذ الفعلي لما تم تصميمه سابقا


حيث يتم كتابة الأكواد اللازمة لإنشاء كل النماذج.





وفي بعض الأحيان يقوم المبرمج - كما تقول هالة زهير


مديرة إدارة التطوير بإحدى شركات الكمبيوتر في مصر :


بعمل المراحل الثلاث السابقة بنفسه



وفي هذه الحالة يكون البرنامج الذي يتم إنشاؤه صغيرا


إضافة إلى وجوب إلمام المبرمج بالخبرات الثلاث السابقة


في نفس الوقت وهو ما يتطلب منه خبرة عالية المستوى.





المواصفات الشخصية للمبرمج




ومن حسن الحظ أن مهنة البرمجة
لا تتطلب الالتحاق بكلية معينة أو مدرسة بعينها


ولكنها تتطلب شروطا شخصية وتقنية
يجب أن تتوافر في الشخص ليصبح مبرمجا





أول هذه الشروط هو حب الإبداع ومساعدة الآخرين


بالإضافة إلى إتقان هذا الإبداع بواسطة أدوات البرمجة والتطوير
باستخدام الكمبيوتر.



ويعد ذلك هو المقوم الأساسي
الذي تقوم عليه رحلتك من الآن


وحتى احتراف البرمجة.





فمهنة البرمجة ليست من المهن التي يمكن أن تعتمد


على مجرد أداء للمهام فقط


وإنما تحتاج إلى فكر خصب وذهن حاضر


إضافة إلى تعايش كامل للموضوع الذي تعمل به.




الشرط الثاني هو أن تكون مستخدما جيدا للكمبيوتر


وتعاملت مرارا وتكرارا مع شتى أنواع البرمجيات.




ولكن يجب أن تتعامل مع البرنامج بنظرة مختلفة


عن المستخدم العادي لو أردت أن تصبح مبرمجا




وهو ما يعني أنك تنظر إلى البرنامج نظرة عميقة


لمحاولة فهم كيف تم تصميمه وإنشاؤه


ومن بعدها يمكنك الدخول إلى عالم
صناعة البرمجيات بمؤهلات مناسبة.





ويضيف هشام سليمان مبرمج مصري / 38 عاما


إلى هذين الأمرين متطلبات أخرى مهمة لشخصية المبرمج منها:




القدرة على اكتساب المهارات والمثابرة
وكذلك عقل يجيد التعامل مع الرياضيات.




ويرى سليمان أن هذه الخصال الثلاث
هي المقوم الأساسي لأي شخص


إذا أراد احتراف البرمجة لا سيما أن الوظيفة تحتاج إلى


متابعة يومية ودراسة مستمرة للجديد في عالم الكمبيوتر.





المواصفات التقنية للمبرمج



يجب على الراغب في وظيفة المبرمج أن يعرف أولا


تصنيف لغات البرمجة باختلاف أنواعها



والتي تنقسم إلى قسمين:



النوع- الأول: وهو البرمجة التقليدية
أو ما يطلق عليه Standard Programming


وهي تلك اللغات التي يكون البرنامج فيها مكونا من سلسلة من الخطوات
(من 1 إلى 100) مثلا





وهذه الخطوات تتسلسل تلقائيا في التنفيذ لتكوين البرنامج


وهي اللغات الخاصة بصنع التطبيقات


التي تعتمد على أنظمة التشغيل غير الرسومية مثل DOS Applications


ومن أمثلة هذه اللغات لغة الكوبول COBOL ولغة البيزك Basic.




فعلى سبيل المثال /


يكون البرنامج المكتوب بلغة البيزك مثلا
مكونا من مجموعة خطوات متسلسلة


فمثلا سيقوم البرنامج بمسح الشاشة ثم يطبع
كلمة WELCOME ثم ينتهي بعد ذلك


فيكون الكود الخاص بكتابته كما يلي:




10 CLS الكود الخاص بمسح الشاشة

"20 PRINT "Welcome الكود الخاص بكتابة الكلمة على الشاشة.

30 END "كود إنهاء البرنامج"




- النوع الثاني: من لغات البرمجة هو اللغات التي تقوم بصنع البرامج


التي تعمل تحت بيئة التشغيل الرسومية GUIوهي ما يطلق عليها


OOP أو البرمجة الشيئية




(البرمجة الموجهة بالعناصر أو الكائنات
Object Oriented Programming )




وفيها يتم إنشاء البرنامج عن طريق مجموعة من
الكائنات المرتبطة ببعضها البعض


والتي يؤثر كل منها في الآخر ويتأثر به.






وخير مثال على تطبيق مكتوب بأحد تلك اللغات
التي تعتمد على OOP هوبرنامج الرسام مثلا


والموجود ضمن حزمة برامج نظام التشغيل Windows
على اختلاف إصداراته.





ومن أشهر لغات البرمجة التي تنتهج هذا النهج
لغة Visual Basic- ولغة Delphi-
والعديد من اللغات الأخرى.








مبادئ البرمجة



ولكي يبدأ المبتدئ بالبرمجة بأي من هذين الطريقين السابقين


يجب أن يعلم أولا مفاهيم ومبادئ البرمجة
بشكل عام Programming Concepts.






وفي هذا الصدد يقول أشرف عبد الرحمن (مبرمج)
وخريج معهد الحاسب الآلي بالقاهرة (28عاما):




إن مبادئ البرمجة ومفاهيمها الأساسية تعتبر
الخطوة الأولى والأساسية لتعلم أي لغة برمجة




ومبادئ ومفاهيم البرمجيات لا تخص أي لغة برمجة بعينها


ولكنها خطوات ومبادئ عامة مشتركة بين جميع اللغات.





وفيما يلي


أهم المبادئ والمفاهيم الأساسية التي تحتاج إليها في هذا الصدد:




- حل المشكلات Solving Problems




يجب أن تعلم أن المبرمج بطبيعة مهنته حلال للمشكلات


التي تعترض سير العمل وذلك بشكل منطقي ومدروس.





- الخوارزم Algorithm



يقصد بالخوارزم التصور الشخصي


من قبل المبرمج لحل المشكلة


ويكون هذا الحل مكتوبا في خطوات مسلسلة


كما يمكن أن يكون للمشكلة الواحدة أكثر من طريقة حل


تتفاوت الحلول فيما بينها


من حيث سرعة الوصول إلى الهدف.




- خريطة التدفق Flow Chart



يقصد بخريطة التدفق أنها رسم برموز معينة متفق عليها


توضح التصور الشخصي لحل المشكلة. (طريقة سير البرنامج)




- لغة البرمجة



وهي الوسيلة التي يستخدمها المبرمج


لصنع التطبيقات المختلفة بها والتي تحل المشكلة.


وتؤكد مدى التكامل بين العناصر السابقة لحل المشكلة.




الفيجوال بيزك



والكل يطمح أن يكون مبرمج "Visual Basic"


محترفا أو خبيرا وهو شيء لا يأتي بين عشية وضحاها


وليس بالأمر الهين.


الكثير من المبرمجين قضوا أكثر من عشرات السنين


على لوحة المفاتيح


ومع ذلك ما زالوا مبتدئين بسبب الخبرة القليلة التي لديهم.



لكن لتحقيق ذلك ابدأ بالأساسيات


فتعلم كيف تبرمج عن طريق قراءة الكتب التعريفية


والتي تعتبر المدخل الابتدائي للبرمجة بـVisual Basic.



استكشف جميع المزايا الأساسية المتوفرة في اللغة.


اختبر الأمثلة التي تأتي مع Visual Basic


أو البرامج القابلة للإنزال من مواقع البرمجة المختلفة في الإنترنت.



وبالاعتماد على الوقت المستغرق لتعلم الأساسيات


قد تحتاج إلى عدة شهور حتى تصبح مبرمجا منافسا.




لكـــن


يجب عليك تعلم تفاصيل متقدمة في مجال Visual Basic


مثل برمجة العميل الخادم Client/Server


برمجة قواعد البيانات، بيئة التطوير المتكاملة نفسها


كالاضافات Add-Ins
إجراءات برمجة واجهة التطبيقات API
والكتب المتقدمة والأمثلة العملية قد تفيدك.





ويشير تامر مصطفى


مبرمج، هندسة حاسبات جامعة عين شمس، 24 عاما


إلى أن أي مبرمج Visual Basic محترف قد يحتاج مدة سنة


لإتقان جميع المهارات والخبرات السابقة.


وإذا نجح في ذلك فإنه يصبح مبرمجا محترفا وخبيرا حقيقيا.





ولا يعنى هذا - وفقا لمصطفى- أنك وصلت إلى خط النهاية


بل يجب على المبرمج الواعي أن يتعلم لغة برمجة أخرى


كـDelphi ، C++...





ومن الغريب جدا أنك تجد الكثير من الناس


يدخلون في مناقشات وجدل كبير لإثبات ما هي أفضل لغة برمجة.


وهي في الحقيقة مضيعة للوقت !


لأنك تستطيع عمل أي شيء بأي لغة برمجة.





ويتابع أن جميع لغات البرمجة لديها شيء مختلف تقدمه


وكل لغة تكون متميزة في إنجاز مهام معينة


وسيئة في محاولة إنجاز مهام أخرى.





لذلك على كل مبرمج أن يتعلم نقاط القوة ونقاط الضعف


في كل لغة ويقارنها مع لغة البرمجة التي يتقنها.





ووفقا لمصطفى


إذا كانت إحدى لغات البرمجة لديها نقطة قوة


في إنجاز مهمة تكون نقطة ضعف في لغة أخرى


ومن خلال تعلمك للغات برمجة مختلفة سترى العينات المشتركة التي تقدمها.





كما ستعرف كيف تضيف للغة البرمجة الخاصة بك الميزة


المتوفرة في اللغة الأخرى.





وتتمكن من نقل التقنيات من لغة إلى أخرى


حتى تغطي نقاط الضعف التي بها.


وفي هذه الحالة فقط تكون قد أصبحت خبيرا في البرمجة بحق!





مشاكل.. الوظيفة



غير أنه يجب أن تضع في ذهنك أن مهنة البرمجة لها مشاكل


مثلها مثل مهن أخرى أيضا في منطقتنا العربية




أبرزها قلة الطلب على الوظيفة في بعض البلدان العربية


ويرجع المبرمج هشام سليمان ذلك إلى


ضعف صناعة البرمجيات


وعدم التطور النسبي لمجتمع الأعمال العربي


بشكل يسمح بزيادة الطلب على الكمبيوتر.





كما أن سوق البرمجة في العالم العربي - وفقا لسليمان-


ما زالت تعمل بالنظام الفردي


أي أن الشركة تطلب مبرمجا ليحل مشكلة خاصة بها




ومن ثم لا توجد مؤسسات تدرس احتياجات قطاع الأعمال العربي


لتطرح له برامج خاصة لحل مشاكلها


بالتالي لا يكون هناك تطوير لقطاع المبرمجين وزيادتهم.



وبالإضافة إلى ذلك هناك عمليات نسخ غير مشروع للبرامج الغربية


وهو ما يقلل الطلب على وظيفة المبرمجين.





ورغم ذلك يشير البعض إلى أن مستقبل المنطقة العربية


من الناحية التقنية مبشر




فعدد المؤسسات التي تتجه إلى "ميكنة" أعمالها يزيد


مما يؤثر بالزيادة في الطلب على هذه الوظيفة.





344116936.gif






إنتـهى النـقـل


و رب مـبلغ أوعى من سامع


و حامل فقه إلى من هو أفقه منه




344116936.gif







نقلاً عن الكبار بمدرسة البرمجة


موفقين جميعاً
 

عودة
أعلى