Skip to main content
CourseFlix

Let's Go! Learn to Build Professional Web Applications With Golang [Professional Package]

0h 0m 0s
English
Paid

Go is a great language for building web applications. But teaching yourself from blog posts and the standard-library documentation can often leave you with more questions than answers.

You might be wondering:

  • Where can I see a concrete example of a real-world web application?
  • How is it best to structure and organize my code?
  • How do I make sure I’m not making any mistakes when it comes to security?
  • How do I use modules to manage and version control dependencies?
  • And how do I effectively test my web application?

Let’s Go answers these questions for you — and a whole lot more.

The book guides you through the start-to-finish build of a real-world application, so you'll gain all the knowledge, understanding and confidence you need to create production-ready applications with Go.

What You’ll Learn…

  1. All the fundamentals — How to start a server, create handlers, send responses, route requests and serve static files.
  2. Structure and organization — How to create an idiomatic and scalable structure for your web application.
  3. Using Modules — How to use Go's new Module functionality to manage and version control your dependencies.
  4. Managing configuration — How to use command-line flags and dependency injection to manage your application settings.
  5. Logging and Error Handling — How to implement leveled logging and centralized error handling.
  6. SQL databases — How to design a database model, set up a connection pool, and execute statements and queries.
  7. HTML templating — How to cache your templates, display dynamic data, create custom functions and handle runtime errors.
  8. Middleware — How to create your own middleware to perform common actions (like logging requests and recovering panics).
  9. RESTful routing — How to create a modern request routing structure that follows the principles of REST.
  10. Form validation — How to implement reusable and user-friendly pattern for validating forms and displaying errors.
  11. Session management — How to use and configure sessions to persist data between requests.
  12. Using HTTPS — How to correctly setup a HTTPS server and configure it for improved performance and security.
  13. Prevent common vulnerabilities — How to prevent SQL injection, CSRF, XSS, clickjacking and slow-client attacks.
  14. Authentication and authorization — How to safely encrypt user passwords and add signup, login and logout functionality.
  15. Request context — How to use Go's context.Context to pass data between your middleware and handlers.
  16. Testing — How to create unit tests, integration tests and end-to-end tests, mock dependencies and measure test coverage.
  17. And most importantly… How to put it together in a fully-functioning application!

Additional

Go 1.24 language updates

Section 13 ("Testing") has been updated to use the new slog.Discard handler, instead of a slog.TextHandler that writes to io.Discard.

Dependency updates

Other changes

Various broken link and typo fixes, and minor copy tweaks to improve clarity.

About the Author: Alex Edwards

Alex Edwards thumbnail

About Alex Edwards

Hi, I'm Alex Edwards. I am a software developer and author who works with the Go programming language.

I live in the mountains near Innsbruck, Austria. I once worked for the British Government as the project manager for police.uk and data.police.uk.

I have also built a few small businesses and still enjoy working on them. I use Go, Ruby, Git, and Linux in my daily work. I write often about building web applications.

You can view my open‑source projects on GitHub.

Books

Read Book Let's Go! Learn to Build Professional Web Applications With Golang [Professional Package]

#TitleTypeOpen
1lets-go-professional-package-v2.24.0

Related courses

  • Mastering Multithreading Programming with Go (Golang) thumbnail

    Mastering Multithreading Programming with Go (Golang)

    Sources: udemy
    Learn about Multithreading, Concurrency & Parallel programming with practical and fun examples in Google's Go Lang. The mood in the meeting on the 12th floor of an international…
    5 hours 24 minutes 43 seconds
  • Let's Build a Go version of Laravel thumbnail

    Let's Build a Go version of Laravel

    Sources: udemy
    Laravel is one of the most popular web web application frameworks in the PHP world, and with good reason. It's easy to use, well designed, and lets developers w
    19 hours 22 minutes 16 seconds
  • For the Love of Go: Book/Video Bundle thumbnail

    For the Love of Go: Book/Video Bundle

    Sources: John Arundel
    Hello, and welcome to learning Go! It's great to have you here. This is the bundled edition of ‘For the Love of Go’, a book introducing the Go programming langu
    6 hours 12 minutes 54 seconds
  • AI Engineering with Go thumbnail

    AI Engineering with Go

    Sources: ByteSizeGo
    Learn to integrate AI with Go: create projects, enhance skills, and deploy AI apps. Includes LLM API, vector databases, and model interactions.
    11 hours 13 minutes 5 seconds
  • Ardan Labs Live Bytes (Ultimate Go Syntax LIVE) thumbnail

    Ardan Labs Live Bytes (Ultimate Go Syntax LIVE)

    Sources: ardanlabs.com
    Recording of live translation Ultimate Go Syntax LIVE (March 2020 year) using Zoom. Recording of live translation Ultimate Go Syntax LIVE (March 2020 year) using Zoom.
    1 hour 48 minutes 40 seconds
  • Web Authentication, Encryption, JWT, HMAC, & OAuth With Go thumbnail

    Web Authentication, Encryption, JWT, HMAC, & OAuth With Go

    Sources: udemy
    An Intermediate Level Course for the Go Programming Language covering Web Authentication, Encryption, JWT, HMAC, & OAuth. Google's Go Programming Language is on
    14 hours 3 minutes 23 seconds