هل فكرت يوما في ماهية الفروق بين لغة البرمجة PHP التي صممها راسموس ليردورف ونظيرتها Python التي صممها غويدو فان روسوم؟ حسنا، إذا لاحظت أن اسمي المخترعين الأول والأخير متشابهان الى حد ما (راموس/ روسوم)؛) فإن اللغات التي اخترعوها ليست كذلك. قبل البدء في مقارنتهما، لنوضح اولا مصدرهما. بدأ الأمر من منحة بريطانية قدمت للعالم تشارلز بابيج عام 1823, للشروع في تطويره لما كان يروج له على انه فكرة برمجية جديدة. تعتبر هذه بمثابة محاولة العالم الأولى في عالم البرمجة والتي لم تجني اي ثمار، قبل محاولة الدوقة إدا لوفليس عام 1843, والتي نجحت بالفعل، حيث استطاعت لوفليس تطوير اول خوارزمية تحتمل العمل على آلة في التاريخ. وعرفت بعدها بأول مبرمجة في العالم (بالمعنى العام للكلمة). في تلك الفترة، كانت صناعة البرمجة صعبة جدا، وكانت توصف على انها لغة برمجة منخفضة المستوى (low-level-programing-languages). وبعد فترات من التطور والتقدم المستمر، حتى عام 1945, وقتما قام العالم الألماني كونراد زوس بتطوير ما أسماه (Plankalkül) وكانت اول لغة برمجة متطورة يتم تطويرها للحاسوب في العالم (high-level programming language). او بمعنى آخر، أول لغة برمجة قابلة للاستخدام. بعد ذلك، انشق الطريق امام لغات البرمجة للتطور والتقدم. وظهرت لغات اخرى بعضها يعرف حتى يومنا هذا مثل (Visual Basic, C++, Objective-C (Swift, MATLAB, Groovy يمكن احصاء العديد والعديد منها حاليا، ولكن ولحسن الحظ لن نتحدث اليوم سوى عن اثنتان من اهم لغات البرمجة في عصرنا الحالي.

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

نعتذر عن شلال المعلومات التاريخية، لنعد الآن الى موضوعنا الرئيسي

اولا، يجب ان نعلم ان الموضوع ليس بتلك العمومية، حيث ان كلمة لغة برمجة لا تكفي بمفردها لوصف لغتي PHP وPython فهما يندرجان تحت عنوان أكثر دقة. تتفرع لغات البرمجة من حيث النوع والاستخدام الى الكثير من الأنواع منها، لغات البرمجة الوظيفية (Functional Programming Language) ولغات البرمجة الموجهة للأشياء (Object-oriented Programming Language) ولغات برمجه المنطق (Logic Programming Language) وأخيرا لغات البرمجة اللغوية (Scripting Programming language) التي يمكن ان تكون الوصف الأكثر دقه لضيفتي مقارنتنا هنا PHP وPython.

تفرعات لغات البرمجة

 ما هي لغات البرمجة اللغوية (Scripting Programming language) ؟

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

ما هي لغات البرمجة اللغوية

: PHP لغة المعالجة المسبقة للنصوص المتشعبة او 

جاء اختصار PHP من الاسم الذي أطلقه عليها مصممها راسموس (Personal Home Page) وهي أكثر اللغات شهرة على مستوى العالم اليوم. حيث تم استخدامها في برمجة اهم المواقع وشبكات التواصل الاجتماعي الحديثة مثل فيسبوك (Facebook) ومحركات البحث الشهيرة مثل قوقل (Google). أيا كان، تتطلب لغة PHP خادما خارجيا خاصا لترجمة رموزها الى لغة الحاسوب. كما تم تطويرها منذ البداية لتكون لغة خاصة بتطوير مواقع الويب فقط، باستخدام خوادم مثل HTML الشهير. وتعتبر هذه اللغة مفتوحة المصدر، ما يعني قدرة الجميع على تحميلها استخدامها. كما يبرز الجانب الأكثر اشراقا لكونها مفتوحة المصدر، في كونها قابلة للتعديل والتطوير المستمر من قبل المبرمجين الذين يستخدمونها. غالبا ما تستخدم لغة PHP في بناء مواقع الويب الديناميكية، التي تتفاعل مع المستخدم من خلال واجهة مستخدم قام خادم مترجم ويب بترجمتها الى شكلها المرئي.

لغة المعالجة المسبقة للنصوص المتشعبة

لغة Python “الحاملة للبطاريات”:

تعد هذه اللغة أحدث من لغة PHP نوعا ما. تم تطويرها في البداية لتسهيل عمل المترجمين من خلال امدادهم بعدة مكتبات جاهزة للاستخدام تحتوي آلاف الأوامر والوظائف المعدة مسبقا. وهذا هو السبب الرئيسي وراء إطلاق لقب “حاملة للبطاريات” عليها.  نقطة القوة الرئيسية في هذه اللغة هو سهولة استخدامها وبساطة رموزها (Code Simplicity). الجهة المسؤولة عن تطويرها ومراقبتها هي منظمة نظام python او (Python Software Foundation) والتي تعمل بشكل مستمر على تطويرها والتأكد من مواكبتها لباقي لغات البرمجة وقدرتها على التفاعل معها. تستخدم لغة Python غالبا في المشاريع العلمية والمتعلقة بالرياضيات، هذا بسبب احتوائها على العديد من المكتبات الخاصة بتحليل البيانات ونمذجتها. كما تحتوي بشكل خاص على حزم خاصة بالرياضيات والمجالات العلمية والهندسية. تعرف لغة Python بين المطورين بأنها لغة الذكاء الاصطناعي، حيث تحتوي العديد من المكتبات التي تساعدهم على تطوير كل ما يخص امور الآلات الذكية وخوارزمياتها.

 PHP نوعا ماهذه اللغة أحدث من لغة

اوجه التشابه بين اللغتين

نوع اللغة:

مثل ما ذكرنا سابقا فإن كلا اللغتين PHP وPython يعتبران من لغات البرجمة اللغوية (Scripting) مما يعني ان كلاهما يتطلب خادما خارجيا لترجمة محتواهما الى لغة الحاسوب والذي يطلق عليه في عالم البرمجة اسم (Interpreter) والذي يعمل ايضا على تحويلهما الى واجهة المستخدم المرئية التي نرها في مواقع الويب.

قابلية الاستخدام:

 يمكن اعتبار كون كلاهما مفتوحتا المصدر، وجه تشابه آخر، حيث يقودنا ذلك الى تشابه أكثر دقة وهو ان كلاهما “مجاني” لا أحد يدفع مالا مقابل استخدامهما. كما يمكن التعديل عليهما من قبل اي مستخدم طالما لا يخالف ذلك التعديل توجهات الجهة المسؤولة عن كل منهما. اما بالنسبة للاستخدام فيمكن استخدام كلاهما في برمجة مواقع الويب كما يمكن الجمع بينهما وبين لغات اخرى مثل (JAVA, JAVASCRIPT, or Perl) وما الى ذلك..

قابلية تعلمها: 

بالحديث للمقبلين على تعلم هذه اللغات، فإن تعلمها سهل جدا مقارنة باللغات الأخرى مثل (C++, Perl, etc.) كما انهما تعملان على مختلف انظمة التشغيل فهما يمتلكان محررات (IDEs) تعمل على جميع انظمة التشغيل الشهيرة، مما يمكنهما من التنقل من بيئة عمل الى اخرى بكل سهولة.

 يعتبران من لغات البرجمة اللغوية PHP وPython

اوجه الاختلاف:

شيوع الاستخدام:

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

مبدأ العمل:

 بينما تتجه لغة Python الى المظهر والشكل للأشياء، وتقوم بتقسيم كل وضيفة من وضائف البرنامج الى اجزاء. فإن لغة PHP موجهة الى الأشياء بحد ذاتها، حيث تحتوي على وحدات تعليمات برمجية (Code Units) تحتوي بدورها على وضائف وأوامر محددة داخل مشروع محدد.

 المخرجات لكل لغة:

باستخدام لغة Python في البرمجة ستكون النتائج وحدات وظائفية مقسمة، ثم سيتعين على المطور الربط بينها من قبل روابط برمجية تعرف بأمر (if-then). بمعنى آخر، ستكون المخرجات عبارة عن خوارزمية تغير في البرنامج حسب تصرفات المستخدم.  في الجهة الأخرى، ينتج عن استخدام لغة PHP في البرمجة حاوي معلومات برمجية متكامل يتضمن كل الأوامر التي يفترض به القيام بها، حسب تفاعله مع المستخدم، ودون الحاجة الى وجود اي روابط لخارج البرنامج، اي ان جميع التغيرات سوف تحدث في نفس الشاشة.

 الأفضلية:

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

سهولة الاستخدام:

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

 المرونة:

امر آخر مهم لأخذه بعين الاعتبار هو أن لغة PHP يتم التحكم بها بدقة شديدة جدا، بينما تعد لغة Python أكثر مرونة وسهولة للتعديل.

من ناحية الاستخدام Python عن لغة PHP تختلف لغة

لغة PHP ام لغة Python؟ 

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

؟PHP ام لغة Python تفضل استخدام لغة

LEAVE A REPLY

Please enter your comment!
Please enter your name here