Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Learn Go Programming From Scratch && Crack Golang Interviews
Rating: 3.5 out of 5(18 ratings)
1,684 students

Learn Go Programming From Scratch && Crack Golang Interviews

Learn Basics And Fundamentals of Go Programming Language From Scratch and Crack Golang Programming Interviews
Last updated 10/2023
English
English [Auto],

What you'll learn

  • The candidates will learn basics and advanced go programming language
  • The candidate will learn basics of programming language which will boost their capability to learn and understand other programming languages
  • The candidate will learn to crack go programming language interviews

Course content

3 sections86 lectures15h 4m total length
  • Introduction0:32
  • Variables15:00

    Learn how Go handles data types and variables, declaring with var or colon equals, initializing multiple variables on one line, and printing results using the format package.

  • Datatypes7:55

    Learn Go's signed and unsigned integers across four sizes—8, 16, 32, and 64 bits—with int8, int16, int32, int64 and uint8, uint16, uint32, uint64, and see their ranges and sample prints.

  • Variable - Part 214:24

    learn how to name and declare Go variables, including valid patterns, type inference with :=, and zero values; explore scope across functions and printing of ints and strings.

  • Constants4:05

    Explore constants in Go, immutable values declared with the const keyword, illustrated by constant strings and integers like x and y, and the compile-time error when attempting reassignment.

  • Arithmetic Operators10:27

    Learn how arithmetic operators in Go combine numbers and strings into expressions, including addition, subtraction, multiplication, division, and remainder, with integer division yielding zero fractions.

  • Bitwise Operators2:44

    Explore bitwise operators and how they perform per-bit calculations on integers, demonstrated with x=75 and y=25 using and, or, and xor to yield 9, 91, and 82.

  • Comparison Operators16:43

    Learn Go comparison operators such as equals, not equal to, less than, greater than, and equal-to forms, with boolean results, logical operators like &&, ||, and !, and assignment operators.

  • Functions9:42

    Define and call functions in Go, pass integer parameters, return values, and export functions to other packages, using function signatures and the func keyword.

  • Deferred Functions5:11

    Master Go's defer statements that run after a function completes in the last in first out order, with deferred calls, work even when a panic occurs, and aid resource management.

  • Variadic Functions18:28

    Explore variadic functions in Go, learning how an ellipsis enables a function to accept any number of arguments. See examples with strings, interfaces, and type printing using reflect.

  • Panic9:45

    Explore how Go's panic interrupts normal execution, stack-unwinds with deferred calls, and can be triggered by runtime errors or explicit panics, with diagnostic log messages for debugging.

  • Recovery22:37

    Learn how panic and recover work in Go, using defer to recover from runtime errors and nil checks, and understand recovery only within the same goroutine.

  • Array17:49

    Learn how Go arrays are fixed-size collections of a type, with length as part of the type and zero-value elements. See value-copy behavior when assigning or passing arrays to functions.

  • Array - Part 25:46

    Explore Go array handling by using the len function, for loops, and range to print the index and value, including ignoring the index with an underscore.

  • Multidimensional Array10:25

    Learn how to work with two dimensional arrays in Go by building a 3x2 matrix, initializing values, and printing the elements row by row using nested for loops.

  • Slices22:02

    Explore Go slices as flexible references to an underlying array, learn slice creation with start to end, understand length and capacity, and see how edits propagate to all slices.

  • Slices - Part 219:09

    Explore slices in Go by creating with make, inspecting length and capacity, appending elements (including from nil slices), using the ellipsis to append slices, and building multi-dimensional slices.

  • Maps14:22

    Explore maps in Go, a built-in type linking keys to values created with make. Learn to add, access, and print contents, and handle missing keys returning zero values.

  • Maps - Part 215:23

    Learn how to check key presence in a map, handle values with if-else, iterate with for range, delete keys, and understand maps as reference types in Go.

  • Strings23:29

    Explain strings in Go as slices of bytes, show creation with quotes, access bytes and ASCII hex values, and demonstrate range-based iteration, rune handling, and string immutability with byte-slice mutations.

  • Pointers21:15

    Learn how pointers store memory addresses, how to dereference and modify values via pointers, and how to pass pointers to functions and work with arrays and slices in Go.

  • Structures21:45

    Learn how Go structures group fields into a single unit, with named and anonymous forms, using basket, fruits, and vegetables to illustrate field access, initialization, and pointers.

  • Structures - Part 212:29

    Explore anonymous fields in Go structures, including how fields with only a type become named by their type, and how to access and promote them in nested structs.

  • Structures - Part 39:59

    Explore how exported structs and fields become accessible across packages, and see how unexported fields remain private, in a sample Go project using a computer package and exported fields.

  • Structures - Part 410:51

    Learn that Go structures are value types and are equal when all fields are comparable, including strings. See that maps inside a struct break comparability and cause a compiler error.

  • Methods8:31

    Learn how Go attaches behavior to types using methods with receivers on types, illustrated by a method on X that prints A and B, and why they differ from functions.

  • Methods - Part 215:54

    Explore Go methods with value and pointer receivers, show how changes propagate differently, compare copying costs, and demonstrate methods on anonymous fields and access behavior.

  • Methods - Part 315:04

    Clarify value receivers in methods versus value arguments in functions in Go, cover pointer receivers, passing by value or pointer, and how methods and functions can share names.

  • Interfaces32:08

    Explore Go interfaces, where a type implements an interface by its methods with implicit declarations, and use slices of interfaces to write extensible code.

  • Interfaces - Part 28:09
  • Interfaces - Part 324:50

    Explore the empty interface in Go, which any type implements, and use type assertion and type switches to extract underlying values and dispatch by concrete types.

  • Interfaces - Part 414:52

    Implement interfaces in go by using pointer and value receivers, define and invoke interface methods on structs, and explore interface assignments and method calls that print internal fields.

  • Interfaces - Part 516:43

    Explore implementing multiple interfaces in Go, embedding interfaces to create a composite interface, and handle zero value and nil scenarios along with panics when interfaces lack values.

  • Go Routines12:59

    Explore concurrency and parallelism in Go, and discover how go routines provide lightweight concurrency and how channels enable safe inter-routine communication through practical browser scenarios.

  • Channels15:55

    Learn how Go channels enable inter-goroutine communication through typed channels, with make, nil values, and blocking send and receive to synchronize execution.

  • Channels - Part 217:17

    Explore go channels, avoid deadlock and runtime panic by ensuring senders and receivers synchronize; learn unidirectional channels, bidirectional conversions, and closing channels to signal completion.

  • Buffered Channels13:01

    Discover how buffered channels in Go enable a capacity buffer, blocking on full or empty, with an example using a capacity of two and concurrent sends, reads, and channel closing.

  • Buffered Channels - Part 216:52

    Learn how buffered channels in Go can deadlock when writes exceed capacity without readers, and how a WaitGroup coordinates multiple goroutines with Add, Done, and Wait.

  • Select - Part 114:57

    Explore how Go's select statement chooses among multiple channel operations, waiting for the first ready send or receive and optionally using a default case to avoid blocking.

  • Select - Part 26:29

    Explore how the select statement reads from channels, how a default case prevents deadlock, and how an empty select can still block or panic in Go.

  • Struct and Classes15:17

    Explore how Go replaces classes with structs and methods, bundling data with behavior. Use a custom package and Go workspace to illustrate struct-based design.

  • Struct and Classes - Part 210:06

    Go lacks constructors; zero value structs can be unusable, so create a constructor-like new function to return a fully initialized object with required parameters.

  • Composition16:27

    Explore composition in Go by embedding structs with anonymous fields, accessing embedded fields and methods, and printing outcomes through practical struct examples.

  • Defer16:46

    Explore Go's defer statement and how it defers function calls until just before return. See how deferred arguments are evaluated at deferral and how a lifo defer stack controls execution.

  • Errors and Error Handling24:08

    Go treats errors as values, with nil for success and non-nil for failure, and functions like open return a result and an error to be checked and handled.

  • Custom Errors20:31

    Learn to create custom errors in Go using new and errors packages, implement custom error types to carry data like the radius, and handle negative input when calculating circle area.

  • Panic and Recover21:37

    Explore panic and recover in Go: learn how panics terminate a program, how recover inside deferred functions regains control, and how defers execute before unwinding the stack.

  • Panic and Recover - Part 25:58

    Explore panics from out-of-bounds access in Go. Learn to recover from panics with the recover function, inspect control flow, and view stack traces printed by the debug package.

  • First Class Functions23:01

    Go supports first-class functions, enabling anonymous functions, passing functions as arguments, defining function types, and higher-order functions; closures bind to surrounding variables.

Requirements

  • Anybody with absolutely zero programming knowledge can take this course.

Description

Welcome to the course:

"Learn Go Programming From Scratch && Crack Golang Interviews"

This course is from a software engineer who has managed to crack interviews in around 16 software companies.

Sometimes, life gives us no time to prepare, There are emergency times where in we have to buck up our guts and start  bringing the situations under our control rather then being in the control of the situation.  At the end of the day, All leave this earth empty handed. But given a situation, we should live up or fight up in such a way that the whole action sequence should make us proud and be giving us goosebumps when we think about it right after 10 years.

This course is designed for beginners who want to learn go programming language.

This course is designed for Intermediate and Experienced Developers who want to kick start learning go programming language.

Be it freshers, Intermediate or Experienced Developers, anybody who is preparing for go language programming interviews can take this course.

This course is a complete hands on, where in each and every go language concept is explored with coding examples. We have a lot of programs which adds up to the course explaining the concepts.   

The way this course is dealt is, we type each and every program literally like a fresher and solve any issue arising out of that program like an expert.

Right from simple to complex issues, each and every part of the issue is explained well in detail.

You can download the programs once you are part of the course. The course lives up to the expectations of the candidates who take up this course.

This course will be constantly updated with programs and further sessions.

As per Udemy policy you can have a refund if you feel, this course is not for you.

Well, Hop in and Let's start


Who this course is for:

  • Beginners who want to learn programming can take this course
  • Beginners who want to learn go language programming can take this course
  • Intermediate and Experienced Developers who want to kick start learning go programming language can take this course
  • Freshers, Intermediate and Experienced Developers who are preparing for Interviews can take this course