"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
β Scribed by Alex Edwards
- Year
- 2019
- Tongue
- English
- Category
- Library
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 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 needed to create production-quality applications with Go.
β¦ Table of Contents
1. Introduction
2. Foundations
2.1. Installing Go
2.2. Project Setup and Enabling Modules
2.3. Web Application Basics
2.4. Routing Requests
2.5. Customizing HTTP Headers
2.6. URL Query Strings
2.7. Project Structure and Organization
2.8. HTML Templating and Inheritance
2.9. Serving Static Files
2.10. The http.Handler Interface
3. 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
4. Database-Driven Responses
4.1. Setting Up MySQL
4.2. Installing a Database Driver
4.3. Creating a Database Connection Pool
4.4. Designing a Database Model
4.5. Executing SQL Statements
4.6. Single-record SQL Queries
4.7. Multiple-record SQL Queries
4.8. Transactions and Other Details
5. 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
6. Middleware
6.1. How Middleware Works
6.2. Setting Security Headers
6.3. Request Logging
6.4. Panic Recovery
6.5. Composable Middleware Chains
7. RESTful Routing
7.1. Installing a Router
7.2. Implementing RESTful Routes
8. Processing Forms
8.1. Setting Up a Form
8.2. Parsing Form Data
8.3. Data Validation
8.4. Scaling Data Validation
9. Stateful HTTP
9.1. Installing a Session Manager
9.2. Setting Up the Session Manager
9.3. Working with Session Data
10. 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
11. 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
12. Using Request Context
12.1. How Request Context Works
12.2. Request Context for Authentication/Authorization
13. Testing
13.1. Unit Testing and Sub-Tests
13.2. Testing HTTP Handlers
13.3. End-To-End Testing
13.4. Mocking Dependencies
13.5. Testing HTML Forms
13.6. Integration Testing
13.7. Profiling Test Coverage
14. Conclusion
15. Appendices
15.1. How HTTPS Works
15.2. Further Reading and Useful Links
π SIMILAR VOLUMES
<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
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
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
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 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