Heim >Backend-Entwicklung >Golang >Gründe, Python aufzugeben und sich im Jahr 2021 für Go zu entscheiden
In der vergangenen Zeit hat die chinesische Go-Sprache viele öffentliche Konten mit Python-Bezug beworben. Viele Menschen sind überrascht: Warum werden alle Python-Konten beworben? Tatsächlich ist der Hauptgrund, dass es zu viele öffentliche Konten in der Python-Kategorie gibt und viele davon sehr viele Fans haben. Ich bin auch ziemlich verwirrt. Aber es lohnt sich, daraus zu lernen, und sie zeigen auch, dass Go noch einen langen Weg vor sich hat.
Welches würden Sie zwischen Python und Go wählen? Wenn Sie ein tieferes Verständnis von Go (Golang) haben, werden Sie sich definitiv dafür entscheiden. Andernfalls wird Python ausgewählt. Also lasst uns darüber diskutieren. Python-Freunde, hier sind 5 Gründe, sich für Go zu entscheiden. Lassen Sie uns diesen Artikel gemeinsam lesen.
„Python ist sehr leistungsfähig, insbesondere Python 3 mit seinen asynchronen Fähigkeiten, aber Go wird in großen Unternehmen seinen Platz vollständig einnehmen …“
Wenn Sie wirklich … Wenn Sie das oben Gesagte verstanden haben, können Sie versuchen, die Programmiersprache Go zu verwenden. Ich denke, Go ist eine sehr einfache Programmiersprache, die sich an jede Anwendungsumgebung anpassen lässt, sogar einfacher als die Javascript-Programmierung. Dies ist wahrscheinlich der Grund, warum die Programmiersprache Go in den letzten Jahren populär geworden ist.
In diesem Artikel werde ich die folgenden Aspekte beider Sprachen vergleichen. Parameter in dieser Richtung helfen Ihnen bei der Entscheidung, welche Sprache für das jeweilige Projekt besser geeignet ist.
1. Leistung
3. Praktische Anwendung
5 >
6. Lesbarkeit des Codes Die Homepage und API der Website TreeScale.com sind Webanwendungen, die auf einigen Analysetools basieren. Hier ist ihr Tech-Stack: React.js Home Frontend1. Kompiliert in einer einzigen Binärdatei
Golang ist eine kompilierte Sprache, in die die Entwickler von Googe viel Mühe gesteckt haben Es. Es verwendet statische Verknüpfungen, um alle relevanten Bibliotheksdateien und Module basierend auf dem Betriebssystemtyp und der Umgebung tatsächlich in einer einzigen Binärdatei zu kombinieren. Dies bedeutet auch, dass Sie eine Backend-Anwendung für ein Linux-Betriebssystem und eine X86-CPU-basierte Anwendung kompilieren möchten Sie laden einfach die kompilierte Binäranwendung auf den Server herunter und dann funktioniert die Backend-Anwendung ohne zugehörige Dateien.2. Statisches Typensystem
Das Typensystem ist für groß angelegte Anwendungen sehr wichtig. Python ist eine großartige und unterhaltsame Sprache, aber manchmal treten seltsame Ausnahmen auf, wenn Sie versuchen, eine Variable als Ganzzahlvariable zu verwenden, obwohl sie tatsächlich vom Typ String ist.
Code wie dieser führt zum Absturz von Django.Und Go kompiliert und teilt Ihnen mit, dass es sich um einen Compilerfehler handelt, wodurch Zeit für dumme Probleme gewonnen wird.
def some_view (request): user_id = request.POST.get ('id', 0)
3. Optimierung (Leistung)
Für uns verfügt Go über ein eigenes Multithreading-Modul und CPU-Skalierbarkeit, was zu einer höheren Leistung führt. Wann immer wir einige interne Anforderungen ausführen müssen, können wir sie mit Goroutine separat ausführen, was zehnmal Ressourcen spart als Threads in Python. Mit diesen integrierten Sprachfunktionen können wir viele Ressourcen (Speicher und CPU) einsparen.
4. Go erfordert kein Web-Framework mehr
Das ist eine coole Sache für eine Programmiersprache. Die Ersteller und die Community der Go-Sprache verfügen über viele integrierte Tools, die von der Kernsprache unterstützt werden, und in den meisten Fällen benötigen Sie keine Bibliotheken von Drittanbietern mehr. Es verfügt beispielsweise über integrierte http-, json- und html-Vorlagen. Sie können sogar sehr komplexe API-Dienste erstellen, ohne sich Gedanken über die Suche nach Bibliotheken von Drittanbietern auf Github machen zu müssen.
Natürlich verfügt Go auch über viele Bibliotheken und Frameworks zum Erstellen von Webprojekten. Ich empfehle jedoch, keine Bibliotheken von Drittanbietern zum Erstellen von Webprojekten oder API-Diensten zu verwenden, da diese in den meisten Fällen verwendet werden Standard-Bibliothekspakete werden Ihnen das Leben erleichtern.
5. Bessere IDE-Unterstützung und Debugging
IDE-Unterstützung ist eine der wichtigsten Überlegungen, wenn Sie versuchen, Programmiersprachen zu ändern. Freundliche IDEs können durchschnittlich 80 % der Programmierzeit einsparen. Das Go-Plugin für JetBrains IDEA bietet auch andere Unterstützung, z. B. (Webstorm, PHPStorm usw.). Dieses Plugin stellt alle in der Projektentwicklung benötigten Dienste bereit. Die leistungsstarke JetBrains IDEA kann Ihre Entwicklung leistungsfähiger machen, und Goland ist noch besser.
Wählen Sie „Gehen“ oder „nach Hause gehen?“
Mozilla stellt intern seine umfangreiche zugrunde liegende Protokollierungsarchitektur auf Go um, teilweise aufgrund leistungsstarker Goroutinen. Die Go-Sprache wurde von Leuten bei Google entworfen, und die Unterstützung der Parallelität hatte zu Beginn des Entwurfs oberste Priorität, anstatt wie bei verschiedenen anderen Python-Lösungen erst später hinzugefügt zu werden. Also begannen wir, von Python auf Go umzusteigen.
Obwohl unser Go-Code-Produkt noch nicht offiziell veröffentlicht wurde, sind die Ergebnisse ermutigend. Jetzt können wir tausend Dokumente pro Sekunde verarbeiten, verbrauchen weniger Speicher und müssen das in Python aufgetretene Problem nicht debuggen: ugly multiprocess/gevent/"Warum Control-C Prozesse nicht beenden kann".
Warum wir Go lieben?
Jeder, der auch nur ein bisschen weiß, wie Programmiersprachen funktionieren (Interpretation vs. Kompilierung, dynamisch vs. statisch), wird sagen: „Tch, natürlich ist Go schneller.“ Ja, wir könnten auch alles in Java neu schreiben und ähnliche und schnellere Verbesserungen sehen, aber das ist nicht der Grund, warum Go gewinnt.
Der Code, den Sie in Go geschrieben haben, scheint korrekt zu sein. Ich weiß nicht, was los ist, aber sobald der Code kompiliert ist (schnelle Kompilierungsgeschwindigkeit), hat man das Gefühl, dass der Code einfach funktioniert (nicht nur korrekt läuft, sondern auch logisch korrekt ist). Ich weiß, das klingt unzuverlässig, aber es ist wahr.
Dies ist Python in Bezug auf Redundanz (oder Nicht-Redundanz) sehr ähnlich. Es zielt zunächst auf Funktionen ab, sodass die funktionale Programmierung leicht zu verstehen ist. Klar, Go-Threads und -Kanäle erleichtern Ihnen die Arbeit, Sie erzielen große Leistungssteigerungen durch statische Eingabe und haben eine bessere Kontrolle über die Speicherzuweisung, aber Sie müssen nicht viel für die Ausdruckskraft der Sprache bezahlen.
Laut unserer Codestatistik haben wir nach dem Umschreiben des Projekts in Go den Code um 64 % reduziert.
Sie müssen keinen Code debuggen, der nicht vorhanden ist. Weniger Code bedeutet weniger Fehler!
Fazit
Go bietet uns große Flexibilität. Eine Sprache kann in allen Benutzerszenarien verwendet werden und funktioniert in allen Benutzerszenarien gut. Bei den Backend- und API-Diensten haben wir eine Leistungsoptimierung von 30 % erreicht. Jetzt kann ich Protokolle in Echtzeit verarbeiten, in eine Datenbank konvertieren und einen oder mehrere Dienste über WebSocket verwalten! Dies ist eine sehr leistungsstarke Funktion der Go-Sprache.
Weitere Go-Sprachkenntnisse finden Sie in der Spalte Go Language Tutorial auf der chinesischen PHP-Website.
Das obige ist der detaillierte Inhalt vonGründe, Python aufzugeben und sich im Jahr 2021 für Go zu entscheiden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!