Book Image

Learning Python Application Development

By : Ninad Sathaye
Book Image

Learning Python Application Development

By: Ninad Sathaye

Overview of this book

Python is one of the most widely used dynamic programming languages, supported by a rich set of libraries and frameworks that enable rapid development. But fast paced development often comes with its own baggage that could bring down the quality, performance, and extensibility of an application. This book will show you ways to handle such problems and write better Python applications. From the basics of simple command-line applications, develop your skills all the way to designing efficient and advanced Python apps. Guided by a light-hearted fantasy learning theme, overcome the real-world problems of complex Python development with practical solutions. Beginning with a focus on robustness, packaging, and releasing application code, you’ll move on to focus on improving application lifetime by making code extensible, reusable, and readable. Get to grips with Python refactoring, design patterns and best practices. Techniques to identify the bottlenecks and improve performance are covered in a series of chapters devoted to performance, before closing with a look at developing Python GUIs.
Table of Contents (18 chapters)
Learning Python Application Development
Credits
Disclaimers
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

This is how the chapter is organized


This chapter will be the Part two of performance improvement. Just like the previous chapter, the performance of the Gold Hunt program will be improved in steps. We will start with a quick introduction to NumPy, just enough to use its functionality for optimization passes four and five, which follow next. Moving ahead, there will be a superficial introduction to the multiprocessing module. In optimization pass six, we will use this module to parallelize a portion of the application code. Let's pull up the same bar chart from the previous chapter. The last two bars indicate the speedup accomplished by the end of this chapter.

But the chart does not tell the full story. The optimization pass four, will significantly speedup the generate_random_points function of the Gold Hunt program. This speedup is not reflected in the chart as the function does not significantly contribute to the runtime in this scenario. Towards the end, the chapter will provide preliminary...