Login
Hello
(
Sign in
)
or
Register
Menu
Home
Products
Qor3
LanP3
Our Portfolio
Technologies
Testimonials
Industries
Case Studies
Our Services
Design
Development
Web
Blogs
ClearContent
About Lucid
Contact Us
Search
Syndication
Blogs
ClearContent
General
Software Patterns
Coalescent Design Patterns
Although referred to as (c)omposite Design patterns, I propose "coalescent". The differentiation will be needed as coalescent patterns are formalized as patterns in their own right. I believe there are going to be layers of coalescent patterns on top of what we know today, as the research into patterns continues.
Coalescent Design Patterns
= one or more Design Patterns merged into a larger pattern.
Therefore using the coalescent term for a framework, I would say.
"A Framework is coalescent design patterns providing extensibility through mainly abstract classes.
The aim is to form a structure for a problem domain, which can then be extended.
Architecturally speaking, the hierarchy from known OO constructs to the abstract idea of a “framework” can be modelled as:
Framework -> Coalescent Design Pattern -> Design Pattern -> Class
On top of this structure sits the application
Application is concrete implementation of Framework
The value of the Framework is that it provides the components and Application layers,
the architectural guidance needed to achieve the requirements.
It does not necessarily accomplish the specific domain requirements.
This brings in the question of the different types of frameworks and what they offer.
A framework that provides a complete abstraction of relatively generic concepts such as logging would be considered as Structural Frameworks,
and those that abstract a problem domain such as a booking system framework, are more specific and can thus be called Application Frameworks.
An Application Framework can utilize one or more Structural Frameworks.