私はしばらくの間Goを学習してきましたが、Goには多くの優れた機能(シンプルでクリーンな構文、高速なコンパイル/実行、並行性の優れたサポート、ファーストクラス関数など)があることがわかりました。しかし、Goで開発されている人気のあるプロジェクトはほとんどありません。
Goが主流の言語になるのを制限する主な欠点は何ですか?Goが明らかに使用に適していない種類のプログラム/プロジェクトを誰かが思い付くことができますか?
私はしばらくの間Goを学習してきましたが、Goには多くの優れた機能(シンプルでクリーンな構文、高速なコンパイル/実行、並行性の優れたサポート、ファーストクラス関数など)があることがわかりました。しかし、Goで開発されている人気のあるプロジェクトはほとんどありません。
Goが主流の言語になるのを制限する主な欠点は何ですか?Goが明らかに使用に適していない種類のプログラム/プロジェクトを誰かが思い付くことができますか?
Goはまだ3歳です。Cは40歳以上です。C ++は30以上。Perl25。Rubyはほぼ20。Javaは17歳で比較的若い言語であり、C#は10歳(カウント方法によっては12歳)でかなり若い。そして、JavaとC#は、それらを支配的にするために多くのリソースを投入しました。SunとMicrosoftは、あらゆる種類のツールとライブラリに投資し、人々にそれらのトレーニングを提供しました。それに比べれば、3年はほとんど何もありません。GoogleはGoの開発者にいくらかのお金を費やしていますが、C#やJavaの規模にはほど遠いです。そして、3年は本当に著名な製品がGoで書かれてリリースされるのに多くの時間ではありません。
数年待ってください。Goでコードを記述します。たぶんあなたは次の著名なプロジェクトになるでしょう。
適していない限り、本当に成熟した言語とツールセットを必要とするものには適していません。凝ったリファクタリングIDE、たくさんの既製のライブラリ、そしてたくさんのチュートリアルや情報がオンラインで必要な場合は、おそらくまだそれを見つけることができません。最後に確認したところ、ガベージコレクターは少し弱かった。保守的なコレクターであるため、整数をポインターと間違えるためにリークが発生する可能性があります。これは今では修正できますが、Go実装が比較的未成熟であることを示しています。他の言語の問題を解決できる(またはよく知られている回避策のパターンがある)特定のことがありますが、それはまだGoの空中にあります。