Go programmieren für Dummies. Wei-Meng Lee
Чтение книги онлайн.
Читать онлайн книгу Go programmieren für Dummies - Wei-Meng Lee страница 14
Beim Erlernen einer neuen Programmiersprache ist es oft hilfreich, einen Vergleich mit anderen Programmiersprachen anzustellen, die Sie vielleicht schon kennen. Im Idealfall helfen Ihnen Ihre vorhandenen Kenntnisse auch bei der neuen Sprache.
In diesem Abschnitt vergleiche ich Go mit zwei branchenweit besonders häufig verwendeten Programmiersprachen, nämlich mit Java und Python. Gelegentlich ist auch ein Vergleich mit C sinnvoll, da Go syntaktische Ähnlichkeiten zu dieser Sprache aufweist. Zudem wird Go oft nachgesagt, es vereine die Geschwindigkeit von C mit der Produktivität von Python.
Wenn Sie noch keine dieser Programmiersprachen in Ihrem Repertoire haben, ist das nicht schlimm. Alle hier erwähnten Funktionen werden in den weiteren Kapiteln dieses Buches ausführlich vorgestellt.
Syntax
In Sachen Syntax weist Go mehr Ähnlichkeiten mit den Programmiersprachen C und Java auf, bei denen Codeblöcke in geschweifte Klammern gesetzt werden. Python hingegen rückt die Programmzeilen ein, um verschiedene Codeblöcke auch visuell voneinander zu trennen.
Ebenso wie Python stellt Go Funktionen in den Mittelpunkt, während sich bei Java alles um Klassen dreht und sogar Funktionen in Klassen eingeschlossen werden müssen.
Im Gegensatz zu Python und Java bietet Go keine Unterstützung für die objektorientierte Programmierung (OOP) und Vererbung. Dafür gibt es in Go zur Strukturierung sogenannte Interfaces und Structs, die genau wie Klassen funktionieren.
Wie Java nutzt auch Go die statische Typisierung. Python ist eine dynamisch typisierte Sprache.
Kompilierung
Während Python und Java in Bytecode kompiliert werden, der dann übersetzt und auf einer virtuellen Maschine ausgeführt wird, liefert Go beim Kompilieren direkt Maschinencode. Aus diesem Grund ist Go besonders leistungsfähig.
Genau wie Python und Java unterstützt auch Go die automatische Speicherbereinigung (Garbage Collection). Bei diesem Vorgang zur Speicherverwaltung sucht der Garbage Collector nach Objekten, die von einem Programm nicht mehr benötigt werden, um den dadurch belegten Speicherplatz wieder freizugeben.
Python verschlingt eine ganze Menge Arbeitsspeicher. Java ist auch nicht viel besser, da Speicherressourcen dynamisch angefordert werden. Im Gegensatz dazu können Sie den Arbeitsspeicherbedarf bei Go besser steuern.
Nebenläufigkeit
Parallelisierung und Nebenläufigkeit sind in Go integriert – deswegen lassen sich Multithreading-Anwendungen sehr einfach programmieren. Sowohl Java als auch Python unterstützen die Nebenläufigkeit durch Threading, allerdings nicht so effizient wie Go. Tatsächlich ist die Nebenläufigkeit eines der wichtigsten Argumente, die für Go sprechen.
Bibliotheken
Alle drei Programmiersprachen bieten umfassende Unterstützung für Bibliotheken, und zwar sowohl für Standard- als auch für Drittanbieter-Bibliotheken. Besonders letztere entscheiden oft darüber, ob sich eine Programmiersprache dauerhaft etablieren kann. Aus diesem Grund ist vor allem Python seit einigen Jahren enorm beliebt – dank der Unterstützung für Drittanbieter-Bibliotheken zur Datenanalyse erhält auch die Allgemeinheit Zugang zu maschinellem Lernen und Deep Learning. In dieser Hinsicht hängt Go zwar etwas hinterher, da es die Sprache ja noch nicht so lange gibt, doch die Anzahl an verfügbaren Bibliotheken für Go nimmt stetig zu.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «ЛитРес».
Прочитайте эту книгу целиком, купив полную легальную версию на ЛитРес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.