7 مايو 2016

عليك البدء فالبرمجة لماذا ..

عليك البدء فالبرمجة لماذا ..









عليك البدء فالبرمجة لماذا ..








برمجة… 

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

نبذة تاريخية


لنأخذ نبذة سريعة عن ماذا نقصد بالبرمجة و تطورها عبر الزمن … إذا رجعنا بالزمن قبل حوالي 50 سنة إلى الماضي، سنرى أن الكمبيوتر كان عبارة عن جهاز ضخم، لم يكن يحظى بشرف استعماله إلا العلماء و الباحثون، لكن الأجمل في ذلك أنه لم تكن هناك إلا لغة واحدة للتخاطب مع الكمبيوتر وهي لغة التجميع ( لغة الصفر و الواحد )، حيث كان على العالِم أن يقوم بكتابة مئات الأسطر من 0 و 1 ليتمكن من صناعة برنامج بسيط يقوم بعرض كلمة على الشاشة كـ ” hello world” أو ” مرحبا بالعالم ” ولك أن تتخيل معي مدى الجهد الذي كانوا يبذلونه في تطوير البرمجيات المعقدة.

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

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

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


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

لربما سبق و أردت أن تبدأ مشوارك في تعلم البرمجة لكن لم تعلم من أين تبدأ أو اختلطت عليك الأمور، لكن بإذن الله سأيسر لك الأمر بتوجيهك نحو تعلمها و من أين تبدأها.
اللغات منخفضة المستوى : مثل Assembly لغة التجميع (تعتمد على 0 و 1 ) كما سبق و أشرنا إليها تستعمل اللغة خاصة في تطوير أنظمة التشغيل لأنها لغة الكمبيوتر و تتخاطب معه بصفة مباشرة.
اللغات عالية المستوى : وهي اللغات الحديثة و المتطورة مثل C و C++ و Java …. و هي لغات شبيهة بلغة البشر لكن تترجم لاحقا من قبل الكمبيوتر إلى لغة هذا الأخير و هي لغة التجميع عبر ما يسمى بالـ compiler، و أهم استعمالات هذه اللغات هي تطوير البرمجيات المكتبية كجوجل كروم ( google chrome ) و حزمة مايكروسوفت و البرمجيات المكتبية الشبيهة لها.
اللغات النصية Scripting languages : أهمها لغة PHP و تعتبر من أشهر اللغات البرمجية الخاصة ببرمجة المواقع و من أكبر المواقع المبرمجة على لغة PHP موقع فايسبوك و ووردبريس.

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

ها نحن قد تعرفنا على ذلك المعنى الخفي لكلمة “برمجة” و الذي كان يثقل كاهلنا، و لم يتبقى لنا إلا بداية الخطوة الأولى نحو التعلم، و لذلك ارتأيت أن أقدم لكم مجموعة من المصادر التعليمية ( الأجنبية و العربية ) و التي ستكون كفيلة بتسديد خطاك نحو بداية التعلم و الإحتراف. 

موقع Udemy.com 





موقع Udemy

يعتبر مكتبة رقمية ضخمة حيث يحتوي الموقع على 30,000 درس منها المجاني و المدفوع بدأً من دروس البرمجة إلى التسويق و التصميم و الفن و التصوير، الدروس مقدمة من طرف العديد من الخبراء في مختلف المجالات، مع بعض الصبر يمكن للموقع وحده أن يأخذك في رحلة الإحتراف. 



 موقع Udacity





موقع Udacity

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

موقع كورسات coursat



موقع كورسات coursat

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

موقع Edx



موقع edx

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




موقع رواق



موقع رواق rwaq

موقع عربي أقل ما يقال عنه أنه رائع، يحتوي الموقع على فكرة جميلة جدا و هي تقسيم الكورسات إلى أسابيع تكون مدتها مرتبطة حسب طول الكورس، في نهاية كل أسبوع يقوم مقدم الدورة بإعطائك مشروعاً خفيفاً للعمل عليه يكون بمثابة مراجعة للدروس المقدمة خلال ذلك الأسبوع، من الدروس الجميلة التي يقدمها الموقع دورة الجافا.
لا تتبع القطيع

لا تمشِ مع القطيع، و اصنع من نفسك مثالا يحتذى به، ألم يسبق و فكرت من قبل لم عليك تضييع وقتك في لعب لعبة تأخذ 40 بالمئة من يومك على الأقب بينما هناك طفل وراء البحار على كوكب اليابان يقوم بتطوير لعبة في هذه الأثناء ليكون المليونير القادم، ألم تفكر و لا للحظة لم تضيع كل هذا الوقت الثمين على ما يسمونه اليوم بمواقع التواصل الإجتماعي بينما هناك شاب في الطرف الآخر يحاول أن يطور موقعا من شأنه أن ينسي الناس في موضة الفايسبوك! لا تمشِ مع القطيع و اختر الطريق الضيق الذي لا يهتدى إليه إلا العظماء.
الصبر

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

أظن أن الجواب يعود إليك الآن… فأي طريق ستختار؟ أتفضل أن تبقى ذلك المستعمل الذي يضيع وقته وراء الشاشة هباءً أم تريد الإلتحاق بذلك العالم الذي يجهله الكثير… الجواب يعود إليك.




كاتب المقـال 

إرسال تعليق

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

Whatsapp Button works on Mobile Device only

Start typing and press Enter to search