Goの概要

ここに画像の説明を挿入

Go言語とは何ですか?

Go(Golangとも呼ばれます)は、静的に強く型付けされ、コンパイルされ、並行して実行される、ガベージコレクションを備えた、Googleによって開発されたプログラミング言語です。

歴史:

ここに画像の説明を挿入

ロバートグリセマー、ロブパイク、ケントンプソンは2007年9月にGoのデザインを開始し、後にイアンランステイラーとラスコックスがプロジェクトに参加しました。Goは、Infernoオペレーティングシステムに基づいています。Goは2009年11月にオープンソースプロジェクトとして正式に発表され、LinuxおよびMac OS Xプラットフォームに実装され、その後Windowsシステムに追加されました。2016年、ソフトウェア評価会社TIOBEによってGoが「Best Language of TIOBE 2016」に選ばれました。現在、Goは6か月ごとにセカンダリバージョンをリリースしています(つまり、axからayへのアップグレード)。

コンパイルされた言語

現在、市場に出回っているプログラミング言語は、コンパイル言語とインタープリター言語に分かれています。
ここに画像の説明を挿入

一般的な解釈言語:

  • パイソン

  • PHP

  • ジャワ

コンパイルされた言語:

  • Golang

  • C ++

  • C

21世紀のC言語

有名なプログラミング言語の開発時間の比較

ここに画像の説明を挿入

最初のデュアルコアプロセッサは2005年にリリースされ、Go言語は今後2年間で作成されました。マルチコアプロセッサと生来の同時処理においていくつかの利点があります。Go言語は、設計時にネイティブな同時実行性をサポートしているため、開発者の経験を節約し、開始を容易にします。

説明:

Goの構文はCに近いですが、変数の宣言は異なります。Goはガベージコレクションをサポートしています。Goの並列モデルは、Tony HallのCommunication Sequential Process(CSP)に基づいています。同様のモデルを採用する他の言語には、OccamやLimboなどがありますが、チャネル伝送などのPi動作特性もあります。プラグイン(プラグイン)のサポートはバージョン1.8で開かれました。つまり、一部の関数をGoから動的にロードできるようになりました。

C ++と比較すると、Goには列挙、例外処理、継承、ジェネリック、アサーション、仮想関数などの関数は含まれていませんが、スライスタイプ、同時実行、パイプライン、ガベージコレクション、インターフェイスなどの機能が追加されています。言語レベルのサポート。Go 2.0バージョンはジェネリックをサポートし、アサーションの存在に対して否定的な態度を保持すると同時に、型の継承を提供しないようにします。

Javaとは異なり、Goには文字列型と同様に、連想配列(ハッシュまたは辞書とも呼ばれます)が埋め込まれています。

ここに画像の説明を挿入

Goにはいくつかのルールがあり、これらは必須です。次のルールが一致しない場合、コンパイルするとエラーが発生します。

  • プロシージャの各行の後にセミコロン(;)を記述する必要はありません。

  • 中括弧({)を新しい行に配置することはできません。

  • 判定とforループを括弧で囲む必要がない場合。

  • Goには、組み込みのgofmtツールもあります。このツールを使用すると、コード内の余分なスペースを自動的に分類し、変数名を整列し、整列したスペースをタブに変換できます。

コンパイラー

現在、公式コンパイラgcとgccgoの2つのGoコンパイラブランチがあります。公式のコンパイラは元々Cで書かれており、後でブートストラップを実現するためにGoで書き直されました。Gccgoは、標準のGCCをバックエンドとして使用するGoコンパイラーです。

公式コンパイラはクロスプラットフォームコンパイルをサポートしています(ただしCGOはサポートしていません)。ソースコードをバイナリファイルにコンパイルして、ターゲットシステムおよびアーキテクチャで実行できます。

参照元のアドレス:https : //studygolang.com/articles/20032

元の記事を127件公開 賞賛された261件 表示回数12万回

おすすめ

転載: blog.csdn.net/weixin_44685869/article/details/105609427