خمس لغات برمجة واعدة بمستقبل مشرق (بعد 3 سنوات)

KDPV


في عام 2016 ، نشرت ترجمة لمقال حول 5 لغات برمجة واعدة ، والتي تم التنبؤ بنموها في السنوات 2-3 القادمة.
في كثير من الأحيان تظل التوقعات التوقعات دون مزيد من التحليل. لكنني قررت أنها كانت فوضى. وبما أن 3 سنوات قد مرت بالفعل ، فقد حان الوقت لاتخاذ نتائج وسيطة ومعرفة ما حدث لهذه اللغات خلال هذا الوقت.


ومع ذلك ، قبل الانتقال إلى أبطالنا الخمسة ، أود إيلاء القليل من الاهتمام لانتقال Swift and Go من المستوى الثاني إلى المستوى الأول المتوقع في نفس المقالة.


عن القطارات

في المقالة الأصلية ، تنقسم لغات البرمجة بشروط إلى 3 مستويات شعبية.
يتضمن المستوى الأول اللغات الرئيسية مثل Java و JavaScript و Python و Ruby و C # ، إلخ.
تحاول لغات المستوى الثاني اقتحام التيار الرئيسي ، لكنها لم تحقق ذلك بعد. لقد أثبتوا أهميتهم من خلال بناء مجتمعات قوية ، لكنهم ما زالوا غير مستخدمين من قبل معظم شركات تكنولوجيا المعلومات المحافظة. معظم اللغات في المستوى الأول لها جذور راسخة في مواقعها. لذلك ، يستغرق فقد اللغة من موقع متقدم وقتًا ملموسًا ، ومن الصعب جدًا تقسيم اللغة الأولى إلى لغة من الدرجة الثانية.
المستوى الثالث يشمل لغات غير شعبية ، بالإضافة إلى لغات واعدة جديدة نسبيًا (والتي سيتم مناقشتها) ، والتي بدأت للتو في التقدم. تبقى بعض اللغات في المستوى الثالث لسنوات عديدة دون اكتساب شعبية ، في حين أن لغات أخرى اقتحمت المشهد في غضون عامين فقط.


كلتا هاتين اللغتين قد عززتا بالتأكيد موقفهما. تمكنت Swift من الإصدار 3.0 من الوصول إلى 5.0 ووعدت أخيرًا باستقرار ABI. بمعنى آخر ، لم تعد Apple تخطط لإزعاج مبرمجي Swift من خلال تغيير توقيعات الأسلوب باستمرار ، إلخ. بالإضافة إلى ذلك ، حل Swift محل الهدف Objective-C تمامًا ، حيث تجاوزه في تصنيف RedMonk الجديد وارتفع بمقدار 6 وظائف مقارنة بالتصنيف قبل 3 سنوات . من الواضح ، سيستمر الاتجاه ، لذلك يمكننا القول أن سويفت قد احتل مكانه في المستوى الأول.


أما بالنسبة لـ Go ، فقد حولت مركزًا واحدًا أقل في التصنيف (من 15 إلى 16) ، وذهب من الإصدار 1.7 إلى 1.13 ، وهو في مرحلة إعادة التفكير العالمي في معالجة الأخطاء ووجود الأدوية العامة في اللغة - المشكلات التي تسبب معظم الشكاوى خلال جميع السنوات ال 12 من وجودها. بشكل عام ، يتطور Go ببطء ، وعدد المشاريع التي تستخدمه في الإنتاج آخذ في الازدياد ، ولكن من السابق لأوانه الحديث عن الانتقال إلى المستوى الأول.


بالإضافة إلى Swift and Go ، تجدر الإشارة إلى TypeScript ، التي حققت اختراقًا استثنائيًا لمدة 3 سنوات بالقفز من 26 إلى 10 في الترتيب. إذا كنت تقوم بتطوير واجهة أمامية ، ولكنك لم تتعرف بعد على هذه اللغة ، فقد حان الوقت. بالفعل يجب أن تعرف مباشرة.


والآن الضجة والجزء الرئيسي - لغاتنا الخمس ، التي تنبأت بالانتقال من المستوى الثالث إلى الثاني. ما الذي تغير بالنسبة لهم خلال هذه السنوات الثلاث؟!


للبدء ، جدول ملخص حول نشاط OpenSource الكمي على جيثب:


صدأجوهر الشىءKotlinخشب الدرداربلور
اتفاقيات إعادة الشراءالمستخدميناتفاقيات إعادة الشراءالمستخدميناتفاقيات إعادة الشراءالمستخدميناتفاقيات إعادة الشراءالمستخدميناتفاقيات إعادة الشراءالمستخدمين
2016514619352668861960154143319415052
20192370013500168004000243002640053009941200469
نمو4.6X7X6.3x4.6X25X17X12X5.1x8X9X

* لا يُظهر Github الآن أرقامًا دقيقة تفوق 1000 ، ولكن فقط تقدير من الأسفل ، لذلك قمت بإجراء عشرات الاستعلامات لكل لغة وقمت بتقريب أكبر نتيجة إلى مئات.


من الواضح أنه كلما كان وضع اللغة أكثر تواضعًا منذ 3 سنوات ، كان من الأسهل إظهار نمو متعدد. ومع ذلك ، قام كل من Rust و Elixir ، قادة الخمسة لدينا من حيث عدد المستودعات في عام 2016 ، بعمل ممتاز لهذه المهمة. ومع ذلك ، أظهرت Kotlin النتيجة الأكثر تميزا ، والتي تبين النمو الهائل حقا. سنتحدث عن الأسباب أدناه ، ولكن الآن ، دعونا نرى المسار الذي سلكته هذه اللغات على طول سلالم RedMonk:


احصائيات RedMonk 2016


احصائيات Redmonk 2019


لتقييم تقدم اللغات وفقًا للجدول الزمني ، أخذت إحداثياتها وحسّبت الدلتا:


((x2 - x1) + (y2 - y1)) / 2

:


Kotlin:  +41%
Rust:    +20%
Elixir:  +20%
Elm:     +18%
Crystal: +32% # - ,  3        

, ( ). , , StackOverflow. , , Discourse, , StackOverflow.


, 5 . ? Top , .


5- : Elm


, Elm . -, 3 2 , — 0.19 , . , . ( ) 2 , roadmap . , Elm . , - Elm c . .


, dimsmol, fshp hellosandrik PureScript, Elm. 1.0, . Haskell .


4- : Crystal


3 Crystal RedMonk, Top-100 . 0.19 0.30. , , . , 1.0 2017 .


, Windows. . 1.0. Crystal — , Ruby . Ruby Windows 10 . , , Windows Crystal, . , , . 1.0 — .


, Crystal , .. , Ruby Python Elixir Go. Crystal , . , .. Crystal Elixir, Go , , Ruby nil reference.


2-* : Rust


Rust 6 . , 3 1.11 1.37. , , . , , , , 3 . , . Core Team , 2019- — . , , ( , master) . IDE Rust Language Server, WebAssembly GUI-.


, Rust , . , high-performance . , Rust, , . , Haskell ("avoid success at all costs"). , — , , : Rust 1- The Most Loved Languages StackOverflow .


* , 2 :-)


2- : Elixir


Rust , Elixir, 3 1.3 1.9, . . 2 , Elixir :


-, Elixir Erlang/OTP, Ericsson OTP Team . Elixir Team 3 .


-, Elixir . , , . , . ( Elixir) Broadway — , .


, Elixir , , , , . , Erlang, Elixir, . , Elixir , “Adopting Elixir”. , .


1- : Kotlin


— Kotlin. 3 3- 1-, Java Android. Kotlin, 2017 Android. , , Android Studio 3.0. , Android , 4 Google Kotlin Android. , Google Oracle Java, , , JetBrains . , Java , , Java . !


, JetBrains Kotlin Native, Kotlin .


RedMonk, 20- , , Kotlin Java-, . , Java, Android-. , 3 Java , Kotlin , Swift Objective-C.



, . Elm Crystal , 3 . Kotlin Google , Rust Elixir production-ready . , … - Elixir Rust, - , - ( 11 . ), 2- . .
, . 2 : (Rust) (Elixir).


P.S. 3 Top ?

Source: https://habr.com/ru/post/ar467207/


All Articles