Skip to content

An educational Go programming project with 22 comprehensive examples. This repository provides a practical guide to learning Go, covering topics like functions, loops, error handling, goroutines, channels, HTTP servers, and more. Dive in and explore each section to master Go step by step

Notifications You must be signed in to change notification settings

javadkavossi/GoLang_learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoLang Learning Project

This repository contains an educational project to learn the Go programming language. It is designed to help you learn various Go concepts practically, with hands-on examples. The project is divided into 22 sections, each focusing on different topics and use cases in Go.

Content

In this project, you will find the following topics:

  1. 01_function - Introduction to defining and using functions in Go.
  2. 02_if&else&switch_Case - Using conditional statements like if, else, and switch case.
  3. 03_forLoop - Using for loops to perform repeated operations.
  4. 04_String - Working with strings in Go.
  5. 05_Array&slices - Using arrays and slices.
  6. 06_maps - Introduction to maps and how to use them for storing data.
  7. 07_functions - Advanced function usage and passing parameters.
  8. 08_parameters - Handling function input and output parameters.
  9. 09_errors - Managing and handling errors.
  10. 10_defer - Using the defer statement for cleanup operations.
  11. 11_structs - Defining and using structs to model data.
  12. 12_methods - Defining methods for data types.
  13. 13_new_struct_with_func - Creating new struct instances using functions.
  14. 14_panic_recover - Managing critical situations with panic and recovering with recover.
  15. 15_goroutines - Introduction to goroutines for concurrent execution.
  16. 16_channels - Communicating and coordinating between goroutines using channels.
  17. 17_select - Using select to handle multiple channels simultaneously.
  18. 18_import - Managing imports and packages.
  19. 19_testing - Writing tests for Go code.
  20. 20_JSON - Working with JSON data.
  21. 21_HTTP - Using HTTP protocol to make requests.
  22. 22_HTTP_server - Implementing a simple HTTP server.
  23. **23_new_Project

How to Use

This project is designed so that you can run each section independently to learn different concepts. Files are organized in a way that progresses from simpler to more advanced concepts.

Setup

To run this project, you need to have Go installed. Follow the steps below to install Go and run the project:

  1. Install Go.
  2. Clone the project:
    git clone https://github.com/javadkavossi/GoLang_learning.git
    

cd GoLang_learning

go run main.go

//go run folderName/main.go

Javad Kavossi - Developer and creator of this educational project.

About

An educational Go programming project with 22 comprehensive examples. This repository provides a practical guide to learning Go, covering topics like functions, loops, error handling, goroutines, channels, HTTP servers, and more. Dive in and explore each section to master Go step by step

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published