Go/Quick Start: Difference between revisions
< Go
Jump to navigation
Jump to search
| (5 intermediate revisions by the same user not shown) | |||
| Line 42: | Line 42: | ||
= naming convention table = | = naming convention table = | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 49: | Line 47: | ||
! Visibility | ! Visibility | ||
! Casing Rule | ! Casing Rule | ||
|- | |||
| File | |||
| | |||
| snake_case | |||
|- | |- | ||
| Package | | Package | ||
| | | | ||
| Lowercase | | Lowercase | ||
|- | |- | ||
| Module | | Module | ||
| | | | ||
| kebab-case | | kebab-case | ||
|- | |- | ||
| Struct / Type | | Struct / Type | ||
| Exported (Public) | | Exported (Public) | ||
| PascalCase | | PascalCase | ||
|- | |- | ||
| Struct Field | | Struct Field | ||
| Exported (Public) | | Exported (Public) | ||
| PascalCase | | PascalCase | ||
|- | |- | ||
| Struct Field | | Struct Field | ||
| Unexported (Private) | | Unexported (Private) | ||
| camelCase | | camelCase | ||
|- | |- | ||
| Function | | Function | ||
| Exported (Public) | | Exported (Public) | ||
| PascalCase | | PascalCase | ||
|- | |- | ||
| Function | | Function | ||
| Unexported (Private) | | Unexported (Private) | ||
| camelCase | | camelCase | ||
|- | |- | ||
| Variable | | Variable | ||
| Exported (Public) | | Exported (Public) | ||
| PascalCase | | PascalCase | ||
|- | |- | ||
| Variable | | Variable | ||
| Unexported (Private) | | Unexported (Private) | ||
| camelCase | | camelCase | ||
|- | |- | ||
| Constant | | Constant | ||
| Exported (Public) | | Exported (Public) | ||
| ALL_CAPS | | ALL_CAPS | ||
|- | |- | ||
| Interface | | Interface | ||
| Exported (Public) | | Exported (Public) | ||
| PascalCase | | PascalCase | ||
|- | |- | ||
| Method | | Method | ||
| Exported/Unexported | | Exported/Unexported | ||
| Follow Function Rules | | Follow Function Rules | ||
|} | |} | ||
Latest revision as of 09:40, 27 July 2026
Create a module
Create module and source file.
go mod init sandbox/hello
touch hello.go
Add source code.
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
Run.
go run .
Work with 2 modules
mkdir main greetings sucks
cd greetings
go mod init sandbox/greetings
cd ../sucks
go mod init sandbox/sucks
cd ../main
go mod init
go mod edit -replace sandbox/greetings=../greetings
go mod edit -replace sandbox/sucks=../sucks
go mod tidy
naming convention table
| Element | Visibility | Casing Rule |
|---|---|---|
| File | snake_case | |
| Package | Lowercase | |
| Module | kebab-case | |
| Struct / Type | Exported (Public) | PascalCase |
| Struct Field | Exported (Public) | PascalCase |
| Struct Field | Unexported (Private) | camelCase |
| Function | Exported (Public) | PascalCase |
| Function | Unexported (Private) | camelCase |
| Variable | Exported (Public) | PascalCase |
| Variable | Unexported (Private) | camelCase |
| Constant | Exported (Public) | ALL_CAPS |
| Interface | Exported (Public) | PascalCase |
| Method | Exported/Unexported | Follow Function Rules |