العالم التقني

بايثون يحصل المبالغة فــيــها وسأقنعك بي ثلاثلة أسباب

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

تم تطوير Python لأول مرة فــي عام 1991 بواسطة Guido van Rossum. مـــنذ ذلك الحين ، ازدادت شعبيتها بشكـــل مطرد كواحدة مـــن أكثر لغات البرمجة استخدامًا فــي العالم نظرًا لسهـــولة استخدامها وقدرتها علــى استخدامها لبناء أي شيء عمليًا مـــن مواقع الويب وتطبيقات الأجهزة المحمولة إلــى ألعاب الفــيديو والمحاكاة العلمية.

لغة بايثون ليست سهلة التتعلم
للوهلة الأولى ، مـــن السهل تصديق أنه لغة بايثون سهلة التتعلم. بعــد كـــل شيء ، يحتوي علــى مجموعة قليل فقط مـــن العبارات الرئيسية وصياغته فــي أضيق الحدود إلــى حد مـــا. فــي الواقع ، تتبع Python شيئًا يسمى Zen of Python والــذي ينص علــى:

… “الجميل أشهر مـــن القبيح. الصريح أشهر مـــن الضمـــني. بسيط هـــو أشهر مـــن المجمع. المركب أشهر مـــن المعقد. المسطح أشهر مـــن التداخل. “…

اقتراح: اكتشف بعمق Zen of Python (المصدر الأصلي)

بايثون اليةا تاريخ معقد
حيث اليوم ، ستجد Python فــي كـــل مكان – فهي تدعم كـــل شيء مـــن بحث Google و Instagram إلــى Pinterest و Quora . كمـــا أنها تحظى بشعبية عديدة لدى المطورين بسبب سهـــولة استخدامها وتمجموعة استخدامـــاتها.

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

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

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

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

لغات مثل Go و Rust تُترجم باليةة مباشر إلــى كود الآلة ، حتى تحصل علــى الأداء فور إخراجها مـــن الصندوق. قد لا تحتوي هذه اللغات علــى نظام بيئي ضخم للمكتبة تابع لجهة خارجية فــي Python حتى حيث اليوم ، لكنها تقدم أداءً أعلــى بجهد أقل بكثير.

إذا كنت تريد مكتبات ممـــاثلة ذات سرعات تنفــيذ أعلــى ، فــيمكنك محاولة البحث فــي Cython أو Numba (الــذي يجمع Python bytecode فــي تعلــىمـــات الجهاز الأصلي). ستندهش إلــى أي مدى تأخذك هذه التقنيات ؛ لا تحتاج معظم الشركات التــي تستخدم Go إلــى تحسين إضافــي علــى الإطلاق.

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

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

هذه المـــناطق مغطاة بلغات أخرى مثل JavaScript و Objective C و Swift ، علــى التوالي.

يتفق معظم المطورين علــى أنه لا توجد لغة برمجة واحدة يمكنها فعل كـــل شيء بشكـــل متميز ؛ اللغات المختلفة اليةا نقاط قوة وضعف مختلفة حسب الغرض مـــنها. ومع ذلك ، يختار العديد مـــن المطورين Java أو PHP علــى Python لأنه مـــناسبة بشكـــل أشهر للمهام التــي لا تتعلق بتنفــيذ التعلــىمـــات البرمجية – فــي حين أنه Python يمكن أنه تعمل بشكـــل سليم فقط أثناء ظل التشغيل. مـــن خــلال التمسك بمـــا تفعالية بشكـــل أشهر – مـــنطق التشغيل – ظلت بايثون ذات صلة مـــنذ تصورها فــي عام 1991.

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

زر الذهاب إلى الأعلى