لقد حان وقت بايثون لإفساح المجال. حول آفاق جوليا

صباح الخير هبر!

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



إذا كانت جوليا لا تزال تبدو غامضة بالنسبة لك ، فلا تقلق. تصوير جوليا قيصر على Unsplash



لا تسيء فهمي. لا تزال شعبية Python مضمونة من خلال الدعم الذي لا يتزعزع للمجتمع ، والذي يشمل متخصصين في علوم الكمبيوتر وعلوم البيانات والذكاء الاصطناعي.

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

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

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

زن مقابل شره جوليا: من خلال

اختراع لغة برمجة جديدة ، يسعى مؤلفوها إلى الحفاظ على نقاط القوة والقضاء على عيوب اللغات القديمة.

في هذا السياق ، تصرف غيدو فان روسوم في أواخر الثمانينيات ، وخلق بيثون: سعى إلى تحسين ABC. آخر واحد كان مثالي للغايةللغة برمجة - وبسبب هذه الصلابة ، اتضح أنه من السهل التعلم ، ولكن من الصعب استخدامها في المشاريع الحقيقية.

وعلى النقيض من ذلك ، فإن بايثون عملية للغاية. هذا واضح من كود Zen في Python ، مما يعكس نوايا المبدعين:

جميل خير من القبيح.
صريح أفضل من ضمني.
بسيط هو أفضل من المجمع.
المعقد أفضل من الارتباك.
النشر أفضل من التداخل.
متفرق أفضل من الكثيفة.
مسائل القراءة.
الحالات الخاصة ليست خاصة بحيث تخرق القواعد.
في الوقت نفسه ، تعتبر العملية أكثر أهمية من عدم القدرة على الأداء.
[...]


احتفظت Python بالعديد من مزايا ABC: على سبيل المثال ، سهولة القراءة والبساطة والوضوح للمبتدئين. لكن Python أكثر موثوقية بكثير من ABC ، ​​وقابلة للتطبيق بشكل أفضل في الحياة الواقعية.

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

وهنا ما المبدعين من جوليا ويقول عن هذا :

: . . C Ruby. Lisp, , Matlab. , Python, R, Perl, , Matlab, , shell. , , . , .


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

ما يمكن لمطوري Julia مثل The Julia

متنوعة

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

السرعة

أراد مبدعو جوليا أن يجعلوا لغة لا تقل سرعة في السرعة عن لغة سي - لكن الإبداع الذي توصلوا إليه أصبح يعمل بشكل أسرع. على الرغم من أنه أصبح من الأسرع تسريع Python في السنوات الأخيرة ، إلا أن أدائها لا يزال بعيدًا جدًا عن جوليا.

في عام 2017 ، دخلت جوليا نادي Petaflop ، وهو ناد صغير للغات يمكن أن يعمل بسرعات أعلى من بيتافلوب واحد في الثانية. بالإضافة إلى جوليا ، يتضمن هذا النادي الآن فقط C و C ++ و Fortran.

مجتمع

بايثون ، الذي يزيد عمره عن 30 عامًا ، لديه مجتمع هائل وموثوق للغاية. بالكاد يوجد مثل هذا السؤال على Python ، ولم يتم العثور على إجابته في استعلام بحث واحد على Google.

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

تحويل الرمز

لكتابة التعليمات البرمجية في جوليا ، لا تحتاج حتى إلى معرفة أمر واحد بهذه اللغة. لا يمكنك فقط استخدام رمز Python و C داخل Julia ، بل يمكنك أيضًا استخدام رمز Julia داخل Python !

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

المكتبات كانت



المكتبات ولا تزال نقاط قوة Python. صورة فوتوغرافيةSusan Yin on Unsplash

هذه إحدى أهم مزايا Python - فهي تحتوي على الكثير من المكتبات المدعومة جيدًا. لا تحتوي جوليا على العديد من المكتبات ، ويشكو المستخدمون من أن مكتباتهم (حتى الآن) غير مدعومة جيدًا.

ولكن ، بعد تعديل حقيقة أن جوليا هي لغة شابة للغاية ذات مجموعة محدودة من الموارد ، فإن عدد المكتبات الحالية مثير للإعجاب للغاية. بالإضافة إلى حقيقة أن جوليا غنية بالمكتبات الجديدة ، نلاحظ أن اللغة يمكن أن ترسو مع المكتبات لـ C و Fortran ، على سبيل المثال ، لمعالجة الرسومات.

أنواع ديناميكية وثابتة

بايثون هي كتابة ديناميكية 100٪. هذا يعني أن البرنامج في وقت التشغيل يقرر ، على سبيل المثال ، ما إذا كان المتغير المحدد عددًا صحيحًا أو رقمًا عشريًا.

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

كما سعى مبدعو جوليا أيضًا إلى جعل لغتهم سهلة التعلم ، تدعم جوليا تمامًا الكتابة الديناميكية. ولكن ، على عكس Python ، يمكن لجوليا أيضًا تقديم أنواع ثابتة - بالشكل الذي توجد فيه ، على سبيل المثال ، في C أو Fortran.
هذا يمكن أن يوفر لك الكثير من الوقت. الآن ، بدلاً من البحث عن أعذار لحقيقة أن الرمز لم يتم اختباره ، يمكنك ببساطة تحديد النوع حيثما كان ذلك مناسبًا.

البيانات: نستثمر في اللغة في حين أنها صغيرة



عدد الأسئلة المميزة بعلامة جوليا (يسار) وبيثون (يمين) على StackOverflow.

على الرغم من حقيقة أن كل ما سبق يبدو متفائلاً للغاية ، يجب أن يوضع في الاعتبار أن جوليا لا تزال مجرد طفل مقارنة بـ Python.

هناك مؤشر جيد: عدد الأسئلة على StackOverflow: Python مذكورة حاليًا حوالي عشرين مرة أكثر من جوليا!

هذا لا يشير على الإطلاق إلى عدم شعبية جوليا - بدلاً من ذلك ، يحتاج المبرمجون فقط إلى وقت للاعتياد على اللغة الجديدة.

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

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

الخلاصة: تدرب على جوليا ، واجعلها هوايتك

قبل أربعين سنة ، لم يكن الذكاء الاصطناعي أكثر من ظاهرة متخصصة. لم يؤمن بها المستثمرون ولا الصناعة ، وبدت العديد من تقنيات الذكاء الاصطناعي خرقاء وغير ملائمة للاستخدام. لكن أولئك الذين درسوا الذكاء الاصطناعي أصبحوا عمالقة اليوم - اليوم رواتبهم هي تقريبًا نفس رواتب كبار الرياضيين.

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

لا أعدك أنه خلال عشر سنوات ستجني بالتأكيد المال بمجرفة إذا تعلمت الآن جوليا. لكن فرصك في مثل هذا التطور للأحداث ستزداد.

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

من ناحية أخرى ، يمكنك أن تبرز حقًا إذا حددت جوليا في سيرتك الذاتية. منذ ذلك الحين ، سنكون صادقين ، ولكن كيف تختلف عن جيش البيتون بأكمله الذي يتعين عليك التنافس معه؟ لا شيء تقريبا. لكن المبرمجين الذين لديهم معرفة بجوليا سيظلون متخصصين نادرًا نسبيًا ، حتى في المستقبل للسنوات الثلاث المقبلة.

امتلاك مهارات جوليا ، فأنت لا تثبت فقط أن اهتماماتك لا تقتصر على متطلبات "العمل". كما تُظهر أنك على استعداد للتعلم ولديك فكرة أوسع عن معنى أن تكون مبرمجًا. بعبارة أخرى ، من الجدير التعامل معك.
أنت - وخبراء جوليا الآخرين - قد تتحول إلى نجوم في المستقبل ، وأنت تعرف ذلك. أو كما قال أحد مبدعي جوليا في عام 2012:

, , . , . , 1.0 . , , Julia. 90% , , . , – , – , .

All Articles