Advanced Python Programming: Build high performance, concurrent, and multi-threaded apps with Python using proven design patterns by Dr. Gabriele Lanaro, Quan Nguyen, Sakis Kasampalis
English | February 28, 2019 | ISBN: 1838551212 | PDF | 672 pages | 12.9 MB
English | February 28, 2019 | ISBN: 1838551212 | PDF | 672 pages | 12.9 MB
Create distributed applications with clever design patterns to solve complex problems
Key Features
Set up and run distributed algorithms on a cluster using Dask and PySpark
Master skills to accurately implement concurrency in your code
Gain practical experience of Python design patterns with real-world examples
Book Description
This Learning Path shows you how to leverage the power of both native and third-party Python libraries for building robust and responsive applications. You will learn about profilers and reactive programming, concurrency and parallelism, as well as tools for making your apps quick and efficient. You will discover how to write code for parallel architectures using TensorFlow and Theano, and use a cluster of computers for large-scale computations using technologies such as Dask and PySpark. With the knowledge of how Python design patterns work, you will be able to clone objects, secure interfaces, dynamically choose algorithms, and accomplish much more in high performance computing.
By the end of this Learning Path, you will have the skills and confidence to build engaging models that quickly offer efficient solutions to your problems.
This Learning Path includes content from the following Packt products:
• Python High Performance - Second Edition by Gabriele Lanaro
• Mastering Concurrency in Python by Quan Nguyen
• Mastering Python Design Patterns by Sakis Kasampalis
What you will learn
Use NumPy and pandas to import and manipulate datasets
Achieve native performance with Cython and Numba
Write asynchronous code using asyncio and RxPy
Design highly scalable programs with application scaffolding
Explore abstract methods to maintain data consistency
Clone objects using the prototype pattern
Use the adapter pattern to make incompatible interfaces compatible
Employ the strategy pattern to dynamically choose an algorithm
Who this book is for
This Learning Path is specially designed for Python developers who want to build high-performance applications and learn about single core and multi-core programming, distributed concurrency, and Python design patterns. Some experience with Python programming language will help you get the most out of this Learning Path.