سألني أحد الأصدقاء عن أفضل اللغات البرمجية لتعلمها في 2017/2018. وعلى الرغم من إنه حدد اللغات الخاصة بتطوير الدسكتوب فإنني سأتوسع قليلا لأتحدث عن أبرز اللغات المستخدمة لتطوير الويب أيضا.

سؤال من أحد الأصدقاء حول لغات البرمجة

سؤال من أحد الأصدقاء حول لغات البرمجة

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

 

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

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

الجافاسكربت والجافا

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

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

إستخدام وكتابة الجافاسكربت

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

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

أقوم بترشيح محرر الأكواد البرمجية المجاني ++ Note للمبتدئين.

الجافاسكربت مقارنة بال HTML

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

الجافاسكربت مقارنة بال PHP

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

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

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