Go 言語パッケージ: 1. fmt; 2. io; 3. bufio; 4. sort; 5. strconv; 6. os; 7. sync; 8. flag; 9. encoding/json; 10 、 html/template; 11. net/http; 12. リフレクトなど
このチュートリアルの動作環境: Windows 10 システム、GO 1.11.2、Dell G3 コンピューター。
Go 言語のソース コードの再利用はパッケージに基づいています。 Go 言語のエントリ main() 関数は、main というパッケージにあります。メイン パッケージが他のコードを参照したい場合は、パッケージの形式でも参照する必要があります。この章では、メイン パッケージをエクスポートする方法について詳しく説明します。パッケージの内容と他のパッケージをインポートする方法。
Go 言語パッケージはフォルダーと 1 対 1 に対応しており、パッケージ関連の操作はすべて作業ディレクトリ (GOPATH) に依存する必要があります。
標準の Go 言語コード ベースには多数のパッケージが含まれており、そのほとんどは Go のインストール時にシステムに自動的にインストールされます。これらのパッケージは $GOROOT/src/pkg
ディレクトリで確認できます。以下は、開発で一般的に使用されるいくつかのパッケージの簡単な紹介です。
1) fmt
fmt パッケージは、C 言語の printf および scanf に似た、フォーマットされた標準入出力を実装します。その中でも、fmt.Printf() と fmt.Println() は開発者によって最も頻繁に使用される関数です。
フォーマット フレーズは C 言語から派生したもので、一部のフレーズ (%- シーケンス) は次のように使用されます:
このパッケージは、独自の I/O 操作インターフェイスを提供します。その主なタスクは、os パッケージなどのプリミティブ I/O をカプセル化し、その他の関連関数を追加して、パブリック インターフェイスで使用するための抽象関数を持たせることです。
3) bufiobufio パッケージは、io パッケージをカプセル化することでデータ バッファリング機能を提供します。これにより、大きなデータ ブロックの読み取りおよび書き込みによって発生するオーバーヘッドを削減できます。ある程度。
bufio の各コンポーネント内にはバッファが保持されており、データの読み書き操作はバッファ領域を介して直接実行されます。読み取りまたは書き込み操作が開始されると、まずバッファからデータを取得しようとします。バッファにデータがない場合にのみ、データ ソースからデータが取得され、バッファが更新されます。
4) sortsort パッケージは、スライスとユーザー定義のコレクションをソートするための関数を提供します。
5) strconvstrconv パッケージは、文字列を基本データ型に、または基本データ型から文字列に変換するための関数を提供します。
6) osos パッケージは、Unix スタイルのように設計された、プラットフォームに依存しないオペレーティング システム関数インターフェイスを提供しますが、エラー処理は go スタイルです。が使用されます。失敗した場合は、エラー番号の代わりにエラーの種類が返されます。
7) syncsync パッケージは、マルチスレッド ロック メカニズムとその他の同期相互排他メカニズムを実装します。
8) flag#flag パッケージは、コマンド ライン パラメーターのルール定義と受信パラメーターの解析の機能を提供します。ほとんどのコマンド ライン プログラムにはこのパッケージが必要です。
9) encoding/jsonJSON は現在、ネットワーク プログラムの通信形式として広く使用されています。 Encoding/json パッケージは、オブジェクトから JSON 文字列へのシリアル化や、JSON 文字列からの特定のオブジェクトの逆シリアル化など、JSON の基本的なサポートを提供します。
10) html/template主に、Web 開発で HTML テンプレートを生成するためのいくつかの機能を実装します。
11) net/httpnet/http パッケージは、主に http リクエスト、レスポンス、URL 解析、基本的な http クライアントと拡張を含む HTTP 関連サービスを提供します。 httpサービス。
net/http パッケージを使用すると、わずか数行のコードでクローラや Web サーバーを実装できます。これは従来の言語では考えられませんでした。
12) リフレクトリフレクト パッケージはランタイム リフレクションを実装し、プログラムが抽象型を通じてオブジェクトを操作できるようにします。これは通常、静的型インターフェースの値を処理し、Typeof を通じてその動的型情報を解析するために使用され、通常はインターフェース型 Type のオブジェクトを返します。
13) os/execos/exec パッケージは、カスタム Linux コマンドを実行するための関連実装を提供します。
14) stringsstrings パッケージは主に、結合、検索、分割、比較、サフィックス チェック、インデックス付け、大文字小文字の区別など、文字列を処理するための関数のコレクションです。加工など
strings パッケージと bytes パッケージの関数インターフェイス関数は基本的に同じです。
15) bytesbytes パッケージは、バイト スライスの読み取りと書き込みのための一連の関数を提供します。バイトスライス処理には多くの関数があり、基本処理関数、比較関数、サフィックスチェック関数、インデックス関数、分割関数、ケース処理関数、サブスライス処理関数に分かれています。
16) loglog パッケージは、主にプログラム内のログを出力するために使用されます。
ログ パッケージは、Print、Fatal、Panic の 3 種類のログ出力インターフェイスを提供します。
#印刷は通常の出力です;Fatal は、Print 実行後に os.Exit(1) を実行すること、
Panic は、Print 実行後に、panic() メソッドを呼び出すことです。
推奨学習: Golang チュートリアル
以上がGo言語にはどのようなパッケージがありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。