Learning Python Design Patterns, 2/e (Paperback)

Chetan Giridhar

買這商品的人也買了...

商品描述

Key Features

  • Understand the structural, creational, and behavioral Python design patterns
  • Get to know the context and application of design patterns to solve real-world problems in software architecture, design, and application development
  • Get practical exposure through sample implementations in Python v3.5 for the design patterns featured

Book Description

With the increasing focus on optimized software architecture and design it is important that software architects think about optimizations in object creation, code structure, and interaction between objects at the architecture or design level. This makes sure that the cost of software maintenance is low and code can be easily reused or is adaptable to change. The key to this is reusability and low maintenance in design patterns.

Building on the success of the previous edition, Learning Python Design Patterns, Second Edition will help you implement real-world scenarios with Python's latest release, Python v3.5.

We start by introducing design patterns from the Python perspective. As you progress through the book, you will learn about Singleton patterns, Factory patterns, and Facade patterns in detail. After this, we'll look at how to control object access with proxy patterns. It also covers observer patterns, command patterns, and compound patterns.

By the end of the book, you will have enhanced your professional abilities in software architecture, design, and development.

What you will learn

  • Enhance your skills to create better software architecture
  • Understand proven solutions to commonly occurring design issues
  • Explore the design principles that form the basis of software design, such as loose coupling, the Hollywood principle and the Open Close principle among others
  • Delve into the object-oriented programming concepts and find out how they are used in software applications
  • Develop an understanding of Creational Design Patterns and the different object creation methods that help you solve issues in software development
  • Use Structural Design Patterns and find out how objects and classes interact to build larger applications
  • Focus on the interaction between objects with the command and observer patterns
  • Improve the productivity and code base of your application using Python design patterns

About the Author

Chetan Giridhar is a technology leader, open source enthusiast, and Python developer. He has written multiple articles on technology and development practices in magazines such as LinuxForYou and Agile Record, and has published technical papers in the Python Papers journal. He has been a speaker at PyCon conferences such as PyCon India, Asia-Pacific, and New Zealand and loves working on real-time communications, distributed systems, and cloud applications. Chetan has been a reviewer at Packt Publishing and has contributed to books on IPython Visualizations and Core Python.

Table of Contents

  1. Introduction to Design Patterns
  2. The Singleton Design Pattern
  3. The Factory Pattern – Building Factories to Create Objects
  4. The Facade Pattern – Being Adaptive with Facade
  5. The Proxy Pattern – Controlling Object Access
  6. The Observer Pattern – Keeping Objects in the Know
  7. The Command Pattern – Encapsulating Invocation
  8. The Template Method Pattern – Encapsulating Algorithm
  9. Model-View-Controller – Compound Patterns
  10. The State Design Pattern
  11. AntiPatterns

商品描述(中文翻譯)

主要特點


  • 了解Python結構、創建和行為設計模式

  • 瞭解設計模式在軟體架構、設計和應用開發中解決現實世界問題的背景和應用

  • 通過Python v3.5中的示例實現,獲得實際經驗

書籍描述

隨著對優化軟體架構和設計的關注日益增加,軟體架構師需要考慮在架構或設計層面上對物件創建、程式碼結構和物件之間的互動進行優化。這確保軟體維護成本低且程式碼易於重用或適應變化。關鍵在於設計模式的可重用性和低維護成本。

在上一版《學習Python設計模式》的成功基礎上,第二版將幫助您使用Python的最新版本Python v3.5實現現實世界的場景。

我們首先從Python的角度介紹設計模式。隨著您閱讀本書的進展,您將詳細了解單例模式、工廠模式和外觀模式。之後,我們將介紹如何使用代理模式控制物件訪問。還包括觀察者模式、命令模式和複合模式。

通過閱讀本書,您將提升在軟體架構、設計和開發方面的專業能力。

您將學到什麼


  • 提升創建更好軟體架構的能力

  • 了解常見設計問題的解決方案

  • 探索軟體設計的基礎設計原則,如鬆耦合、好萊塢原則和開放封閉原則等

  • 深入了解物件導向編程概念,以及它們在軟體應用中的應用

  • 瞭解創建型設計模式以及幫助您解決軟體開發問題的不同物件創建方法

  • 使用結構型設計模式,瞭解物件和類別如何互動以構建更大的應用程式

  • 關注物件之間的互動,使用命令模式和觀察者模式

  • 使用Python設計模式提高應用程式的生產力和程式碼庫

關於作者

Chetan Giridhar 是一位技術領袖、開源愛好者和Python開發者。他在《LinuxForYou》和《Agile Record》等雜誌上撰寫了多篇有關技術和開發實踐的文章,並在《Python Papers》期刊上發表了技術論文。他曾在PyCon India、亞太地區和新西蘭等PyCon大會上擔任講者,並熱衷於實時通訊、分散式系統和雲應用程式。Chetan曾擔任Packt Publishing的審稿人,並為《IPython Visualizations》和《Core Python》等書籍做出了貢獻。

目錄


  1. 設計模式簡介

  2. 單例設計模式

  3. 工廠模式 - 建立工廠以創建物件

  4. 外觀模式 - 適應外觀

  5. 代理模式 - 控制物件訪問

  6. 觀察者模式 - 保持物件瞭解

  7. 命令模式 - 封裝調用

  8. 模板方法模式 - 封裝演算法

  9. 模型-視圖-控制器 - 複合模式

  10. 狀態設計模式

  11. 反模式