Let’s Go! Learn to Build Professional Web Applications With Golang
Edition 版次：First Edition (version 1.6.1)Last updated:May 20th,2021Written for:Go 1.16Formats:HTML,PDF and ePUBLanguage 语言：US EnglishSize:361 pages (in PDF format)
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…
All the fundamentals — How to start a server,create handlers,send responses,route requests and serve static files.
Structure and organization — How to create an idiomatic and scalable structure for your web application.
Using Modules — How to use Go’s new Module functionality to manage and version control your dependencies.
Managing configuration — How to use command-line flags and dependency injection to manage your application settings.
Logging and Error Handling — How to implement leveled logging and centralized error handling.
SQL databases — How to design a database model,set up a connection pool,and execute statements and queries.
HTML templating — How to cache your templates,display dynamic data,create custom functions and handle runtime errors.
Middleware — How to create your own middleware to perform common actions (like logging requests and recovering panics).
RESTful routing — How to create a modern request routing structure that follows the principles of REST.
Form validation — How to implement reusable and user-friendly pattern for validating forms and displaying errors.
Session management — How to use and configure sessions to persist data between requests.
Using HTTPS — How to correctly setup a HTTPS server and configure it for improved performance and security.
Prevent common vulnerabilities — How to prevent SQL injection,CSRF,XSS,clickjacking and slow-client attacks.
Authentication and authorization — How to safely encrypt user passwords and add signup,login and logout functionality.
Request context — How to use Go’s context.Context to pass data between your middleware and handlers.
Testing — How to create unit tests,integration tests and end-to-end tests,mock dependencies and measure test coverage.
And most importantly… How to put it together in a fully-functioning application!