Book Image

Hands-On Enterprise Application Development with Python

By : Saurabh Badhwar
Book Image

Hands-On Enterprise Application Development with Python

By: Saurabh Badhwar

Overview of this book

Dynamically typed languages like Python are continuously improving. With the addition of exciting new features and a wide selection of modern libraries and frameworks, Python has emerged as an ideal language for developing enterprise applications. Hands-On Enterprise Application Development with Python will show you how to build effective applications that are stable, secure, and easily scalable. The book is a detailed guide to building an end-to-end enterprise-grade application in Python. You will learn how to effectively implement Python features and design patterns that will positively impact your application lifecycle. The book also covers advanced concurrency techniques that will help you build a RESTful application with an optimized frontend. Given that security and stability are the foundation for an enterprise application, you’ll be trained on effective testing, performance analysis, and security practices, and understand how to embed them in your codebase during the initial phase. You’ll also be guided in how to move on from a monolithic architecture to one that is service oriented, leveraging microservices and serverless deployment techniques. By the end of the book, you will have become proficient at building efficient enterprise applications in Python.
Table of Contents (24 chapters)
Title Page
Copyright and Credits
About Packt
Contributors
Preface
Index

Behind the scenes of performance bottlenecks


Before an application enters the development phase, there is a thorough discussion on what the application is supposed to do, how it will do it, and what kind of third-party components the application will need to interact with. Once all of this is finalized, the application enters the development phase, where the developers are responsible for building the application in such a way that the tasks to be performed by the application can be achieved in the most efficient manner possible. This efficiency is usually measured in terms of how much time an application takes to complete a provided task and how many resources it uses while working on that task.

When the application is deployed into production, the real test of the application begins. Most of the time, if the work being done by the application is the same as was defined during the requirements-gathering and design phases, the application usually performs well and provides an adequate scalability...