Advanced Python Programming - Second Edition
By :
Advanced Python Programming - Second Edition
By:
Overview of this book
Python's powerful capabilities for implementing robust and efficient programs make it one of the most sought-after programming languages.
In this book, you'll explore the tools that allow you to improve performance and take your Python programs to the next level.
This book starts by examining the built-in as well as external libraries that streamline tasks in the development cycle, such as benchmarking, profiling, and optimizing. You'll then get to grips with using specialized tools such as dedicated libraries and compilers to increase your performance at number-crunching tasks, including training machine learning models.
The book covers concurrency, a major solution to making programs more efficient and scalable, and various concurrent programming techniques such as multithreading, multiprocessing, and asynchronous programming.
You'll also understand the common problems that cause undesirable behavior in concurrent programs.
Finally, you'll work with a wide range of design patterns, including creational, structural, and behavioral patterns that enable you to tackle complex design and architecture challenges, making your programs more robust and maintainable.
By the end of the book, you'll be exposed to a wide range of advanced functionalities in Python and be equipped with the practical knowledge needed to apply them to your use cases.
Table of Contents (32 chapters)
Preface
Section 1: Python-Native and Specialized Optimization
Free Chapter
Chapter 1: Benchmarking and Profiling
Chapter 2: Pure Python Optimizations
Chapter 3: Fast Array Operations with NumPy, Pandas, and Xarray
Chapter 4: C Performance with Cython
Chapter 5: Exploring Compilers
Chapter 6: Automatic Differentiation and Accelerated Linear Algebra for Machine Learning
Section 2: Concurrency and Parallelism
Chapter 7: Implementing Concurrency
Chapter 8: Parallel Processing
Chapter 9: Concurrent Web Requests
Chapter 10: Concurrent Image Processing
Chapter 11: Building Communication Channels with asyncio
Chapter 12: Deadlocks
Chapter 13: Starvation
Chapter 14: Race Conditions
Chapter 15: The Global Interpreter Lock
Section 3: Design Patterns in Python
Chapter 16: The Factory Pattern
Chapter 17: The Builder Pattern
Chapter 18: Other Creational Patterns
Chapter 19: The Adapter Pattern
Chapter 20: The Decorator Pattern
Chapter 21: The Bridge Pattern
Chapter 22: The Façade Pattern
Chapter 23: Other Structural Patterns
Chapter 24: The Chain of Responsibility Pattern
Chapter 25: The Command Pattern
Chapter 26: The Observer Pattern
Assessments
Other Books You May Enjoy
Customer Reviews