لم يعد Python 2.7 مدعومًا في الأول من كانون الثاني (يناير). ولكن العديد من الشركات لا تزال لم تحول إلى الإصدار المحدث. في المادة ، نناقش أسباب هذا الموقف.
صور - يناير Kop --iva - Unsplashليس الجميع جاهزين لـ "الثعبان" الجديد
في عام 2020 ، سيتم إيقاف Python 2.7 ، وسيتم تعليق التحديثات الأمنية. على الرغم من أن هذه الخطط أصبحت معروفة منذ خمس سنوات - في عام 2014 ، شجع غيدو فان روسوم ، مؤلف كتاب بيثون ، المطورين والشركات شخصيًا على الانتقال إلى بيثون 3 - كانت عملية تكييف الإصدار الجديد بطيئة.
في بداية العام ، كان حوالي 60٪ من الحزم التي تم تنزيلها من The Python Package Index (PyPI)
هي الإصدار 2.7. بحلول شهر سبتمبر ، انخفض هذا الرقم إلى 40 ٪ ، ولكن على الأرجح لن يصل إلى الصفر
قبل الموعد النهائي .
ما يمنع الهجرة
في الشركات الكبيرة ، يتطلب إدخال إطار جديد أو الانتقال إلى تقنية محدثة دائمًا موارد ووقتًا كبيرًا. في بعض الحالات ، تستمر العملية لعدة أشهر وحتى سنوات. هذا بسبب قاعدة الكود الضخمة وعدد كبير من التبعيات.
بدأ Facebook
في نقل خدمات الشركة إلى Python 3 في عام 2014. استغرق الأمر سنة لتنفيذ هذا المشروع - واضطررت إلى إعادة كتابة عدد كبير من المكتبات وتصحيح الآلاف من الانحدارات. بعد ذلك ، استولى مهندسو الشركة على Instagram - في هذه الحالة ،
استغرق الانتقال عشرة أشهر. تم Dropbox الانتقال إلى Python 3 منذ ثلاث سنوات.
لدى بعض الشركات قواعد صارمة للتفاوض مع تحديثات الأمان مع فريق الأمان. في بعض الأحيان تنظم هذه الوحدة تحميل حزم PIP. تشعر "الأمان" بالقلق من أنه عند التبديل إلى Python 3 ، ستبدأ نقاط الضعف الحرجة في الظهور في الخدمات. في الواقع ، في مجالات مثل الخدمات المصرفية والرعاية الصحية ، يمكن أن تكون تكلفة الخطأ عالية. لذلك ، في العام الماضي ، واجه مكتب تقييس الاتصالات البريطاني - أثناء عملية إدخال نظام جديد لتكنولوجيا المعلومات - خللًا
تسبب في خلل في النظام المصرفي المحمول. ونتيجة لذلك ، فقد 1.9 مليون شخص إمكانية الوصول إلى حساباتهم. المنظمة لا تزال
تتعامل مع العواقب.
من بين أشياء أخرى ، لا يزال Python 2 يدعم أنظمة التشغيل الرائدة المستندة إلى Linux. على سبيل المثال ، في RHEL ، يمكن للمستخدمين اختيار أي إصدار للعمل معه. على الرغم من أن نظام التشغيل Red Hat ينتقل تدريجياً إلى Python 3 ، إلا أن هذه العملية لا تتم بسلاسة كما نود. في هذه العملية ، تم العثور على الأخطاء بانتظام ، تتعلق أساسا بتشغيل المؤشرات. يحتفظ دبيان أيضًا بدعم Python 2 ، لكن الترقية
بدأت بالفعل . كما أنه يتحرك ببطء - المهندسين يختبرون المكتبات باستمرار من أجل التوافق.
على أي حال ، حتى بعد الانتقال الكامل إلى Python 3 ، سيواصل الكثيرون العمل مع الإصدار السابق - حيث سيتم
دعم بعض الحزم من
قبل الشركات وعشاق المجتمع.
ما يفكر فيه المجتمع
يلاحظ سكان Hacker News في الخيط المواضيعي أن السبب الرئيسي للهجرة البطيئة هو غياب (حتى وقت قريب) أي فوائد ملموسة من هذه العملية. لم تكن هناك وظائف جديدة في اللغة يمكن أن تهم المطورين ودفعهم إلى التحول إلى بيثون 3. ومع ذلك ، فإن بعض القرارات التي اتخذها مؤلفو اللغة ، على العكس من ذلك ، أفسدت انطباع البرمجة عليها. على وجه الخصوص ،
سبب موجة كبيرة من عدم الرضا
بسبب دعم سلاسل البايت والانتقال إلى العمل الحصري مع Unicode.
لاحظ Stack Overflow أيضًا أن نظام Python البيئي يفتقر إلى الأدوات المدمجة لترجمة الشفرة تلقائيًا من إصدار إلى آخر. تم حل المشكلة مع ظهور المرافق مثل
2to3 وستة .
صور - هايت تشودري - Unsplashتوسعت وظائف Python 3
بشكل كبير في السنوات الأخيرة. إضافة مصفوفة الضرب ، وحدة نمطية غير متزامن لتنظيم البرمجة التنافسية ، بالإضافة إلى
التعليقات التوضيحية لأنواع المتغيرات ، حقول الفئة ، الوسيطات وقيم إرجاع الوظائف. لقد ظهر دعم Python 3 للمكتبات الشائعة الأخرى ، مثل scikit-Learn for ML. يجب أن تقنع مجموعة الميزات المحدّثة الشركات بالتبديل إلى الإصدار التالي من اللغة. وعلى الرغم من أن عدد أتباع بيثون 3 سيزداد بشكل كبير في العام المقبل ، فإن الانتقال الكامل سيستغرق وقتًا كبيرًا.

نحن في 1cloud.ru نقدم
خدمة استضافة DNS . المستخدمين المسجلين يحصلون عليها مجانًا.
سيتم الرد على أي أسئلة تتعلق بتشغيل الخدمة
من قبل متخصصين من مركز اختصاصنا.
قراءة إضافية على مدونة 1cloud:
هل ستوفر السحابة الهواتف الذكية فائقة الميزانية
"كيف نبني IaaS": مواد 1cloud
فحص الأجهزة الإلكترونية على الحدود - حاجة أم انتهاك لحقوق الإنسان؟
هذا هو الدور: لماذا غيرت Apple متطلبات مطوري التطبيقات