Tschüss Python. Hallo Julia!

Dieser Artikel wurde im Mai 2020 von Rhea Moutafis veröffentlicht. com / bye-bye-python-hello-julia-9230bff0df62) ”ist eine japanische Übersetzung. Dieser Artikel wurde mit Genehmigung des ursprünglichen Autors veröffentlicht.

Tschüss Python. Hallo Julia!

Pythons Dynamik ist ins Stocken geraten und neue Konkurrenten entstehen


日没の前に彼女の顔を覆っている帽子の女

Mach dir keine Sorgen, wenn Julia dir noch unbekannt ist. Foto von Julia Caesar auf [Unsplash](https://unsplash.com/s/photos/julia?utm_source=unsplash& = creditCopyText)

Versteh mich nicht falsch. Pythons Popularität wird durch eine solide Gemeinschaft von Informatikern, Datenwissenschaftlern und KI-Spezialisten untermauert.

Aber wenn Sie mit diesen Leuten zu Abend gegessen haben, wissen Sie auch, wie sehr sie über Pythons Schwächen schreien. Es gibt viele Dinge, die langweilig werden können, angefangen bei langsamen Geschwindigkeiten, übermäßigen Tests und Laufzeitfehlern trotz vorheriger Tests.

Infolgedessen verwenden immer mehr Programmierer andere Sprachen. Die Top-Spieler sind Julia, Go und Rust. Julia eignet sich hervorragend für mathematische und technische Aufgaben, während Go sich hervorragend für modulare Programme eignet und Rust die beste Wahl für die Systemprogrammierung ist.

Datenwissenschaftler und KI-Spezialisten beschäftigen sich mit vielen mathematischen Fragen, und Julia ist die Gewinnerin unter ihnen. Und selbst wenn Sie genauer hinschauen, hat Julia einige Vorteile, die Python nicht gewinnen kann.

Python Zen gegen Julias Gier

Leute erstellen neue Programmiersprachen, wenn sie die guten Eigenschaften der alten Sprache beibehalten und die schlechten Teile reparieren wollen.

Aus diesem Grund schuf Guido van Rossum Ende der 1980er Jahre Python, um ABC zu verbessern. ABC ist als Programmiersprache zu perfekt. Es war aufgrund seiner unflexiblen Struktur leicht zu unterrichten, aber für den praktischen Gebrauch nicht geeignet.

Im Gegensatz dazu ist Python sehr praktisch. Sie können es in Zen of Python [^ 1] sehen, das die Absichten der Autoren widerspiegelt.

Schön ist besser als hässlich. Es ist besser zu spezifizieren als zu implizieren. Es ist besser, einfach als kompliziert zu sein. Trotzdem ist es besser, kompliziert als kompliziert zu sein. Das Nest sollte flach sein. Es ist besser, eine Lücke zu haben, als dicht zu sein. Leicht zu lesen ist gut. Besonderes zu sein ist kein Grund, gegen die Regeln zu verstoßen. Wenn es jedoch um Praktikabilität geht, kann Reinheit verloren gehen. ...

[^ 1]: Die japanische Übersetzung wird hier zitiert: The Zen of Python

Dennoch setzt Python die Stärken von ABC fort. Zum Beispiel Lesbarkeit, Einfachheit und anfängerfreundliche Punkte. Python ist jedoch viel robuster als ABC und für den praktischen Gebrauch geeignet.

コンクリートに書かれた文字BCA

ABC ebnete den Weg für Python, Python ebnete den Weg für Julia Foto von David Ballew auf Unsplash

Ebenso wollen Julias Autoren die guten Teile anderer Sprachen übernehmen und die schlechten Teile wegwerfen. Aber Julia ist viel ehrgeiziger. Anstatt eine Sprache zu ersetzen, will er alle schlagen.

Die Autoren von Julia sagt:

Wir sind also gierig. Das ist nicht genug.

Die Sprache, die wir wollen, ist so. Erstens eine lose lizenzierte Open Source-Sprache. Ich möchte die Geschwindigkeit von C und die Dynamik von Ruby. Es ist eine Sprache wie Lisp, die das gleiche Bild hat und echte Makros verwenden kann, aber wie Matlab, die leicht zu verstehen ist und auch natürlich beschreiben kann. Außerdem kann es für allgemeine Programmierungen wie Python verwendet werden, es kann statistische Analysen genauso einfach durchführen wie R, es kann Strings natürlich wie Perl verarbeiten, es ist stark in der linearen Algebra-Berechnung wie Matlab und es kann gut wie Shell programmieren. Kann zusammen gespleißt werden. Außerdem ist es ziemlich leicht zu merken, aber es ist auch für brillante Hacker befriedigend. Es kann interaktiv verwendet und kompiliert werden.

Julia kombiniert alle derzeit vorhandenen Vorteile, versucht jedoch nicht, sie gegen die in anderen Sprachen vorhandenen Nachteile einzutauschen. Obwohl Julia eine junge Sprache ist, wurden viele der von den Autoren gesetzten Ziele bereits erreicht.

Warum Julia-Entwickler Julia mögen

Vielseitigkeit

Julia kann für alles verwendet werden, von einfachen Anwendungen für maschinelles Lernen bis hin zu riesigen Supercomputersimulationen. Bis zu einem gewissen Grad kann dies mit Python erreicht werden. Python hat es jedoch geschafft, dies zu einer guten Sache zu machen.

Im Gegensatz dazu wurde Julia [genau dafür] erstellt (https://www.infoworld.com/article/3241107/julia-vs-python-which-is-best-for-data-science.html). Es war. Es ist von 1.

Geschwindigkeit

Julias Autoren wollten eine Sprache so schnell wie C erstellen, aber das Ergebnis war [noch schneller](https://theiotmagazine.com/julia-vs-python-will-it- Entfernen Sie den König der Programmierung (8220e4cd2e0a). In den letzten Jahren ist es einfacher geworden, Python zu beschleunigen, aber seine Leistung ist weit von dem entfernt, was Julia kann.

2017 trat Julia sogar dem [Petaflop Club] bei (https://www.hpcwire.com/off-the-wire/julia-joins-petaflop-club/). Es ist ein kleiner Sprachclub, der bei Höchstleistung die Geschwindigkeit von 1 Petaflop pro Sekunde überschreiten kann. Mit Ausnahme von Julia befinden sich derzeit nur C, C ++ und Fortran im Club. ..

Gemeinschaft

Python hat eine über 30-jährige Geschichte und eine riesige und kollaborative Community. Es gibt nur wenige Python-bezogene Fragen, die nicht in einer einzigen Google-Suche beantwortet werden können.

Im Gegensatz dazu ist die Julia-Community sehr klein. Dies bedeutet, dass das Nachschlagen länger dauert, um die Antwort zu finden. Möglicherweise sind Sie jedoch immer wieder mit derselben Person verbunden. Und dies kann eine unersetzliche Programmiererbeziehung sein.

Code-Konvertierung

Sie müssen nicht einmal Julia-Befehle kennen, um in Julia zu codieren. Sie können nicht nur Python- und C-Code in Julia verwenden, sondern auch [Julia in Python](/ run-native-julia-code-with-python-92d3e1079385)!

Dies macht es natürlich extrem einfach, Schwachstellen im Python-Code zu beheben. Mit anderen Worten, Sie können produktiv bleiben, während Sie Julia lernen.

投稿用画像

Die Bibliothek ist immer noch die Stärke von Python Photo von Susan Yin auf Unsplash / library? utm_source = unsplash & utm_medium = referral & utm_content = creditCopyText)

Bibliothek

Dies ist eines der besten Dinge an Python. Es hat eine große Anzahl gut gepflegter Bibliotheken. Julia hat nicht viele Bibliotheken und Benutzer beschweren sich, dass sie (noch) überraschend nicht gewartet werden.

Angesichts der Tatsache, dass Julia eine sehr junge Sprache mit begrenzten Ressourcen ist, ist die Anzahl der bereits vorhandenen Bibliotheken ziemlich beeindruckend. Abgesehen von der Tatsache, dass die Anzahl von Julias Bibliotheken zunimmt, kann Julia auch Schnittstellen zu C- und Fortran-Bibliotheken haben, um Plots zu verarbeiten.

Koexistenz von dynamischen und statischen Typen

Python ist eine zu 100% dynamisch typisierte Sprache. Dies bedeutet, dass das Programm beispielsweise zur Laufzeit bestimmt, ob eine Variable ein Gleitkomma oder eine Ganzzahl ist.

Während dies für Anfänger sehr einfach ist, kann es auch viele Fehler verursachen. Dies bedeutet, dass Sie Ihren Python-Code in jedem möglichen Szenario testen müssen. Dies ist eine sehr lächerliche Aufgabe, die viel Zeit in Anspruch nimmt.

Julia unterstützt das dynamische Schreiben voll und ganz, da die Autoren von Julia Julia auch das Erlernen erleichtern wollten. Im Gegensatz zu Python können statische Typen jedoch nach Bedarf eingeführt werden. Zum Beispiel genau wie statische Typen in C und Fortran.

Dies kann viel Zeit sparen. Anstatt eine Entschuldigung zu finden, Ihren Code nicht zu testen (https://medium.com/better-programming/9-excuses-why-programmers-dont-test-their-code-8860a616b1b5), wo immer dies möglich ist Sie können den Typ angeben.

Daten: Investieren Sie, wenn Sie klein sind

投稿用画像

投稿用画像

Die Anzahl der Fragen, die in StackOverflow mit Julia (oben) und Python (unten) markiert sind (https://insights.stackoverflow.com/trends?tags=python%2Cjulia).

Das klingt alles ziemlich gut, aber es ist wichtig, sich an Folgendes zu erinnern: Julia ist immer noch kleiner als Python.

Die Anzahl der Fragen in StackOverflow ist einer der ziemlich guten Indikatoren. Derzeit ist das Python-Tagging etwa 20-mal höher als das von Julia.

Dies bedeutet nicht, dass Julia unbeliebt ist. Kein Wunder, dass viele Programmierer Zeit brauchen, um die neue Sprache zu verwenden.

Folgendes berücksichtigen. Möchten Sie wirklich den gesamten Code in einer anderen Sprache schreiben? Nein, vielleicht möchten Sie in einem zukünftigen Projekt eine neue Sprache ausprobieren. Aus diesem Grund gibt es in allen Programmiersprachen eine zeitliche Verzögerung zwischen Veröffentlichung und Verwendung.

Aber was ist, wenn Sie es jetzt verwenden? Julia erlaubt so viele Sprachkonvertierungen, dass es nicht schwierig ist. Ja, Sie investieren in die Zukunft. Wenn immer mehr Menschen Julia adoptieren, haben Sie bereits genug Erfahrung, um ihre Fragen zu beantworten. Je mehr Python-Code Sie durch Julia ersetzen, desto haltbarer ist Ihr Code.

画面上に1と0がたくさんあり、赤いハートを形成している

Es ist Zeit, Julia Foto von Alexander Sinn auf Unsplash Liebe zu zeigen. Fotos / Code? utm_source = unsplash & utm_medium = Empfehlung & utm_content = creditCopyText)

Das Letzte, was Sie sagen sollten: Lernen Sie Julia und machen Sie es zu Ihrer Stärke

Vor vierzig Jahren war künstliche Intelligenz nur ein Nischenphänomen. Die Industrie und die Investoren glaubten es nicht und viele Technologien waren unkompliziert und unpraktisch. Diejenigen, die es damals gelernt haben, sind jedoch die heutigen Giganten. Die Nachfrage ist sehr hoch, Gehalt entspricht NFL-Spielern.

Ebenso ist Julia immer noch eine sehr Nische. Aber wenn Julia wächst, wird der Gewinner derjenige sein, der Julia früh adoptiert hat.

Ich sage nicht, dass Sie, wenn Sie Julia jetzt adoptieren, garantiert innerhalb von 10 Jahren viel Geld verdienen. Aber die Anzahl der Möglichkeiten wird zunehmen.

Ich möchte, dass du darüber nachdenkst. Die meisten Straßenprogrammierer nehmen Python in ihre Lebensläufe auf. Und in den nächsten Jahren werden weitere Python-Programmierer auf dem Arbeitsmarkt sein. Wenn sich die Nachfrage der Unternehmen nach Python verlangsamt, wird sich die Zukunft der Python-Programmierer verringern. Anfangs ist es langsam, aber unvermeidlich.

Auf der anderen Seite können Sie einen echten Vorteil haben, wenn Sie Julia in Ihren Lebenslauf aufnehmen können. Um ehrlich zu sein, wie unterschiedlich ist es von anderen Pythonisten? Es wird kein großer Unterschied sein. Aber auch drei Jahre später wird es nicht mehr so viele Julia-Programmierer geben.

Mit Julia-Fähigkeiten zeigt dies nicht nur, dass Sie über die Anforderungen Ihres Jobs hinaus interessiert sind, sondern auch, dass Sie eine motivierte Person sind und ein breiteres Verständnis dafür haben, was es bedeutet, Programmierer zu sein. Werden. Mit anderen Worten, Sie sind die richtige Person für den Job.

Sie und die anderen Julia-Programmierer sind Rockstars der Zukunft, und Sie wissen es. Übrigens sagten die Autoren von Julia im Jahr 2012:

Wir erkennen, dass wir unentschuldbar gierig sind, aber wir wollen immer noch alles. Vor ungefähr zweieinhalb Jahren begann ich mit der Arbeit, um diese gierige Sprache zu erschaffen. Es ist nicht perfekt, aber etwas näher an der Veröffentlichung von Version 1.0. Die resultierende Sprache wurde [Julia] genannt (https://julialang.org/). Es hat bereits 90% unserer unvernünftigen Forderungen erfüllt, aber um es vollständiger zu machen, müssen wir auf unvernünftige Forderungen anderer Menschen hören. Wenn Sie also auch eine gierige, unvernünftige und anspruchsvolle Programmiererin sind, würde ich es lieben, wenn Julia es versucht.

Python ist immer noch außerordentlich beliebt. Aber wenn Sie Julia jetzt lernen, könnte es in Zukunft ein goldenes Ticket sein. In diesem Sinne "Bye bye Python. Hallo Julia! "

Übersetzungskooperation

Original Author: Rhea Moutafis Original Article: Bye-bye Python. Hello Julia! Thank you for letting us share your knowledge!

Dieser Artikel wurde in Zusammenarbeit mit folgenden Personen veröffentlicht. Danke nochmal. Auswahl: @_masa_u Übersetzer: @_masa_u Auditor: @ r_pg10 Herausgeber: @_masa_u

Wir freuen uns auf Ihre Meinungen und Eindrücke.

Wie war dieser Artikel? ・ Ich wünschte, ich hätte das getan, ich möchte, dass du mehr tust, ich denke, es wäre besser ・ Diese Art von Ort war gut Wir suchen offene Meinungen wie. Bitte zögern Sie nicht, Ihre Kommentare im Kommentarbereich zu veröffentlichen, da wir Ihr Feedback verwenden werden, um die Qualität zukünftiger Artikel zu verbessern. Wir freuen uns auch über Ihre Kommentare auf Twitter. Wir freuen uns auf Ihre Nachricht.

Recommended Posts

Tschüss Python. Hallo Julia!
Python beginnend mit Hallo Welt!
Python
[Hinweis] Hallo Weltausgabe mit Python
cout << "Hallo Welt! \ N" in Python
Python #Hello World für Super-Anfänger
[Python] Webanwendung von 0! Hands-on (2) -Hallo Welt-
Python nur mit Hallo, Welten zu erinnern
Hinweis für Pyjulia, die Julia aus Python anruft
So zeigen Sie Hello World in Python an