Modular Programming with Python

Introducing modular techniques for building sophisticated programs using Python

Modular Programming with Python

This ebook is included in a Mapt subscription
Erik Westra

4 customer reviews
Introducing modular techniques for building sophisticated programs using Python
$10.00
$39.99
RRP $31.99
RRP $39.99
eBook
Print + eBook
Preview in Mapt

Book Details

ISBN 139781785884481
Paperback246 pages

Book Description

Python has evolved over the years and has become the primary choice of developers in various fields. The purpose of this book is to help readers develop readable, reliable, and maintainable programs in Python.

Starting with an introduction to the concept of modules and packages, this book shows how you can use these building blocks to organize a complex program into logical parts and make sure those parts are working correctly together.

Using clearly written, real-world examples, this book demonstrates how you can use modular techniques to build better programs. A number of common modular programming patterns are covered, including divide-and-conquer, abstraction, encapsulation, wrappers and extensibility. You will also learn how to test your modules and packages, how to prepare your code for sharing with other people, and how to publish your modules and packages on GitHub and the Python Package Index so that other people can use them. Finally, you will learn how to use modular design techniques to be a more effective programmer.

Table of Contents

Chapter 1: Introducing Modular Programming
Introducing Python modules
Introducing Python packages
Using modules and packages to organize a program
Why use modular programming techniques?
Programming as a process
The Python Standard Library
Creating your first module
Summary
Chapter 2: Writing Your First Modular Program
The inventory control system
Designing the inventory control system
Implementing the inventory control system
Summary
Chapter 3: Using Modules and Packages
Modules and packages
Packages within packages
Initializing a module
Initializing a package
How to import anything
Controlling what gets imported
Circular dependencies
Running modules from the command line
Summary
Chapter 4: Using Modules for Real-World Programming
Introducing Charter
Designing Charter
Implementing Charter
The fly in the ointment – changing requirements
Redesigning Charter
Refactoring the code
Lessons learned
Summary
Chapter 5: Working with Module Patterns
Divide and conquer
Abstraction
Encapsulation
Wrappers
Extensible modules
Summary
Chapter 6: Creating Reusable Modules
Using modules and packages to share your code
What makes a module reusable?
What makes a good reusable module?
Examples of reusable modules
Designing a reusable package
Implementing a reusable package
Testing our reusable package
Summary
Chapter 7: Advanced Module Techniques
Optional imports
Local imports
Tweaking imports using sys.path
Import gotchas
Using modules and packages with the Python interactive interpreter
Dealing with global variables
Package configuration
Package data
Summary
Chapter 8: Testing and Deploying Modules
Testing modules and packages
Preparing a module or package for publication
Uploading your work to GitHub
Submitting to the Python Package Index
Using pip to download and install modules and packages
Summary
Chapter 9: Modular Programming as a Foundation for Good Programming Technique
The process of programming
Dealing with complexity
Being an effective programmer
Summary

What You Will Learn

  • Learn how to use modules and packages to organize your Python code
  • Understand how to use the import statement to load modules and packages into your program
  • Use common module patterns such as abstraction and encapsulation to write better programs
  • Discover how to create self-testing Python packages
  • Create reusable modules that other programmers can use
  • Learn how to use GitHub and the Python Package Index to share your code with other people
  • Make use of modules and packages that others have written
  • Use modular techniques to build robust systems that can handle complexity and changing requirements over time

Authors

Table of Contents

Chapter 1: Introducing Modular Programming
Introducing Python modules
Introducing Python packages
Using modules and packages to organize a program
Why use modular programming techniques?
Programming as a process
The Python Standard Library
Creating your first module
Summary
Chapter 2: Writing Your First Modular Program
The inventory control system
Designing the inventory control system
Implementing the inventory control system
Summary
Chapter 3: Using Modules and Packages
Modules and packages
Packages within packages
Initializing a module
Initializing a package
How to import anything
Controlling what gets imported
Circular dependencies
Running modules from the command line
Summary
Chapter 4: Using Modules for Real-World Programming
Introducing Charter
Designing Charter
Implementing Charter
The fly in the ointment – changing requirements
Redesigning Charter
Refactoring the code
Lessons learned
Summary
Chapter 5: Working with Module Patterns
Divide and conquer
Abstraction
Encapsulation
Wrappers
Extensible modules
Summary
Chapter 6: Creating Reusable Modules
Using modules and packages to share your code
What makes a module reusable?
What makes a good reusable module?
Examples of reusable modules
Designing a reusable package
Implementing a reusable package
Testing our reusable package
Summary
Chapter 7: Advanced Module Techniques
Optional imports
Local imports
Tweaking imports using sys.path
Import gotchas
Using modules and packages with the Python interactive interpreter
Dealing with global variables
Package configuration
Package data
Summary
Chapter 8: Testing and Deploying Modules
Testing modules and packages
Preparing a module or package for publication
Uploading your work to GitHub
Submitting to the Python Package Index
Using pip to download and install modules and packages
Summary
Chapter 9: Modular Programming as a Foundation for Good Programming Technique
The process of programming
Dealing with complexity
Being an effective programmer
Summary

Book Details

ISBN 139781785884481
Paperback246 pages
Read More
From 4 reviews

Read More Reviews