Learning Python Application Development

Take Python beyond scripting to build robust, reusable, and efficient applications
Preview in Mapt

Learning Python Application Development

Ninad Sathaye

2 customer reviews
Take Python beyond scripting to build robust, reusable, and efficient applications
Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial

Frequently bought together


Learning Python Application Development Book Cover
Learning Python Application Development
$ 35.99
$ 25.20
From 0 to 1: Machine Learning, NLP & Python-Cut to the Chase [Video] Book Cover
From 0 to 1: Machine Learning, NLP & Python-Cut to the Chase [Video]
$ 32.99
$ 28.05
Buy 2 for $35.00
Save $33.98
Add to Cart
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 

Book Details

ISBN 139781785889196
Paperback454 pages

Book Description

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

Chapter 1: Developing Simple Applications
Important housekeeping notes
Installation prerequisites
The theme of the book
Simple script – Attack of the Orcs v0.0.1
Using functions – Attack of the Orcs v0.0.5
Using OOP – Attack of the Orcs v1.0.0
Abstract base classes in Python
Summary
Chapter 2: Dealing with Exceptions
Revisiting Attack of the Orcs v1.0.0
Exceptions
Back to the game – Attack of the Orcs v1.1.0
Defining custom exceptions
Exercise
Summary
Chapter 3: Modularize, Package, Deploy!
Selecting a versioning convention
Modularizing the code
Creating a package
Releasing the package on PyPI
Using a private PyPI repository
Making an incremental release
Version controlling the code
Using GUI clients for Git
Exercise
Summary
Chapter 4: Documentation and Best Practices
Documenting the code
Python coding standards
Code analysis – How well are we doing?
Exercise
Summary
Chapter 5: Unit Testing and Refactoring
This is how the chapter is organized
Why test?
Unit testing
Writing unit tests for the application
Unit tests using mock library
Is your code covered?
Other unit testing tools
Refactoring preamble
Refactoring
Unit testing revisited
Exercise
Summary
Chapter 6: Design Patterns
Introduction to design patterns
Python language and design patterns
Structure of the rest of the chapter
Fast forward – Attack of the Orcs v6.0.0
Strategy pattern
Simple factory
Abstract factory pattern
Adapter pattern
Summary
Chapter 7: Performance – Identifying Bottlenecks
Overview of three performance chapters
Scenario – The Gold Hunt
The problem
Identifying the bottlenecks
Memory profiling
Algorithm efficiency and complexity
Big O notation
Summary
Chapter 8: Improving Performance – Part One
Prerequisite for the chapter
This is how the chapter is organized
Revisiting the Gold Hunt scenario
Optimizing Gold Hunt – Part one
Performance improvement goodies
Exercises
Summary
Chapter 9: Improving Performance – Part Two, NumPy and Parallelization
Prerequisites for this chapter
This is how the chapter is organized
Introduction to NumPy
Optimizing Gold Hunt – Part two
Parallelization with the multiprocessing module
Parallelizing the Gold Hunt program
Further reading
Summary
Chapter 10: Simple GUI Applications
Overview of GUI frameworks
GUI programming design considerations
Event-driven programming
GUI programming with Tkinter
Project-1 – Attack of the Orcs V10.0.0
MVC architecture
Project 2 – Attack of the Orcs v10.1.0
Testing GUI applications
Exercises
Further reading
Summary

What You Will Learn

  • Build a robust application by handling exceptions.
  • Modularize, package, and release the source distribution.
  • Document the code and implement coding standards.
  • Create automated tests to catch bugs in the early development stage.
  • Identify and re-factor badly written code to improve application life.
  • Detect recurring problems in the code and apply design patterns.
  • Improve code efficiency by identifying performance bottlenecks and fixing them.
  • Develop simple GUI applications using Python.

Authors

Table of Contents

Chapter 1: Developing Simple Applications
Important housekeeping notes
Installation prerequisites
The theme of the book
Simple script – Attack of the Orcs v0.0.1
Using functions – Attack of the Orcs v0.0.5
Using OOP – Attack of the Orcs v1.0.0
Abstract base classes in Python
Summary
Chapter 2: Dealing with Exceptions
Revisiting Attack of the Orcs v1.0.0
Exceptions
Back to the game – Attack of the Orcs v1.1.0
Defining custom exceptions
Exercise
Summary
Chapter 3: Modularize, Package, Deploy!
Selecting a versioning convention
Modularizing the code
Creating a package
Releasing the package on PyPI
Using a private PyPI repository
Making an incremental release
Version controlling the code
Using GUI clients for Git
Exercise
Summary
Chapter 4: Documentation and Best Practices
Documenting the code
Python coding standards
Code analysis – How well are we doing?
Exercise
Summary
Chapter 5: Unit Testing and Refactoring
This is how the chapter is organized
Why test?
Unit testing
Writing unit tests for the application
Unit tests using mock library
Is your code covered?
Other unit testing tools
Refactoring preamble
Refactoring
Unit testing revisited
Exercise
Summary
Chapter 6: Design Patterns
Introduction to design patterns
Python language and design patterns
Structure of the rest of the chapter
Fast forward – Attack of the Orcs v6.0.0
Strategy pattern
Simple factory
Abstract factory pattern
Adapter pattern
Summary
Chapter 7: Performance – Identifying Bottlenecks
Overview of three performance chapters
Scenario – The Gold Hunt
The problem
Identifying the bottlenecks
Memory profiling
Algorithm efficiency and complexity
Big O notation
Summary
Chapter 8: Improving Performance – Part One
Prerequisite for the chapter
This is how the chapter is organized
Revisiting the Gold Hunt scenario
Optimizing Gold Hunt – Part one
Performance improvement goodies
Exercises
Summary
Chapter 9: Improving Performance – Part Two, NumPy and Parallelization
Prerequisites for this chapter
This is how the chapter is organized
Introduction to NumPy
Optimizing Gold Hunt – Part two
Parallelization with the multiprocessing module
Parallelizing the Gold Hunt program
Further reading
Summary
Chapter 10: Simple GUI Applications
Overview of GUI frameworks
GUI programming design considerations
Event-driven programming
GUI programming with Tkinter
Project-1 – Attack of the Orcs V10.0.0
MVC architecture
Project 2 – Attack of the Orcs v10.1.0
Testing GUI applications
Exercises
Further reading
Summary

Book Details

ISBN 139781785889196
Paperback454 pages
Read More
From 2 reviews

Read More Reviews

Recommended for You

Python GUI Programming Cookbook Book Cover
Python GUI Programming Cookbook
$ 35.99
$ 25.20
Mastering Object-oriented Python Book Cover
Mastering Object-oriented Python
$ 26.99
$ 18.90
Python Machine Learning Book Cover
Python Machine Learning
$ 35.99
$ 25.20
Geospatial Development By Example with Python Book Cover
Geospatial Development By Example with Python
$ 39.99
$ 28.00
Modern Python Cookbook Book Cover
Modern Python Cookbook
$ 39.99
$ 28.00
Mastering Python Book Cover
Mastering Python
$ 31.99
$ 22.40