特徴: 1. パッケージ名は通常小文字で、短く意味のある名前を使用します; 2. パッケージ名は通常、パッケージが配置されているディレクトリと同じ名前にするか、別の名前にすることもできます。パッケージ名には「-」やその他の特殊記号を含めることはできません; 3. パッケージは通常、パッケージ名の一意性を確保するために、ディレクトリ名としてドメイン名を使用します; 4. main という名前のパッケージは、アプリケーションのエントリ パッケージです。ソースコードをコンパイルするときにメインパッケージがない場合、コンパイルされません. 出力実行ファイル; 5. ディレクトリ内のすべてのソースコードファイルは同じパッケージにのみ属することができ、同じパッケージに属するソースコードファイルを配置することはできません複数のディレクトリにあります。
このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。
Go 言語はパッケージを使用してソース コードを整理します。パッケージは複数の Go ソース コードのコレクションであり、高度なコード再利用ソリューションです。 Go 言語は、fmt、os、io などの多くの組み込みパッケージを提供します。
ソース コード ファイルは特定のパッケージに属している必要があり、ソース コード ファイル内の有効なコードの最初の行は、現在属しているパッケージを宣言する package pacakgeName ステートメントである必要があります。
パッケージの基本概念
Go 言語パッケージはディレクトリ ツリーの編成形式を使用します。通常、パッケージの名前はディレクトリです。 Go 言語では、パッケージ名がそのパッケージが置かれているディレクトリ名と同じ名前である必要はありませんが、パッケージ名はそれが置かれているディレクトリと同じ名前にすることが推奨されています。構造がより明確になるように配置されています。
パッケージは非常に深いディレクトリに定義できます。パッケージ名の定義にはディレクトリ パスは含まれませんが、パッケージを参照する場合は通常、フル パスが使用されます。たとえば、GOPATH/src/a/b/
にパッケージ c を定義します。パッケージ c のソース コードでは、package a/b/c
ではなく package c
として宣言するだけで済みますが、c パッケージをインポートする際にはパスを持ってくる必要があります。 import "a/b/c"
など。
Go 言語パッケージの機能
パッケージ名は通常小文字であり、短くて意味のある名前を使用します。
- パッケージ名は通常、パッケージが配置されているディレクトリと同じ名前にするか、ディレクトリとは異なる名前にすることもできます (ただし、そうしないことをお勧めします)。 - などの特殊記号が含まれています。
- パッケージは通常、ドメイン名をディレクトリ名として使用するため、パッケージ名の一意性が保証されます。たとえば、GitHub プロジェクトのパッケージは通常、
GOPATH/src に配置されます。 /github.com/userName /projectName
ディレクトリ。
- main という名前のパッケージはアプリケーションのエントリ パッケージです。メイン パッケージが含まれていないソース コード ファイルをコンパイルすると、実行可能ファイルは取得されません。
- フォルダー内のすべてのソース コード ファイルは、同じパッケージにのみ属することができます。同じパッケージに属するソース コード ファイルを複数のフォルダーに配置することはできません。
Go 言語パッケージ設計のアイデア
パッケージ システム設計の目的は、言語の設計と開発を簡素化することです。大規模プログラム 各ユニットを更新する際にプログラム内の他のユニットからの相対的な独立性を維持しながら、理解しやすく更新しやすいように関連する機能のセットを独立したユニットにまとめることによるメンテナンス作業。このモジュール機能により、各パッケージを他の異なるプロジェクトで共有および再利用できるほか、プロジェクト内またはグローバルに均一に配布および再利用することができます。 各パッケージは通常、その中の各識別子にアクセスするための異なる名前空間を定義します。各名前空間は特定のパッケージに関連付けられているため、型や関数などを使用するときに他の部分と名前が競合しないように、短く簡潔な名前を選択しましょう。 ソース ファイルを変更する場合は、ソース ファイルに対応するパッケージと、そのパッケージに依存する他のすべてのパッケージを再コンパイルする必要があります。 Go 言語コンパイラは、最初から構築した場合でも、他のコンパイル済み言語よりも大幅に高速にコンパイルされます。 Go 言語のコンパイル速度が非常に速いのは、主に 3 つの言語機能によるものです。明示的な宣言
インポートされたすべてのパッケージは、コンパイラがソース ファイル全体を読み取って分析する必要がないように、各ファイルの先頭で明示的に宣言する必要があります。パッケージの依存関係を決定します。循環依存関係の禁止
パッケージの循環依存関係を禁止します。循環依存関係がないため、パッケージの依存関係は有向非循環グラフを形成します。各パッケージは個別にコンパイルできます。 、おそらく同時にコンパイルされます。ターゲット ファイル
コンパイルされたパッケージのターゲット ファイルには、パッケージ自体のエクスポート情報が記録されるだけでなく、パッケージの依存関係も記録されます。したがって、パッケージをコンパイルするとき、コンパイラーは、すべての依存ファイルを走査することなく、直接インポートされた各パッケージのオブジェクト ファイルを読み取るだけで済みます。 【関連する推奨事項:以上がgolangパッケージの特徴は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

go语言有缩进。在go语言中,缩进直接使用gofmt工具格式化即可(gofmt使用tab进行缩进);gofmt工具会以标准样式的缩进和垂直对齐方式对源代码进行格式化,甚至必要情况下注释也会重新格式化。

go语言叫go的原因:想表达这门语言的运行速度、开发速度、学习速度(develop)都像gopher一样快。gopher是一种生活在加拿大的小动物,go的吉祥物就是这个小动物,它的中文名叫做囊地鼠,它们最大的特点就是挖洞速度特别快,当然可能不止是挖洞啦。

本篇文章带大家了解一下golang 的几种常用的基本数据类型,如整型,浮点型,字符,字符串,布尔型等,并介绍了一些常用的类型转换操作。

是,TiDB采用go语言编写。TiDB是一个分布式NewSQL数据库;它支持水平弹性扩展、ACID事务、标准SQL、MySQL语法和MySQL协议,具有数据强一致的高可用特性。TiDB架构中的PD储存了集群的元信息,如key在哪个TiKV节点;PD还负责集群的负载均衡以及数据分片等。PD通过内嵌etcd来支持数据分布和容错;PD采用go语言编写。

go语言需要编译。Go语言是编译型的静态语言,是一门需要编译才能运行的编程语言,也就说Go语言程序在运行之前需要通过编译器生成二进制机器码(二进制的可执行文件),随后二进制文件才能在目标机器上运行。

在写 Go 的过程中经常对比这两种语言的特性,踩了不少坑,也发现了不少有意思的地方,下面本篇就来聊聊 Go 自带的 HttpClient 的超时机制,希望对大家有所帮助。

删除map元素的两种方法:1、使用delete()函数从map中删除指定键值对,语法“delete(map, 键名)”;2、重新创建一个新的map对象,可以清空map中的所有元素,语法“var mapname map[keytype]valuetype”。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SublimeText3 中国語版
中国語版、とても使いやすい

Dreamweaver Mac版
ビジュアル Web 開発ツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

ホットトピック



