Go (Golang) Tutorial #1 - Introduction & Setup
Skills:
API Design60%
Key Takeaways
This video tutorial introduces the Go programming language, its features, and setup, including installation, and configuration in VS Code, with a focus on building a command line program.
Full Transcript
hey there gang and welcome to your very first go tutorial [Music] all right then so first of all what is go also known as golang well according to the go website go is a fast statically typed compiled language but what does that all mean well first of all compiled means that go is compiled down into machine level code that computers understand so it doesn't need to be interpreted one line at a time and that's one of the reasons it's so fast compared to interpreted languages like python now statically typed means that our variable types are checked before and time by the compiler so type errors are picked up earlier it's also a strongly typed language meaning our variable types cannot change after they've been declared so if you were to make a variable a string it must always be a string in the future it can't change into a number or a boolean or any other data type now go is also a general purpose language meaning that it can be used for many different things from building web apps and rest apis to cloud services so there's a bit of something for every developer it's also got built-in testing support into its standard library so there's no need to add any extra dependencies to write your test which is a nice bonus and finally go is an object-oriented language but not as you might know we don't use classes or constructors in go to create objects however it does use features like custom types structs and interfaces that mirror that kind of functionality so it is an object-oriented language just not in the same way as a lot of other programming languages now before you start this course i do assume that you already know the foundations of any other programming language whether that's javascript python or something else entirely and i only assume that you know the absolute basics if you understand what variables functions arrays and loops are then you're probably in a good position to learn go if not then definitely check out my javascript for beginners tutorial first of all to learn the basics of programming in general the link to that is going to be down below the video so in this series we're going to be building a fun little command line program which can be used to create and save bills for a cafe or a restaurant or something like that so we're going to be able to interact with the command line to create a new bill and we can give that bill a name we could then add multiple items to that bill and then if we wanted to we could add a tip to the bill as well and then finally we can save the bill which is gonna generate a text file for us with that bill correctly formatted including the total at the bottom and by creating this program you're going to learn most of the building blocks of the go language like how to use slices maps structs receiver functions pointers and all that jazz all right then so first things first you need to install go on your computer pretty simple to do head to golang.org the link to this is down below then click on download go and you want to choose which version to download depending on your operating system once you've downloaded it run the installer now it should automatically add go to your path environment variable on your computer but if there's an option to add it just make sure that option is checked anyway once it's installed you want to open up a terminal to check the installation and to do that all we need to do is type go and hit enter if it gives us all of these different options back then we know that go has successfully installed if not there's been some problem with the installation and you will need to re-install it but now we have go installed we can go ahead and start using it on our computer the first thing i'm going to do is open up a folder just an empty folder in vs code this is where we're going to do all of our work all right then so there is a package that you should install first of all for go support in vs code and that package is just called go so type go right here and it's this one so click on install first of all that should install pretty quickly once it's installed go ahead over here and just create a new file and i'm going to call this test dot go so it has a dot go extension and press enter now when you do that you're probably going to see these pop-ups right here so what i'm going to do where it says gopls i'm going to install all of these right here and i'm also going to click on this one install all so make sure you do that as well to get the full support inside vs code for go files and then once that's done vs code is ready and set up to work with go files now before we quit this video i just want to show you how to access all of the course files so the right over here on my github repo called golang tutorials the link to this is going to be down below the video and every lesson has its own branch in this repo because every lesson has its own code so if you want to see the code for lesson 10 for example you'd go to the branch drop down go to lesson 10 to select that lesson and you're gonna see the main.go file right here all of the code is inside that if you want to download it you can go to this code button and then download a zip file which is going to include this file and any other files that might be included in different lessons so now all of that intro and setup is out of the way let's start writing go code now if you want to watch this whole course without youtube adverts you can do i've uploaded it to the net ninja website which you can find at netninja.dev so you can buy this course for two dollars or you can access all of my courses including premium courses not found on youtube for nine dollars a month by signing up to net ninja pro and the first month is half price when you use this promo code right here anyway i'll leave this link down below in case you want to buy it now otherwise guys don't forget to share subscribe and like and i'm going to see you in the very next tutorial
Original Description
Hey gang, in this Go tutorial series you'll learn what Go is (a statically typed programming language) & how to use it to create a simple program. Along the way you'll learn about types (string, ints, floats, maps etc) user input and how to make custom data types using structs.
🐱👤 View this course in full without ads on Net Ninja Pro:
https://netninja.dev/p/learn-go-golang
🐱💻 Course Files:
+ https://github.com/iamshaunjp/golang-tutorials
🐱👤 JOIN THE YOUTUBE NET NINJA GANG -
https://www.youtube.com/channel/UCW5YeuERMmlnqo4oq8vwUpg/join
🐱💻 🐱💻 My Udemy Courses:
+ Modern JavaScript - https://www.thenetninja.co.uk/udemy/modern-javascript
+ Vue JS 3 & Firebase - https://www.thenetninja.co.uk/udemy/vue-and-firebase
+ D3.js & Firebase - https://www.thenetninja.co.uk/udemy/d3-and-firebase
🐱💻 Useful playlists:
+ Modern JavaScript - https://www.youtube.com/watch?v=iWOYAxlnaww&list=PL4cUxeGkcC9haFPT7J25Q9GRB_ZkFrQAc
🐱💻 Download Go - https://golang.org/dl/
🐱💻 Go Numeric Types (bits) - https://golang.org/ref/spec#Numeric_types
🐱💻 Go Standard Library (bits) - https://golang.org/pkg/
🐱💻 VS Code - https://code.visualstudio.com/
🐱💻 Social Links:
Facebook - https://www.facebook.com/thenetninjauk
Twitter - https://twitter.com/thenetninjauk
Instagram - https://www.instagram.com/thenetninja/
Playlist
Uploads from Net Ninja · Net Ninja · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Regular Expressions (RegEx) Tutorial #14 - Matching a Username
Net Ninja
Regular Expressions (RegEx) Tutorial #15 - Email RegEx Pattern
Net Ninja
Regular Expressions (RegEx) Tutorial #16 - Finishing Touches
Net Ninja
GraphQL Tutorial #1 - Introduction to GraphQL
Net Ninja
GraphQL Tutorial #2 - A Birdseye View of GraphQL
Net Ninja
GraphQL Tutorial #3 - Project (stack) Overview
Net Ninja
GraphQL Tutorial #4 - Making Queries (front-end preview)
Net Ninja
GraphQL Tutorial #5 - Express App Setup
Net Ninja
GraphQL Tutorial #6 - Setting up GraphQL
Net Ninja
GraphQL Tutorial #7 - GraphQL Schema
Net Ninja
GraphQL Tutorial #8 - Root Query
Net Ninja
GraphQL Tutorial #9 - The Resolve Function
Net Ninja
GraphQL Tutorial #10 - Testing Queries in Graphiql
Net Ninja
GraphQL Tutorial #11 - GraphQL ID Type
Net Ninja
GraphQL Tutorial #12 - Author Type
Net Ninja
GraphQL Tutorial #13 - Type Relations
Net Ninja
GraphQL Tutorial #14 - GraphQL Lists
Net Ninja
GraphQL Tutorial #15 - More on Root Queries
Net Ninja
GraphQL Tutorial #16 - Connecting to mLab
Net Ninja
GraphQL Tutorial #17 - Mongoose Models
Net Ninja
GraphQL Tutorial #18 - Mutations
Net Ninja
GraphQL Tutorial #19 - More on Mutations
Net Ninja
GraphQL Tutorial #20 - Updating the Resolve Functions
Net Ninja
GraphQL Tutorial #21 - GraphQL NonNull
Net Ninja
GraphQL Tutorial #22 - Adding a Front-end
Net Ninja
GraphQL Tutorial #23 - Create React App
Net Ninja
GraphQL Tutorial #24 - Book List Component
Net Ninja
GraphQL Tutorial #25 - Apollo Client Setup
Net Ninja
GraphQL Tutorial #26 - Making Queries from React
Net Ninja
GraphQL Tutorial #27 - Rendering Data in a Component
Net Ninja
GraphQL Tutorial #28 - Add Book Component
Net Ninja
GraphQL Tutorial #29 - External Query File
Net Ninja
GraphQL Tutorial #30 - Updating Component State
Net Ninja
GraphQL Tutorial #31 - Composing Queries
Net Ninja
GraphQL Tutorial #32 - query variables
Net Ninja
GraphQL Tutorial #33 - Re-fetching Queries
Net Ninja
GraphQL Tutorial #34 - Book Details Component
Net Ninja
GraphQL Tutorial #36 - Styling the App
Net Ninja
GraphQL Tutorial #35 - Making a Single Query
Net Ninja
Build Apps with Vue & Firebase - Udemy Course
Net Ninja
Updated Vue & Firebase Course (Udemy)
Net Ninja
Vue & Firebase Real-time Chat (Preview) #1 - Intro
Net Ninja
Vue & Firebase Real-time Chat (Preview) #2 - Project Structure
Net Ninja
Vue & Firebase Real-time Chat (Preview) #3 - Firestore Setup
Net Ninja
Vue & Firebase Real-time Chat (Preview) #4 - Welcome Screen
Net Ninja
Vue & Firebase Real-time Chat (Preview) #5 - Props in Routes
Net Ninja
Vue & Firebase Real-time Chat (Preview) #6 - Route Guards
Net Ninja
Vue & Firebase Real-time Chat (Preview) #7 - Chat Window
Net Ninja
Vue & Firebase Real-time Chat (Preview) #8 - New Message Component
Net Ninja
Object Oriented JavaScript Tutorial #1 - Introduction
Net Ninja
Object Oriented JavaScript Tutorial #2 - Object Literals
Net Ninja
Object Oriented JavaScript Tutorial #3 - Updating Properties
Net Ninja
Object Oriented JavaScript Tutorial #4 - Classes
Net Ninja
Object Oriented JavaScript Tutorial #5 - Class Constructors
Net Ninja
Object Oriented JavaScript Tutorial #6 - Class Methods
Net Ninja
Object Oriented JavaScript Tutorial #7 - Method Chaining
Net Ninja
Object Oriented JavaScript Tutorial #8 - Class Inheritance
Net Ninja
Object Oriented JavaScript Tutorial #9 - Constructors (under the hood)
Net Ninja
Object Oriented JavaScript Tutorial #10 - Prototype
Net Ninja
Object Oriented JavaScript Tutorial #11 - Prototype Inheritance
Net Ninja
More on: API Design
View skill →Related Reads
📰
📰
📰
📰
Compile HTTP Error Indexes From Exception Classes; Humans Own Recovery Copy
Dev.to · Avery Lin
JavaScript Map: Store and Find Values Using Keys
Medium · JavaScript
Auth Middleware Should Not Guard Payment Webhooks
Dev.to · Gumbo Sveins
Common Server Action and API Route Errors in Next.js (and How to Fix Them)
Medium · Programming
🎓
Tutor Explanation
DeepCamp AI