๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

Let's Go

โœ Scribed by Alex Edwards


Publisher
Alex Edwards
Year
2022
Tongue
English
Edition
2 (2.18.2)
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Synopsis


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

You might be wondering things like:

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 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 โ€” helping you get up to speed quickly and saving you months of research and experimentation.

The book walks through the start-to-finish build of a complete working application, helping you to learn by doing. Youโ€™ll get practical experience implementing common real-life code patterns, the topics that youโ€™re learning about are put in context, and you'll end up with a well-structured codebase that you can adapt for your own future work.

By the end of the book, youโ€™ll have all the knowledge and confidence that you need to build your own professional, production ready, web applications.

So grab your copy, break out your text editor, and happy coding!

โœฆ Table of Contents


  1. Introduction
    1.1. Prerequisites
    1. Foundations
      2.1. Project setup and creating a module
      2.2. Web application basics
      2.3. Routing requests
      2.4. Customizing HTTP headers
      2.5. URL query strings
      2.6. Project structure and organization
      2.7. HTML templating and inheritance
      2.8. Serving static files
      2.9. The http.Handler interface
    2. Configuration and error handling
      3.1. Managing configuration settings
      3.2. Leveled logging
      3.3. Dependency injection
      3.4. Centralized error handling
      3.5. Isolating the application routes
    3. Database-driven responses
      4.1. Setting up MySQL
      4.2. Installing a database driver
      4.3. Modules and reproducible builds
      4.4. Creating a database connection pool
      4.5. Designing a database model
      4.6. Executing SQL statements
      4.7. Single-record SQL queries
      4.8. Multiple-record SQL queries
      4.9. Transactions and other details
    4. Dynamic HTML templates
      5.1. Displaying dynamic data
      5.2. Template actions and functions
      5.3. Caching templates
      5.4. Catching runtime errors
      5.5. Common dynamic data
      5.6. Custom template functions
    5. Middleware
      6.1. How middleware works
      6.2. Setting security headers
      6.3. Request logging
      6.4. Panic recovery
      6.5. Composable middleware chains
    6. Advanced routing
      7.1. Choosing a router
      7.2. Clean URLs and method-based routing
    7. Processing forms
      8.1. Setting up a HTML form
      8.2. Parsing form data
      8.3. Validating form data
      8.4. Displaying errors and repopulating fields
      8.5. Creating validation helpers
      8.6. Automatic form parsing
    8. Stateful HTTP
      9.1. Choosing a session manager
      9.2. Setting up the session manager
      9.3. Working with session data
    9. Security improvements
      10.1. Generating a self-signed TLS certificate
      10.2. Running a HTTPS server
      10.3. Configuring HTTPS settings
      10.4. Connection timeouts
    10. User authentication
      11.1. Routes setup
      11.2. Creating a users model
      11.3. User signup and password encryption
      11.4. User login
      11.5. User logout
      11.6. User authorization
      11.7. CSRF protection
    11. Using request context
      12.1. How request context works
      12.2. Request context for authentication/authorization
    12. Optional Go features
      13.1. Using embedded files
      13.2. Using generics
    13. Testing
      14.1. Unit testing and sub-tests
      14.2. Testing HTTP handlers and middleware
      14.3. End-to-end testing
      14.4. Customizing how tests run
      14.5. Mocking dependencies
      14.6. Testing HTML forms
      14.7. Integration testing
      14.8. Profiling test coverage
    14. Conclusion
    15. Further reading and useful links

๐Ÿ“œ SIMILAR VOLUMES


Letโ€™s Go Letโ€™s Go Letโ€™s Go
โœ Cleo Qian ๐Ÿ“‚ Library ๐ŸŒ English

"Qian has a gift for sensory details, and for the speculative and grotesque. . . . a pleasure to read."โ€”Raven Leilani, author of Luster The electric, unsettling, and often surreal stories in LET'S GO LET'S GO LET'S GO explore the alienated, technology-mediated lives of restless Asian and Asian Amer

LET'S GO LET'S GO LET'S GO
โœ Cleo Qian ๐Ÿ“‚ Fiction ๐Ÿ› Tin House Books ๐ŸŒ English

<p><strong><strong>"Qian has a gift for sensory details, and for the speculative and grotesque. . . . a pleasure to read."โ€”Raven Leilani, author of Luster</strong> </strong></p>The electric, unsettling, and often surreal stories in LET'S GO LET'S GO LET'S GO explore the alienated, technology-mediat

Let's Go 3 Workbook (Let's Go Third Edit
โœ Ritsuko Nakata, Karen Frazier, Barbara Hoskins, Carolyn Graham ๐Ÿ“‚ Library ๐Ÿ“… 2007 ๐Ÿ› Oxford University Press, USA ๐ŸŒ English

Bigger, brighter and better than ever, Let's Go, 3rd Edition, is a series for children who are just beginning their study of English. It combines a carefully controlled, grammar-based syllabus with practical language. Functional dialogues, interactive games, and pair work activities foster a lively

Let's Go
โœ Alex Edwards ๐Ÿ“‚ Library ๐Ÿ“… 2022 ๐Ÿ› Alex Edwards ๐ŸŒ English

Go is a great language for building web applications. But teaching yourself from blog posts and the standard library documentation can be a big time-sink and leave you with more questions than answers. You might be wondering things like: Where can I see a concrete example of a real-world w

Letโ€™s Go
โœ Alex Edwards ๐Ÿ“‚ Library ๐Ÿ“… 2019 ๐ŸŒ English

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 be

Letโ€™s Go
โœ Alex Edwards ๐Ÿ“‚ Library ๐Ÿ“… 2019 ๐Ÿ› Brandberg Ltd ๐ŸŒ English

Letโ€™s Go teaches you step-by-step how to create fast, secure and maintainable web applications using the fantastic programming language Go. The idea behind this book is to help you learn by doing. Together weโ€™ll walk through the start-to-finish build of a web application โ€” from structuring your w