This video course introduces you to a range of programming projects with the Go language, demonstrating how to put the language to use for a variety of real-world applications and services. These projects range from command-line tools to distributed messaging services, web services, and web applications with Go running on the server side.
We first discuss then model the projects based on popular usages (for example how Docker and Soundcloud use the language). The driving force here is what Go is powerful for— creating fast, real-time applications and services that leverage the use of concurrency.
We’ll demonstrate how versatile the language can be and how it can be put to use in a range of real-world programming domains, whether that’s for DevOps tools, cloud-based services, or RESTful web services. Interwoven with the projects, there are demonstrations of best practices and design patterns, and techniques you can carry over to your own projects.
The projects also demonstrate the key features of Go in action, such as concurrency, and will start to explore the rich ecosystem of open source libraries and frameworks that are being continually developed for the language.
By the end of this course, you will have everything you need to go out into the wild with Go to build projects of your own.
About The Author
Ben Tranter is a developer with nearly six years’ experience. He has worked with a variety of companies to build applications in Go, in the areas of data mining, web back ends, user authentication services, and developer tools, and is a contributor to a variety of open source Go projects.
Write a very simple Go application, and not something too complex, to get introduced to the language and tooling. A static file server is an 11-line Go program that actually does something
To accept command-line arguments in our program.
Compile the code to a binary.
Get started to handle HTTP requests, and extract data from them. Also you will be able to route HTTP requests.
Learn how to get connected to a database, read to it, and write from it.
Get started with writing tests in Go.
See the techniques that apply to write HTTP middleware.
To show how to capture analytics.
To learn how to handle errors in Go.
The user must be able to pass data between middleware.
You will need to know how to handle username/password combinations, specifically how to hash and salt passwords
Get to know how to send a password reset e-mail.
To create a session and a corresponding session.
Implement passwordless, sessionless authentication.
The three things that you can do to make your web applications more secure.
Introduction to advanced concurrency concepts by writing a simple chat server.
To write a web-socket-based chat server.
Learn to use web sockets to implement real-time notifications.
Packt has been committed to developer learning since 2004. A lot has changed in software since then - but Packt has remained responsive to these changes, continuing to look forward at the trends and tools defining the way we work and live. And how to put them to work.
With an extensive library of content - more than 4000 books and video courses -Packt's mission is to help developers stay relevant in a rapidly changing world. From new web frameworks and programming languages, to cutting edge data analytics, and DevOps, Packt takes software professionals in every field to what's important to them now.
From skills that will help you to develop and future proof your career to immediate solutions to every day tech challenges, Packt is a go-to resource to make you a better, smarter developer.
Packt Udemy courses continue this tradition, bringing you comprehensive yet concise video courses straight from the experts.