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

The importance of testing


As developers, we usually aim at working on challenging problems, trying to navigate through the complex connections, and coming up with a solution. But how many times do we care to look at all the possible ways through which our code can fail to provide the expected outcome? As much as it is hard to try to break something that we as developers have written ourselves, it forms one of the most important aspects of the development cycle.

This is the time when testing becomes an important aspect of the development life cycle. The aim of application testing can be summed up by answering the following questions:

  • Are the individual components in the code performing as per the expectations?
  • Does the flow of the code from one component to another as is desired?
  • Was the final outcome of the application the same that we thought of?
  • Are there some deviations in the standard behavior?
  • Did the application handle all the expected scenarios and provided a fail-safe over for the unexpected...