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

Revisiting the Gold Hunt scenario


At this point, you should go back to Chapter 7, Performance – Identifying Bottlenecks, and refresh your memory on the Gold Hunt scenario. To summarize the problem, a circular field has gold coins scattered all over and you need to pick as many coins as you can while traveling across the field. However, you can only pick the coins lying inside the small search circles. We wrote an application code and discussed how tweaking the search_radius and field_coins (total scattered coins) parameters impact the performance. In the upcoming discussion, we will gradually improve the performance of this code.

Selecting a problem size

In order to see a real difference in the timing after optimizing the code, let's increase the problem size further. In the previous chapter, The Great Dwarf wanted us to put one million coins on the field. Let's double the deal. Now, there are two million gold coins up for grabs! In short, search_radius and field_coins will be set to 0...