go-organization/README.md

31 lines
2.0 KiB
Markdown

# go-organization
Understand project structure of GO. Go Modules, GOPATH, efficent development environment... This repo contains lots of trash folder/file! Just trying to understand structure with trying lots of unnecessary things too
### Base Resources
| Resource | Explanation | Situation |
| -------- | ----------- | -------------- |
| https://www.digitalocean.com/community/tutorials/how-to-use-go-modules | 👉 Modules - How to use them | [module-str](simple-structrue/module-str/mymodule/) ✔️ |
| https://www.digitalocean.com/community/tutorials/how-to-write-packages-in-go | 👉 Packages - How to use them | [package-str](simple-structure/package-str/) ✔️ |
| https://github.com/golang-standards/project-layout | ⭐ Unoffical but ready-to-use go project structure | ✅ |
| https://github.com/golang/go/wiki/Modules | ⭐ Up-to-date Explanation/Example of go Modules | 📚 |
| https://go.dev/blog/using-go-modules | Working with modules, versions and dependencies | ✔️ |
| https://go.dev/doc/code | General overview for writing code in go | ✔️ |
| https://tutorialedge.net/golang/go-project-structure-best-practices/ | a blog about go structure | ✔️ |
| https://go.dev/ref/mod | Modules Reference | 📚 |
<details>
<summary>emoji</summary>
⭐ Very useful, use actively<br>
📚 Up to date and very detailed explanations<br>
✔️ Done, has been read<br>
✅ Use actively, ready-to-use <br>
👉 Start from here, step-by-step explanation
</details>
### FAQ
<details>
<summary><h4>Is there any venv equal for Go language or any virtual environment tool?</h4></summary>
<br><ul><li> No, previously GOPATH was used but now Go Modules are using instead of that. Thanks to Go Modules, go.mod file handles all versions/modules/packages and there is no need for a virtual environment. But if you have to use a virtual environment because of another reason just have a look at <a href="https://github.com/GetStream/vg">this</a> repo
</li></ul>
</details>