مقدمة قصيرة جدًا عن البرمجة
عالم الحاسوب عالمٌ جد فسيح، فيه الألعاب ومواقع الويب والكثير من البرامج الأخرى المختلفة.
قد تكون أنت أحد أولئك الراغبين بالاطلاع على أدوات بناء هذا العالم الجميل. لذا نرجو أن يكون هذا المقال -إن شاء الله- بوابتك مدخلك للولوج إلى عالم البرمجة، ومرشدك في كيفية بدأ أولى خطواتك في هذا العالم.
البرمجة ببساطة: هي مجموعة الأوامر التي تعطيها للحاسوب، ليقوم الأخير بتنفيذها! هذه الأوامر تكون مكتوبةً بشكل “غريب” باللغة الإنجليزية!
تظهر البرمجة في كلّ مكان، وبواسطتها يمكنك التحكم في الآلات، فمن روبوت يرعى المريض إلى آخر يبحث عن الماء في كوكب المريخ! أو صناعة ألعاب ممتعة مثل( Angry Birds, Minecraft…( ، أو تطوير موقع إلكتروني خاص بك على الويب, مِثْلَ موقع الباحثون المسلمون ، فوراء كل موقعٍ مبرمجٌ يعدّ ما تراه على الشاشة بهذه الجمالية، ليصبح بإمكانك قراءة المقالات وتصفح الصور ببساطة.
السؤال الأهم الذي يُطْرَحُ مِن قبل العديد من المبتدئين: ماهي أنسب لغة برمجة أبدأ بتعلّمها؟!
لنجيب عن هذا السؤال، وقبل الحديث عن (جسد) لغة البرمجة؛ لابد لنا من أن نوضّح أمرًا غاية في الأهمية عن (روح) لغة البرمجة! ألا وهي الخوارزميات (Algorithms).
الخوارزميّة بكل بساطة ما هي إلا: خطوات إنجاز مهمّةٍ ما! فأنت مثلًا تتبع نمطًا معينًا كل يوم للذهاب إلى مدرستك، أو مكان عملك، وخطواتٍ معيّنةً من أجل إعداد شطيرة المربى أو زبدة الفول السوداني!
فالخوارزميات ليست فقط حكرًا على مجال البرمجة، بل تستعمل في العديد من المجالات الأخرى، كالرياضيات، والفيزياء، والطب وغير ذلك.
ويمكننا القول بأنّ الخوارزميّات هي لغة العقل، أما البرمجة فهي لغة الحاسب!
تكتب الخوارزميّات على الورق، ولا توجد قيود إملائيّة مفروضة عليك أثناء الكتابة. يمكنك أن ترسم المسألة، وتتأمّل الخطوات، وعندما تصل إلى الحل تقوم بكتابته على الحاسب بلغة برمجة معيّنة.
فهنالك خوارزميات للبحث عن أصغر رقم من بين مجموعة أرقام، وخوارزميات رياضيّة لضرب المصفوفات، وخوارزميّات لإيجاد وجه الإنسان في صورة!
فـ Google Hangouts يمكنها أن تربطك مع شخص آخر بالصوت و الصورة، و بسرعة كبيرة من خلال استعمال خوارزميات تعرف باسم Audio and Video Compression Algorithms.
وGoogle Maps يمكنها أن تعطيك تفاصيل الطريق للوصول إلى متجرٍ ما، أو مقهًى ما، باستخدام خوارزميات تُعرف باسم Route Finding Algorithms.
يمكنك الحصول على الكثير من الكتب والفيديوهات لتستمتع بعالم الخوارزميات، دون أن تكون على دراية بأية لغة برمجة! وغاية البرمجة في الأصل هي تحويل الخوارزميّة إلى لغة يفهمها الحاسب.
أما عن أول لغة برمجة ننصح المبتدئين بتعلّمها فهي لغة Javascript. انطلاقًا من هذه اللغة ستكون قادرًا على الرسم وتصميم الألعاب كذلك، و هذا يعتبر محمّسًا ودافعًا قويًّا للانطلاق والتعمّق داخل عالم البرمجة. وحين تتعلّم لغتك الأولى ستكون قد قفزت مسافةً كبيرةً، وسيسهل عليك تعلم اللغات الأخرى مثل ++C أو Java أو Python، لأن نفس الأساسيات تتحكم في كل لغة حول العالم، والاختلاف يكمن في طريقة صياغة الأوامر فقط.
تعلّم البرمجة يحتاج منك إلى الوقت والصبر، مثلها مثل سائر المجالات. وأهم عوامل التفوق فيها هو حبّ الإبداع والتفكير بطريقة خاصة.
فيما يلي قائمة لبعض المواقع المليئة بالدروس التعليميّة المجانية للكثير من لغات البرمجة والخوارزميات أيضًا:
https://eu.udacity.com/courses/all
https://www.edx.org/
https://www.codecademy.com/catalog/subject/all
https://www.udemy.com/…/development/programming-languages/
إعداد: مزاح حاتم
مراجعة: محمد سليمان
تدقيق: أسامة الدبس