Python for Geeks
Muhammad Asif
- 546 páginas
- English
- ePUB (apto para móviles)
- Disponible en iOS y Android
Python for Geeks
Muhammad Asif
Información del libro
Take your Python skills to the next level to develop scalable, real-world applications for local as well as cloud deploymentKey Features• All code examples have been tested with Python 3.7 and Python 3.8 and are expected to work with any future 3.x release• Learn how to build modular and object-oriented applications in Python• Discover how to use advanced Python techniques for the cloud and clustersBook DescriptionPython is a multipurpose language that can be used for multiple use cases. Python for Geeks will teach you how to advance in your career with the help of expert tips and tricks.You'll start by exploring the different ways of using Python optimally, both from the design and implementation point of view. Next, you'll understand the life cycle of a large-scale Python project. As you advance, you'll focus on different ways of creating an elegant design by modularizing a Python project and learn best practices and design patterns for using Python. You'll also discover how to scale out Python beyond a single thread and how to implement multiprocessing and multithreading in Python. In addition to this, you'll understand how you can not only use Python to deploy on a single machine but also use clusters in private as well as in public cloud computing environments. You'll then explore data processing techniques, focus on reusable, scalable data pipelines, and learn how to use these advanced techniques for network automation, serverless functions, and machine learning. Finally, you'll focus on strategizing web development design using the techniques and best practices covered in the book.By the end of this Python book, you'll be able to do some serious Python programming for large-scale complex projects.What you will learn• Understand how to design and manage complex Python projects• Strategize test-driven development (TDD) in Python• Explore multithreading and multiprogramming in Python• Use Python for data processing with Apache Spark and Google Cloud Platform (GCP)• Deploy serverless programs on public clouds such as GCP• Use Python to build web applications and application programming interfaces• Apply Python for network automation and serverless functions• Get to grips with Python for data analysis and machine learningWho this book is forThis book is for intermediate-level Python developers in any field who are looking to build their skills to develop and manage large-scale complex projects. Developers who want to create reusable modules and Python libraries and cloud developers building applications for cloud deployment will also find this book useful. Prior experience with Python will help you get the most out of this book.
Preguntas frecuentes
Información
Section 1: Python, beyond the Basics
- Chapter 1, Optimal Python Development Life Cycle
- Chapter 2, Using Modularization to Handle Complex Projects
- Chapter 3, Advanced Object-Oriented Python Programming
Chapter 1: Optimal Python Development Life Cycle
- Python culture and community
- Different phases of a Python project
- Strategizing the development process
- Effectively documenting Python code
- Developing an effective naming scheme
- Exploring choices for source control
- Understanding strategies for deploying the code
- Python development environments
Python culture and community
- Beautiful is better than ugly: It is important to write code that is well-written, readable, and self-explanatory. Not only should it work—it should be beautifully written. While coding, we should avoid using shortcuts in favor of a style that is self-explanatory.
- Simple is better than complex: We should not unnecessarily complicate things. Whenever facing a choice, we should prefer the simpler solution. Nerdy, unnecessary, and complicated ways of writing code are discouraged. Even when it adds some more lines to the source code, simpler remains better than the complex alternative.
- There should be one-- and preferably only one --obvious way to do it: In broader terms, for a given problem there should be one possible best solution. We should strive to discover this. As we iterate through the design to improve it, regardless of our approach, our solution is expected to evolve and converge toward that preferable solution.
- Now is better than never: Instead of waiting for perfection, let's start solving the given problem using the information, assumptions, skills, tools, and infrastructure we have. Through the process of iteration, we will keep improving the solution. Let's keep things moving instead of idling. Do not slack while waiting for the perfect time. Chances are that the perfect time will never come.
- Explicit is better than implicit: The code should be as self-explanatory as possible. This should be reflected ...