Zum Hauptinhalt springen
Nicht aus der Schweiz? Besuchen Sie lehmanns.de
Python in Practice - Mark Summerfield

Python in Practice

Create Better Programs Using Concurrency, Libraries, and Patterns
Buch | Softcover
336 Seiten
2013
Addison-Wesley Educational Publishers Inc (Verlag)
9780321905635 (ISBN)
CHF 59,80 inkl. MwSt
  • Titel ist leider vergriffen;
    keine Neuauflage
  • Artikel merken
Winner of the 2014 Jolt Award for "Best Book"



 

“Whether you are an experienced programmer or are starting your career, Python in Practice is full of valuable advice and example to help you improve your craft by thinking about problems from different perspectives, introducing tools, and detailing techniques to create more effective solutions.”

—Doug Hellmann, Senior Developer, DreamHost

 

If you’re an experienced Python programmer, Python in Practice will help you improve the quality, reliability, speed, maintainability, and usability of all your Python programs.

 

Mark Summerfield focuses on four key themes: design patterns for coding elegance, faster processing through concurrency and compiled Python (Cython), high-level networking, and graphics. He identifies well-proven design patterns that are useful in Python, illuminates them with expert-quality code, and explains why some object-oriented design patterns are irrelevant to Python. He also explodes several counterproductive myths about Python programming—showing, for example, how Python can take full advantage of multicore hardware.

 

All examples, including three complete case studies, have been tested with Python 3.3 (and, where possible, Python 3.2 and 3.1) and crafted to maintain compatibility with future Python 3.x versions. All code has been tested on Linux, and most code has also been tested on OS X and Windows. All code may be downloaded at www.qtrac.eu/pipbook.html.

 

Coverage includes



Leveraging Python’s most effective creational, structural, and behavioral design patterns
Supporting concurrency with Python’s multiprocessing, threading, and concurrent.futures modules
Avoiding concurrency problems using thread-safe queues and futures rather than fragile locks
Simplifying networking with high-level modules, including xmlrpclib and RPyC
Accelerating Python code with Cython, C-based Python modules, profiling, and other techniques
Creating modern-looking GUI applications with Tkinter
Leveraging today’s powerful graphics hardware via the OpenGL API using pyglet and PyOpenGL

Mark Summerfield, owner of Qtrac Ltd., is an independent trainer, consultant, technical editor, and writer specializing in C++, Go, Python, Qt, and PyQt. His books include Rapid GUI Programming with Python and Qt; C++ GUI Programming with Qt 4, Second Edition (with Jasmin Blanchette); Programming inPython 3, Second Edition; and Advanced Qt Programming, and Programming in Go, all from Addison-Wesley.  

Foreword xiii  



Introduction 1

Acknowledgments    3



 

Chapter 1:  Creational Design Patterns   5

1.1. Abstract Factory Pattern  5

1.2. Builder Pattern  11

1.3. Factory Method Pattern  17

1.4. Prototype Pattern  24

1.5. Singleton Pattern  26

 

Chapter 2:  Structural Design Patterns 29

2.1. Adapter Pattern   29

2.2. Bridge Pattern   34

2.3. Composite Pattern   40

2.4. Decorator Pattern   48

2.5. Façade Pattern 59

2.6. Flyweight Pattern 64

2.7. Proxy Pattern 67

 

Chapter 3:  Behavioral Design Patterns 73

3.1.   Chain of Responsibility Pattern   74

3.2.   Command Pattern   79

3.3.   Interpreter Pattern  83

3.4.   Iterator Pattern 95

3.5.   Mediator Pattern 100

3.6.   Memento Pattern  106

3.7.   Observer Pattern   107

3.8.   State Pattern 111

3.9.   Strategy Pattern 116

3.10. Template Method Pattern 119

3.11. Visitor Pattern 123

3.12. Case Study: An Image Package 124

 

Chapter 4: High-Level Concurrency    141

4.1. CPU-Bound Concurrency  144

4.2. I/O-Bound Concurrency 155

4.3. Case Study: A Concurrent GUI Application 164

 

Chapter 5:  Extending Python 179

5.1. Accessing C Libraries with ctypes 180

5.2. Using Cython 187

5.3. Case Study: An Accelerated Image Package 198

 

Chapter 6:  High-Level Networking   203

6.1. Writing XML-RPC Applications   204

6.2. Writing RPyC Applications   219

 

Chapter 7:  Graphical User Interfaces with Tkinter   231

7.1. Introduction to Tkinter   233

7.2. Creating Dialogs with Tkinter 235

7.3. Creating Main-Window Applications with Tkinter 253

 

Chapter 8:  OpenGL 3D Graphics   263

8.1. A Perspective Scene 264

8.2. An Orthographic Game 272

 



Appendix A:  Epilogue   283

 

Appendix B:  Selected Bibliography 285



 

Index   289

 

Verlagsort New Jersey
Sprache englisch
Maße 179 x 229 mm
Gewicht 526 g
Themenwelt Mathematik / Informatik Informatik Programmiersprachen / -werkzeuge
Mathematik / Informatik Informatik Web / Internet
ISBN-13 9780321905635 / 9780321905635
Zustand Neuware
Informationen gemäß Produktsicherheitsverordnung (GPSR)
Haben Sie eine Frage zum Produkt?
Mehr entdecken
aus dem Bereich
Grundlagen und praktische Anwendungen von Transpondern, kontaktlosen …

von Klaus Finkenzeller

Buch (2023)
Hanser (Verlag)
CHF 125,95
das umfassende Handbuch

von Marc Marburger

Buch | Hardcover (2024)
Rheinwerk (Verlag)
CHF 69,85