Den Nachteil, den man sich erkauft, ist die Programmgröße des Kompilats. Das ist recht extrem. Mein Programm hat jetzt 300 Zeilen und das Binärfile ist jetzt schon über 3MB groß. Ein "Leer"-Programm hat über 1MB. (Bei Turbo-Pascal 3 war das mal 8 Kilobyte.)
Na ja, Go und Turbo Pascal kann man auch nur teilweise miteinander vergleichen (Bei einigen Dingen wie Syntax und Modularisierung hat man sich offenbar ein paar Inspirationen geholt). Im Gegensatz zu vielen anderen Programmiersprachen wird bei Go eben auch eine komplette Runtime mit GC, Go-Routine Scheduler, Reflection usw. mit in das Executable gelinkt, da leichte Verteilbarkeit von Go-Binaries ein wichtiges Designziel war. Meiner Erfahrung nach relativiert sich die Größe bei komplexeren Programmen recht schnell. Binärmonster von mehreren Megabyte hab ich auch schon mit C++ und einigen 10 000 Zeilen Quellcode hinbekommen.
Mal sehen was noch so kommt. Ich hoffe, dass man bald Android- und (P)NaCl-Anwendungen mit Go schreiben kann. Besser als Java wäre es allemal und man gewöhnt sich recht schnell an die flotten Code -> Compile -> Test Zyklen. Testgetriebene Entwicklung ist beispielsweise ein Graus mit C++.
Den Nachteil, den man sich erkauft, ist die Programmgröße des Kompilats. Das ist recht extrem. Mein Programm hat jetzt 300 Zeilen und das Binärfile ist jetzt schon über 3MB groß. Ein "Leer"-Programm hat über 1MB. (Bei Turbo-Pascal 3 war das mal 8 Kilobyte.)
Na ja, Go und Turbo Pascal kann man auch nur teilweise miteinander vergleichen (Bei einigen Dingen wie Syntax und Modularisierung hat man sich offenbar ein paar Inspirationen geholt). Im Gegensatz zu vielen anderen Programmiersprachen wird bei Go eben auch eine komplette Runtime mit GC, Go-Routine Scheduler, Reflection usw. mit in das Executable gelinkt, da leichte Verteilbarkeit von Go-Binaries ein wichtiges Designziel war.
Meiner Erfahrung nach relativiert sich die Größe bei komplexeren Programmen recht schnell. Binärmonster von mehreren Megabyte hab ich auch schon mit C++ und einigen 10 000 Zeilen Quellcode hinbekommen.
Mal sehen was noch so kommt. Ich hoffe, dass man bald Android- und (P)NaCl-Anwendungen mit Go schreiben kann. Besser als Java wäre es allemal und man gewöhnt sich recht schnell an die flotten Code -> Compile -> Test Zyklen. Testgetriebene Entwicklung ist beispielsweise ein Graus mit C++.