لغةُ بايثون هي لغةُ برمجة مجّانية بالكامل، تُعنَى بحلّ المشكلاتِ الحاسوبيَّة بسهولةٍ كما لو أنّ الحلَّ يُكتَبُ كما نفكّر.

يُكتَبُ البرنامج لمرّةٍ واحدة ويعملُ بعدها على جميعِ الحواسيب والأنظمة من دون الحاجةِ لتغيير شيءٍ في تعليماتِ البرنامج.

كيف تُستَخدمُ لغة بايثون ؟

تُعدُّ لغة البرمجة بايثون لغة برمجية عامّة، يُمكن استخدامها على أيّ نظامٍ حاسوبيّ حديث.

تُستَخدمُ لمعالجةِ النصوص والأرقامِ والصورِ والبيانات العلميّة، وأيّ نوعٍ من البيانات يتمُّ تخزينه على الحاسوب.

تُستَخدمُ يوميّاً في عمليّات البحثِ على محرّكِات البحث Google وYouTube و NASA.

هذا مثالٌ صغيرٌ عن أهمّية الدورِ الّذي تلعبُه لغة بايثون في نجاحِ مجالات الأعمالِ والحكومات والمنظّمات غيرِ الربحيّة، وهناك الكثير غيرها.
وتُعتَبرُ بايثون لغةٌ تفسيريّة، هذا يعني أنّها لا تحتاجُ لغةً وسيطيّةً يقرؤها الحاسوبُ قبل التشغيلِ.

لقد كانت تُدْعَى مثلُ هذه اللّغات في السابق باللغاتِ الترميزيَّة، تلميحاً لعملها في المجالاتِ الجانبيّة قليلة الأهمية.

لكن لغة بايثون شكّلتْ ثورةً على هذه التسمية؛ إذ أنَّ كثيراً من التطبيقات الضخمة أصبحتْ تُكتَب حصرياً بلغة بايثون.

وبعض مجالات عملها تتمثل في:

  • برمجةُ الـ CGI لتطبيقاتِ الويب، وهو بروتوكول قياسيّ لربطِ تطبيقٍ برمجيّ خارجي ّمع خادم الويب.
  • بناء قارئ RSS الّذي يسمح للمُستخدم متابعةَ العديدِ من مواقع الويب من مكانٍ واحد.
  • قراءة البيانات من قواعدِ البياناتِ والكتابة عليها مثل MySQL وPostgreSQL.
  • إنشاء التقويم Calendar في الـ HTML.
  • التعامل مع الملفات.

مقارنة لغة Python بلغة Perl:

تُعتبرُ بايثون لغةٌ ممتازةٌ لكتابةِ المشاريعِ الكبيرة أو المعقَّدة، يُقْصَدُ بالتكامل في البرمجة بتحضيرُ البرنامج ليكونَ سهل القراءة بالنسبةِ للمبرمج التالي في فريقِ العمل.

يستغرقُ هذا الأمرُ الكثير من التعب في كل من لغة Perl وPHP، حيثُ يصبحُ البرنامجُ المكتوبُ بلغة Perl مبعثرٌ للغاية بعد 20 أو 30 سطرٍ من التعليمات البرمجيَّة.

في حين يبقى البرنامجُ المكتوبُ بلغة Python مرتَّباً ومقروءاً مما يسهّل إدارته مهما كبُرَ حجمُه.

مع سهولةِ تعلُّمِها، وسلاسةِ قراءتها، وتوسُّع آفاقها، توفرُ بايثون سرعةً كبيرةً في تطوير التطبيقات.

بالإضافةِ إلى بساطةِ تكوينِها وقدراتِ المعالجة الكبيرة فيها، يُطْلَق على لغة بايثون اللغة المزوَّدة بالمدَّخرات

إذ أنَّ لها مكتباتٍ كبيرة تزوّدُ المبرمجَ بمخزنٍ من الحلول البرمجية الجاهزة.

مقارنة لغة Python بلغة PHP

تختلفُ أوامرُ وطريقةُ كتابةِ بايثون عن أيّ لغةٍ تفسيريّةٍ أخرى وتأخذُ PHP تدريجياً مكانَ Perl كلغةٍ موحّدةٍ لتطوير تطبيقاتِ الويب. وعلى كلّ حالٍ فإنَّ بايثون تفوقُهما من حيث سهولةِ القراءة والمتابعة.

أحد السلبياتِ التي تشاركُ بها لغة PHP لغة Perl هي سوء ترتيب برنامجها، ولذلك يصعبُ كثيراً كتابةَ البرامجِ الّتي يفوقُ عددُ أسطرها عن 50 أو 100 بلغة PHP أو Perl،

في حين تشكّلُ الرتابةُ وسهولة القراءةِ أهمّ بنيان لغة بايثون، ممّا يوفُّر قابليّةً كبيرةً لتوسيع برامِجها لبناءِ مشاريعٍ كبيرة

مع تزايدِ استخدامها لأغراضٍ عامّة يمكننا القولُ إنَّ PHP صُمّمتْ خصيصاً لإخراجِ المعلوماتِ إلى صفحاتِ الويب بطريقةٍ منسّقة

وليس للقيامِ بالمهام الخلفيّة أي التعاملِ مع الخوادم والأنظمة ويمكنُنا الاختصارُ بالقول إنَّه يُمكنُ برمجة خادم ويب باستخدام بايثون يقرأ البرامج المكتوبة بلغة PHP، لكن لا يمكنُ تطويرُ خادمَ ويب باستخدام PHP يقرأُ برامج Python.

نهايةً، تعدُّ بايثون لغةً غرضيَّة التوجُّه، بعكس PHP، وهي النقطة الفارقة الأهم في تفوّق بايثون في سهولةِ قراءَتها وتعديلِها وتوسيع برامجها.

مقارنة بين لغة البرمجة بايثون ولغة البرمجة روبي

تكثرُ المقارناتُ بينلغة بايثون ولغة Ruby، فكلاهما لغات برمجة تفسيريَّة عاليةَ المستوى، تسهّلان على المبرمجِ عناءَ الاعتناء بالتفاصيل الدقيقة.

وكلتا اللّغتان غرضيَّة التوجهِ وشاملة، يُعطي تطبيقُ الصفوف classes والأغراض objects فيها مجالاً واسعاً لإعادةِ استخدام برامِجها وسهولة تعديلها وتطويرِها.

وتعدُّ كل لغة البرمجة من بايثون و لغة البرمجة Ruby لغاتٌ عامَّة؛ أي يمكنُ استخدامُها لأبسطِ المهام مثل معالجة النصوصِ

وأعقدها كذلك مثل التحكُّم بالروبوتات أو إدارة أنظمة البيانات الماليَّة الضخمة.


لكن يتَّضحُ الفرقُ الكبير بينهما في المرونةِ وسهولةِ القراءة، فبالرَّغم من رتابةِ برامجها بسبب كونها غرضيَّة التوجُّه، لكنَّ لغة Ruby تبدي الكثيرَ من الاتّكاليّة فتصبحُ غير مفهومةٍ

هذا يعني أنَّها تبني الكثيرَ من الافتراضاتِ على مقاصد المبرمج.

يتكرَّرُ سؤال الطلاب عندما يتعلَّمون لغة Ruby:

“كيفَ عرفَ البرنامجُ ذلك؟”. في الحينِ الّذي تبدو هذه الأمور شديدةَ الوضوح في صياغة لغة بايثون

فزيادةً على سهولةِ برامجها للقراءة، فهي تفرضُ الكثيرَ من تبسيطِ وتوضيح المعلوماتِ في أوامرِها بحيث تقلُّ فيها الافتراضات.

وبسببِ عدم وجود أيّ افتراضاتٍ سابقةٍ، تسمحُ لغة Python بمجالٍ واسعٍ للاختلاف عن الطرق القياسيَّة لتنفيذِ الأشياءِ، مع الحفاظِ على وضوحِ هذا الاختلاف في نفسِ الوقت.

تُعطي هذه الميزةُ المبرمجَ قوّةً كبيرةً في تحقيقِ غرضه أيَّاً كان، مع بقائِه سهلُ القراءة والفهم لمن يأتي بعدَه في فريقِ العمل.

بعدَ استخدامهم لبايثون يصعُبُ على المبرمجين العودةُ إلى تجربةِ اللّغات الأخرى!

مقارنة بين لغة البرمجة بايثون ولغة البرمجة جافا

كلُّ من بايثون وجافا لغاتٌ غرضيّةُ التوجه، لها مكتباتٍ برمجيَّة هائلة مُجهَّزة مسبقاً وتعملُ على معظمِ أنظمةِ التشغيل، ولكنَّ تطبيقُ كلّ منهما يختلفُ كثيراً.

لا تُعَدُّ java لغةً تفسيريّةً بالكامل أو تحويليَّة بالكاملِ، بل تجمعٌ بين المفهومين.

عندما تتمُّ عمليَّةُ التحويل (compile) ينتجُ ملفٌّ مصدريٌّ خاص بـ Java يسمى bytecode، وعندما يتمُّ تشغيلُه تقوم JRE وهي بيئة تشغيل برامج Java بتحويلِ الملف إلى لغةِ الآلة لتتمَّ معالجتُه وتنفيذُه في الحاسوب.

ولا يمكنُ تعديلُ برنامج Java بعد تحويلِه إلى bytecode.

في حين يتمُّ compile برنامج بايثون في وقتِ التشغيل، أي عندَ قراءةِ مفسّر البايثون للبرنامج.

أي أنَّ برامجَ بايثون تُحَوَّلُ مباشرةً إلى لغة الآلة، من دونِ الحاجةِ إلى خطوةٍ وسيطيَّةٍ تُعبّر عن استقلاليتها، بل يظهرُ استقلالُها البرمجيُّ في طريقةِ تطبيقِ مفسّر بايثون.

مصدر المقال : اضغط هنا

  • إعداد: المهندس قيس جربوع
  • تدقيق : المهندسة رهف النداف
  • تحرير : المهندس بشار الحجي