ホームページ  >  記事  >  バックエンド開発  >  go はどの言語に属しますか?

go はどの言語に属しますか?

青灯夜游
青灯夜游オリジナル
2023-01-17 15:01:102223ブラウズ

Go は、静的に強く型付けされ、コンパイルされ、ガベージ コレクション機能を備えた同時プログラミング言語です。Go では、コードをコンパイルするためにコンパイラが必要です。コンパイラはソース コードをバイナリ (またはバイトコード) 形式にコンパイルします。コードをコンパイルするときに、コンパイラはエラーをチェックし、パフォーマンスを最適化し、さまざまなプラットフォームで実行できるバイナリを出力します。

go はどの言語に属しますか?

このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。

Go (Golang とも呼ばれる) は、Google の Robert Griesemer、Rob Pike、Ken Thompson によって開発された、ガベージ コレクション機能を備えた静的に強く型付けされ、コンパイルされた同時プログラミング言語です。

Go はコンパイラを使用してコードをコンパイルします。コンパイラはソース コードをバイナリ (またはバイトコード) 形式にコンパイルします。コードをコンパイルするときに、コンパイラはエラーをチェックし、パフォーマンスを最適化し、さまざまなプラットフォームで実行できるバイナリを出力します。 Go プログラムを作成して実行するには、プログラマは次の手順を実行する必要があります。

  • テキスト エディターを使用して Go プログラムを作成します。

  • ファイルを保存します。

  • プログラムをコンパイルします。

  • コンパイルされた実行可能ファイルを実行します。

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

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

Java とは異なり、Go には文字列型と同様に、連想配列 (ハッシュ テーブル (Hash) または辞書 (Dictionaries) とも呼ばれます) が組み込まれています。

書き方

Goにはいくつかの規定があり、以下の規定に当てはまらない場合はコンパイルエラーとなります。

  • プログラムの各行の後にセミコロンを記述する必要はありません。

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

  • if 判定と for ループは括弧で囲む必要はありません。

Go には、コード内の余分な空白を自動的にクリーンアップし、変数名を整列し、整列されたスペースをタブに変換できる組み込みの gofmt ツールもあります。

Go 言語を学ぶべき理由

システム プログラムやネットワーク ベースのプログラムを作成したい場合、Go 言語は非常に良い選択肢です。比較的新しい言語であるこの言語は、大規模な同時ネットワーク プログラムを作成する際の課題に対処するために、経験豊富で尊敬されているコンピューター科学者によって設計されました。

Go 言語が登場するまで、開発者は常に非常に難しい選択に直面していました。実行速度は速いがコンパイル速度が不十分な言語 (C など) を使用するか、それとも、コンパイル速度は速いですが、理想的なコンパイル速度ではありません。実行効率が悪い言語 (.NET、Java など)、または開発の難易度は低いが平均的な実行速度を持つ動的言語はどうでしょうか?明らかに、Go 言語は、高速なコンパイル、効率的な実行、容易な開発という 3 つの条件の間で最適なバランスを実現しています。

Go 言語はクロスコンパイルをサポートしているため、たとえば、Linux システムを実行しているコンピュータ上で Windows 上で実行できるアプリケーションを開発できます。これは、UTF-8 を完全にサポートする最初のプログラミング言語です。これは、UTF-8 でエンコードされた文字列を処理できるという事実にも反映されているだけでなく、そのソース コード ファイル形式も UTF-8 エンコードを使用しています。 Go 言語はまさにインターナショナルです!

Go 言語の目的

Go 言語は、Web サーバー、ストレージ クラスター、または同様の目的を実行する巨大な中央サーバーで使用するシステム プログラミング言語として設計されています。

高性能分散システムの分野では、Go 言語は間違いなく他のほとんどの言語よりも開発効率が高くなります。大規模な並列サポートを提供するため、ゲーム サーバーの開発に最適です。

【関連する推奨事項: Go ビデオ チュートリアル プログラミング教育

以上がgo はどの言語に属しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。