Created
May 8, 2019 06:43
-
-
Save zenius/5cf6d8d3c86c4c7d93293bad19818c4b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1. Project Layer - The Project layer provides the context of the solution. | |
This means the actual cohesive website or channel output from the implementation, | |
such as the page types, layout and graphical design. | |
It is on this layer that all the features of the solution are stitched together into a cohesive solution that fits the requirements. | |
Least stable layer | |
***Project layer adheres to "Stable Dependencies Principle" *** | |
2. Feature layer- contains concrete features of the solution as understood by the business owners and editors of the solution, | |
for example news, articles, promotions, website search, etc. | |
***Feature layer adheres to "Common Closure Principle" *** | |
3. Foundation Layer - Conceptually, it is helpful to think of all the frameworks and software you rely on | |
in your solution as foundation modules. This includes the Sitecore platform, .NET and other technology frameworks | |
such as Bootstrap, Foundation, jQuery etc. | |
Most Stable Layer | |
***Foundation layer adheres to "Acyclic Dependencies Principle" and the "Stable Abstractions Principle" *** | |
Acyclic Dependencies Principle - The dependency graph of packages must have no cycles. | |
Stable Abstraction Principle - Abstractness increases with stability. | |
http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment