This repository has been archived by the owner on Feb 7, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 60
Design Patterns
Dragos STOICA edited this page Feb 19, 2017
·
6 revisions
-
Fundamental Design Patterns
- Delegation
- Interface
- Abstract Supercalss
- Interface and Abstract Class
- Immutable
- Marker Interface
- Proxy
-
Creational Patterns
- Factory Method
- Abstract Factory
- Builder
- Prototype
- Singleton
- Object Pool
-
Patitioning Patterns
- Filter
- Composite
- Read-Only Interface
-
Structural Patterns
- Adapter
- Iterator
- Bridge
- Façade
- Flyweight
- Dynamic Linkage
- Virtual Proxy
- Decorator
- Cache Managmenet
-
Behavioral Patterns
- Chain Of Responsibility
- Command
- Little Language
- Mediator
- Snapshot
- Observer
- State
- Null Object
- Strategy
- Template Method
- Visitor
-
Concurrency Patterns
- Single Threaded Execution
- Lock Object
- Guarded Suspension
- Balking
- Scheduler
- Read/Write Lock
- Producer-Consumer
- Two-Pahse Termination
- Double Buffering
- Asynchronous Processing
- Future
- Session
- Lock File
- Static Locking Order
- Optimistic Concurrency
- Thread Pool
- Ephemeral Cache Item
- Transaction Stack State
-
GRASP Patterns
- Low Coupling/High Cohesion
- Expert
- Creator
- Polymorphism
- Pure Fabrication
- Law Of Demeter
- Controller
-
GUI Design Patterns
- Window Per Task
- Interaction Style
- Explorable Interface
- Conversational Text
- Selection
- Form
- Direct Manipulation
- Limited Selection Size
- Ephemeral Feedback
- Disabled Irrelevant Things
- Supplementary Window
- Step-By-Step Instructions
-
Organizational Coding Patterns
- Accesor Method Name
- Anonymous Adapter
- Symbolic Constant Name
- Define Constants in Interface
- Switch
- Extend Super
- Intention Revealing Method
- Conditional Compilation
- Composed Method
- Checked versus Unchecked Exceptions
- Convert Exceptions
- Server Socket
- Client Socket
-
Code Optimization Patterns
- Hashed Adapter Objects
- Lazy Initialization
- Double Checked Locking
- Loop Unrolling
- Lookup Table
-
Robustness Coding Patterns
- Assertion Testing
- Guaranteed Cleanup
- Maximize Privacy
- Return New Objects from Accesor Method
- Copy Mutable Parameters
-
Testing Patterns
- Black Box Testing
- White Box Testing
- Unit Testing
- Integration Testing
- System Testing
- Regression Testing
- Acceptance Testing
- Clean Room Testing
-
Transaction Patterns
- ACID Transaction
- Composite Transaction
- Two-Phase Commit
- Audit Trail
-
Distributed Architecture Patterns
- Shared Object
- Object Request Brocker
- Object Replication
- Redundant Independent Objects
- Prompt Repair
- Mobile Agent
- Demilitarized Zone
- Process Repair
-
Distributed Computing Patterns
- Object Identifier
- Registry
- Protection Proxy
- Publish Subscribe
- Retransmission
- Mailbox
- Heavyweight/Lightweight Object
- Heartbeat
- Connection Multiplexing
-
Temporal Patterns
- Time Server
- Versioned Object
- Temporal Property
-
Database Patterns
- Persistence Layer
- CRUD
- Stale Object
- Type Convesion
- isDirty
- Lazy Retrieval
Ce(tte) œuvre est mise à disposition selon les termes de la Licence Creative Commons Attribution 4.0 International.