Software design pattern
In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system.
- Comment
- enIn software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system.
- Has abstract
- enIn software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system. Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved. Patterns that imply mutable state may be unsuited for functional programming languages. Some patterns can be rendered unnecessary in languages that have built-in support for solving the problem they are trying to solve, and object-oriented patterns are not necessarily suitable for non-object-oriented languages. Design patterns may be viewed as a structured approach to computer programming intermediate between the levels of a programming paradigm and a concrete algorithm.
- Hypernym
- Solution
- Is primary topic of
- Software design pattern
- Label
- enSoftware design pattern
- Link from a Wikipage to an external page
- web.archive.org/web/20070617114432/http:/www.cix.co.uk/~smallmemory
- archive.org/details/ejbdesignpattern00mari
- www.cix.co.uk/~smallmemory/
- archive.org/details/isbn_9780321247148
- archive.org/details/patternsforparal0000matt
- www.dreamsongs.com/NewFiles/PatternsOfSoftware.pdf
- web.archive.org/web/20030801111358/http:/dreamsongs.com/NewFiles/PatternsOfSoftware.pdf
- archive.org/details/remotingpatterns0000volt
- docs.microsoft.com/en-us/dotnet/api/system.threading.interlocked%3Fview=net-5.0
- Link from a Wikipage to another Wikipage
- Abstract factory pattern
- Abstraction principle (programming)
- Active object
- Adapter pattern
- Addison-Wesley
- Aggregate pattern
- Algorithm
- Algorithmic skeleton
- Anti-pattern
- Apress
- Architectural pattern (computer science)
- Artificial intelligence
- Aspect-oriented programming
- Asynchronous method invocation
- Balking pattern
- Behavioral pattern
- Best practice
- Binding properties pattern
- Blackboard (design pattern)
- Blackboard system
- Boolean algebra
- Bridge pattern
- Builder pattern
- Business logic
- C++
- Canonical protocol pattern
- Category:Software design patterns
- Category:Software development
- Category:Software engineering
- Chain-of-responsibility pattern
- Christopher Alexander
- Class (computer science)
- Code Complete
- Command pattern
- Composite pattern
- Compute kernel
- Computer programming
- Computer science
- Concurrency pattern
- Connection pool
- Convolutional neural network
- Copy-on-write
- Creational pattern
- C Sharp (programming language)
- Debugging patterns
- Decorator pattern
- Dependency injection
- Design pattern
- Design Patterns
- Design Patterns (book)
- Design pattern Servant
- Distributed design patterns
- Documentation
- Double-chance function
- Double checked locking pattern
- Dylan (programming language)
- Enterprise Architecture framework
- Erich Gamma
- Event-Based Asynchronous Pattern
- Facade pattern
- Factory method pattern
- Fluent interface
- Flyweight pattern
- Front controller
- Functional programming
- GPU
- GRASP (object-oriented design)
- Guarded suspension
- Helper class
- HTTP Switchboard
- Indirection
- Information visualization
- Interaction
- Interaction design pattern
- Interaction diagram
- Interpreter pattern
- Iterator pattern
- Java (programming language)
- John Vlissides
- John Wiley & Sons
- Join-pattern
- Joshua Bloch
- Kent Beck
- Lazy initialization
- Lisp (programming language)
- List of software development philosophies
- List of software engineering topics
- Lock (computer science)
- Loose coupling
- Machine code
- Marker interface pattern
- Martin Fowler (software engineer)
- Matrix multiplication
- Mediator pattern
- Memento pattern
- Messaging pattern
- Module pattern
- Monitor (synchronization)
- Multiton pattern
- Mutual exclusion
- Null Object pattern
- O'Reilly Media
- Object (computer science)
- Object-oriented
- Object pool
- Object pool pattern
- Observer pattern
- OOPSLA
- Oxford University Press
- Pattern (architecture)
- Pattern language
- Pattern Languages of Programming
- Pattern-Oriented Software Architecture
- Pattern theory
- Paul Graham (computer programmer)
- Pedagogical patterns
- Peter Norvig
- Portland Pattern Repository
- Prentice Hall
- Programming idiom
- Programming paradigm
- Prototype pattern
- Proxy pattern
- Ralph Johnson (computer scientist)
- Reactor pattern
- Refactoring
- Resource Acquisition Is Initialization
- Reusability
- Richard Helm
- Scheduler pattern
- Scheduling (computing)
- Singleton pattern
- Software componentry
- Software design
- Software development methodology
- Software engineering
- Software reuse
- Source code
- Specification pattern
- State pattern
- Strategy pattern
- Structural pattern
- subscribe
- Template method pattern
- Thread pool
- Thread pool pattern
- Thread-Specific Storage
- Twin pattern
- Unified Modeling Language
- User interface
- Visitor pattern
- Ward Cunningham
- write lock pattern
- SameAs
- 4546895-3
- Designmönster
- Designmønster
- Design pattern
- Design pattern
- Design pattern
- Disainimuster
- Dizajn šema
- Entwurfsmuster
- Entwurfsmuster
- kVaF
- m.015zdr
- Mẫu thiết kế phần mềm
- Návrhový vzor
- Ontwerppatroon
- Ontwerpspatroon (rekenaarwetenskap)
- Padrão de projeto de software
- Padrón de deseño
- Patró de disseny
- Patron de conception
- Patrón de diseño
- Patrón de diseñu
- Patrono de designo
- Pola desain
- Programtervezési minta
- Projektavimo pavyzdys
- Projektēšanas šablons
- Q181156
- Računarska dizajn šema
- Software design pattern
- Software design patterns
- Suunnittelumalli
- Tasarım örüntüleri
- Wzorzec projektowy (informatyka)
- Σχεδιαστικά πρότυπα
- Бағдарламалық жасақтама өңдеу үлгісі
- Пројектни узорци
- Шаблони за дизайн
- Шаблони проєктування програмного забезпечення
- Шаблон проектирования
- Նախագծման ձևանմուշներ
- תבנית עיצוב
- الگوی طراحی نرمافزار
- نماذج التصميم (هندسة البرمجيات)
- डिज़ाइन पैटर्न (कंप्यूटर विज्ञान)
- வடிவமைப்புப் பாங்கு
- ഡിസൈൻ പാറ്റേൺ (കമ്പ്യൂട്ടർ ശാസ്ത്രം)
- ดีไซน์แพตเทิร์น
- デザインパターン (ソフトウェア)
- 设计模式 (计算机)
- 소프트웨어 디자인 패턴
- Subject
- Category:Software design patterns
- Category:Software development
- Category:Software engineering
- WasDerivedFrom
- Software design pattern?oldid=1117368062&ns=0
- WikiPageLength
- 44701
- Wikipage page ID
- 164952
- Wikipage revision ID
- 1117368062
- WikiPageUsesTemplate
- a
- Template:Abbr
- Template:Authority control
- Template:Citation needed
- Template:Cite book
- Template:Design Patterns patterns
- Template:Div col
- Template:Div col end
- Template:No
- Template:Refbegin
- Template:Refend
- Template:Reflist
- Template:Section link
- Template:Short description
- Template:Yes