更新时间:2021-07-02 20:08:01
封面
版权信息
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Why subscribe?
Customer Feedback
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Downloading the color images of this book
Errata
Piracy
Questions
Demystifying Software Architecture Patterns
Envisioning the software-defined world
Software patterns
Why software patterns?
The prime ingredients of a software pattern
The types of software patterns
Software architecture patterns
Object-oriented architecture (OOA)
Component-based assembly (CBD) architecture
Domain-driven design (DDD) architecture
Client/server architecture
Multi-tier distributed computing architecture
Layered/tiered architecture
Event-driven architecture (EDA)
The major issues with EDA
Service-oriented architecture (SOA)
Service-inspired integration (SOI)
Event-driven service-oriented architecture
The EDA fundamental principles
The ED-SOA composite pattern benefits
Microservices architecture (MSA)
Event-driven microservices patterns
Space-based architecture (SBA)
Combining architecture patterns
Special-purpose architectures
Real-time context-aware prediction architecture
Summary
Additional reading materials
Client/Server Multi-Tier Architectural Patterns
Domain name service (DNS) server and DNS client
The workings of a DNS
Functional requirements in two-tier client-server patterns
Distribution of functional requirements in a client-server pattern
The remote data access client-server pattern
The remote presentation client-server pattern
The split logic data client-server architecture pattern
The three-tier pattern / multi-tier pattern client-server
The master-slave pattern
Issues in the master-slave pattern
Peer-to-peer patterns
Advantages of two-tier client-server patterns
Design considerations - when to use a two-tier client-server pattern?
Limitations of two-tier client-server patterns
Three-tier client-server architecture
Design considerations for using three-tier architecture
Design considerations for n-tier architecture
An example of n-tier architecture (shopping cart web application)
The distributed client-server architecture
Motivation for development of web application patterns
Workings of the MVC pattern
The ASP.Net framework
The model view presenter (MVP) pattern
The model-view-viewmodel (MVVM) pattern
Key advantages of the MVVM pattern
Design considerations for using the MVVM pattern
Prism
Design patterns for web application development
The front controller pattern
Spring framework
Object-Oriented Software Engineering Patterns
Key elements of OOD
Additional elements of OOD
Design principles
Single responsibility principle (SRP) – SOLID
Open and close principle – SOLID
Liskov substitution principle (LSP) – SOLID
Interface segregation principle (ISP) – SOLID
Dependency inversion principle (DIP) – SOLID
Other common design principles
OO design patterns
Creational design patterns
Factory method (virtual constructor)
Abstract factory (kit)
Builder
Prototype
Singleton
Structural design patterns
Adapter class (wrapper)
Adapter (object)
Bridge (handle/body)
Composite