Go (Golang) Programming Language for Beginner
- Introduction
-
Introduction to Go Programming language
Go is widely used in Cloud and DevOps space, CLIs and Web Development. After completing this series, you will learn everything that is needed to get started with Go.
-
Install Go and Required VS Code Extension
In this session we will install Go compiler and required VS Code extension to speed up the development. We will also write our first Go Program that displays “Hello World” to console.
-
Program to Reverse a String in GO
In this session we will write a program that will reverse the string and display the original and reversed string to the terminal.
-
- Basics
-
Variable and Datatype
In this session we will undertand Datatypes and variables in Go programming language
-
Arithmetic Operations
In this session we will see how to perform Arithmetic Operations in GO
-
What are Array and Slices
In this session we will understand Array and Slices in GO.
-
Deep dive into Slice
In this session we will understand slices in more detail. Slices are very powerful and most of the time slices are used much frequently over arrays.
-
Data Structure - Maps
In this session we will understand Map in Go. Maps are unordered data structure that stores data in key:value pair.
-
Data Structure - Struct
In this session we will understand Struct in Go. Struct is used to create a collection of fields of same or different datatype into a single variable.
-
Data Structure - Pointers
In this session we will understand Pointers in Go. Pointers are used to access memory address of a value.
-
- Control Flow
-
Control Flow - If ... Else Statements
Conditional statements are used to determine the flow of code execution based on certain condition. We will see
- If Statements
- If Else Statements
- Short If Statements
-
Control Flow - Switch Statements
Conditional statements are used to determine the flow of code execution. In this session we will understand Switch Statements in Go
-
Control Flow - For Loop
Go provides only one loop - for loop. Loop is used to repeat some operation again and again. Loop and Conditional statements are building block to write complex business logic.
-
Control Flow - Range
Range keyword is used to iterate through elements of array, slice, map, string or channel. In this session we will understand how to use Range keyword in Go.
-
- Functions
-
Functions, Variadic Function, Anonymous Function
In this session we will understand Functions in Go. We will learn
- Basic Function
- Function with Multiple Return values
- Function with parameters passed as reference
- Variadic Function
- Anonymous Function
-
Anonymous Functions
In this session we will understand more about Anonymous Functions in Go. We will understand how Anonymous Functions are so handy and easy working with Go Routines.
-
Struct Functions
Struct Functions are very powerful concept. Using Struct functions we can describe the behaviour of the Struct. In this session we will understand how we can attach a function to a struct in Go.
-
- Advanced Concepts
-
Modules and Packages
A Go application may consists of multiple local or external packages. Using Go Modules we can keep track of dependencies in our application.
Packages are used to group related features of the application together so that our application structure could be more modular and maintainable.
-
Variable Scope
A variable scope is defined as the piece of code where the variable can be accessed. Variable scope can also be thought of as the lifetime of the variable. As per the design principle we should create variables as much local as possible.
In this session we will learn about …
-
Deep Dive into Packages
Packages are used to group related features of the application together so that our application structure could be more modular and maintainable.
In this session
- We will see how to separate business logic in multiple files.
- We will also see about variables with package level scope.
-
Interfaces
Interface defines a collection of functions with function signature without the function body.
Unlike other object oriented programming language, there is no explicit implements keyword in Go. Go provides implicit implementation of interfaces.
-
Implement Multiple Interfaces
In this session we will understand how we can implement multiple interfaces in Go. Interface defines a collection of functions with function signature without the function body. Unlike other object oriented programming language, there is no explicit implements keyword in Go.
-
Interface Type
The interface{} type or empty interface is an interface having no methods. Since Go provides implicit implementation of interfaces, every type implicitly implements the empty interface.
In this session we will understand about interface{} type in Go.
-
Type Assertions
In this session we will understand about Type Assertions and Type Switch in Go.
In Go we can get the underlying concrete data type of an interface using Type Assertions. In Go we can also test whether the Assertion is successful. Go returns a boolean to represent the Assertion.
-
Concurrency with Goroutines
In Go Concurrency is achieved using Goroutines. Goroutines can be considered as super lightweight thread that run independently.
In Go every program begins execution from the main function and the main function itself is a goroutine.
-
- Project
-
CLI application for billing and invoice generation
Get started to code real world Golang project by building simple CLI application
To strengthen our Golang learning, we are going to write a simple CLI application for billing and invoice generation. The application will ask the user to provide the product name, unit price and quantity to be purchased. …
-
Encapsulate business logic
Get started to code real world Golang project by building simple CLI application
In this session we are going to refactor our Billing and Invoice Generation CLI application.
We will use struct to store product information and will encapsulate the add product information in struct method.
-
Add Multiple Products per Invoice
Let's add functionality to generate invoice with multiple products per invoice.
Add Product logic runs in infinite loop until user presses ‘q’ to exit, which then generates and displays the invoice.
-
Save Invoice in File
In this session we will create Invoice and save the invoice in the file system.
Once we save the invoice in the file system, we can share the invoice with the customer, can email the invoice to the customer or can print the invoice.
-
This course is designed with comprehensive learning resources for the students to learn Go from basic to intermediate level of understanding.
This course is ideal for Beginners and Experienced GO developers. Even if you don't know Go, with this course you can start your next project on Go with ease.
Prerequisite
Basic understanding of programming concepts.
Course Outline
|
|
Neeraj Avinash
- 4.4 Tutor Rating
- 6 Courses
- 6 Students
Full stack Software professional with 18+ years of experience. Having wide exposure to web development for various industries including hospital, domain and hosting, e-learning. Expertise on various technologies PHP, Python, Golang, MySql and PostgreSql, React JS and React Native
Course Overview
- Level - Beginner
- Topics - 6 Lectures - 29
- 2 Already Enrolled
- Be the First One to Review
- English
- Lifetime Access
-
3,000.00 3,100.00