Book Image

Python Web Development with Sanic

By : Adam Hopkins
Book Image

Python Web Development with Sanic

By: Adam Hopkins

Overview of this book

Today’s developers need something more powerful and customizable when it comes to web app development. They require effective tools to build something unique to meet their specific needs, and not simply glue a bunch of things together built by others. This is where Sanic comes into the picture. Built to be unopinionated and scalable, Sanic is a next-generation Python framework and server tuned for high performance. This Sanic guide starts by helping you understand Sanic’s purpose, significance, and use cases. You’ll learn how to spot different issues when building web applications, and how to choose, create, and adapt the right solution to meet your requirements. As you progress, you’ll understand how to use listeners, middleware, and background tasks to customize your application. The book will also take you through real-world examples, so you will walk away with practical knowledge and not just code snippets. By the end of this web development book, you’ll have gained the knowledge you need to design, build, and deploy high-performance, scalable, and maintainable web applications with the Sanic framework.
Table of Contents (16 chapters)
1
Part 1:Getting Started with Sanic
4
Part 2:Hands-On Sanic
11
Part 3:Putting It All together

Chapter 10: Implementing Common Use Cases with Sanic

Years ago when I was in law school, I set out to build a web application to help me with my studies. I wanted to create something that would both help me organize my notes and make it easy for my classmates to share outlines and study materials. I had been building websites at that point for a number of years, so I thought I knew what I was doing. I sat down to begin by creating an endpoint to store notes. Next, I created a database to persist the notes. I realized that I also needed to tie those notes to specific courses, so I added course management. Little by little I started adding features as I saw the need for them. The end result was a mess. I failed to establish good basics in my project, and it snowballed as new features crept into scope. With an idea in my head, I jumped straight to the implementation, skipped over all of the planning, and created none of the application infrastructures that set up a project for success...