Course Description:Learn the basics of Go programming, including syntax, data types, functions, and control structures.
Ideal for those new to coding or transitioning from other languages.
Topics Covered:
Basics of Go syntax and programming concepts
Data types, variables, and basic operations
Control flow: loops and conditionals
Functions, methods, and error handling
Introduction to Go's concurrency model with goroutines and channels
Syllabus
Module 1: Go Fundamentals
Introduction to Go & installation (Go install, Go Playground)
Go program structure (package main, func main())
Variables, constants, data types
Operators, expressions, type conversion
Control structures: if, for, switch
LAB 1
Install Go and run Hello World in terminal & Go Playground
Write programs for factorial, Fibonacci, prime check
Create a calculator using switch
Module 2: Functions, Arrays, Slices & Maps
Functions (return values, multiple returns)
Pointers in Go
Arrays & Slices
Maps (key-value storage)
Structs & Methods
LAB 2
Implement a To-Do List app using slices
Build a dictionary app using maps
Create a student struct with methods (add, display)
Module 3: Concurrency & Error Handling
Go routines & concurrency model
Channels (unbuffered, buffered)
Select statement
Error handling (error type, custom errors)
Packages & modularity
LAB 3
Write a multi-threaded counter using goroutines
Implement message passing using channels
Build a file reader with error handling
Module 4: Advanced Go & Projects
Interfaces & Polymorphism
File I/O (read/write JSON, CSV)
Web development with Go (net/http package)
Using external modules (Go modules, dependency management)
Capstone Project (end-to-end)
LAB 4
Parse a JSON file into Go structs
Build a REST API using net/http
Connect Go app with SQLite/PostgreSQL
Capstone: Create a mini-project (Blog API, Chat App, Expense Tracker, or URL Shortener)
Learning Outcome
Grasp core Go programming syntax and data handling.
Develop applications using functions, slices, maps, and structs.
Implement concurrency using goroutines and channels.
Build APIs and real-world projects using Go modules and web frameworks.
More Courses
SQL Programming Beginner
Introduces database concepts, table creation, and basic SQL queries. Learners gain foundational skills in managing and retrieving structured data.
C/C++ Programming Beginner
Learn the foundations of C and C++ programming, including syntax, data types, and control structures. Build simple programs and strengthen problem-solving skills.
Rust Programming Beginner
Introduces Rust syntax, ownership model, and memory safety concepts. Learners develop a foundation in writing fast and secure Rust code.