I would like to know the difference between framework and architecture.
for example: dotnetnuke
is the framework and mvc
is the architecture.
so if we take both of this as a example, can anyone tell me difference between them?
Want to know which one is using when and where?
Which is good in terms of user requirement satisfaction?
Simply put -- architecture is theory, framework is implementation.
Frameworks is a collection of classes and tools that help you developing great softwares ... like .net framework or Qt.
Architecture is entirely different : it refers to design pattern or how an application or a framework is organized. What are the modules that compose it and how they communicate together !
Let me illustrate the difference.
Framework:
Architecture:
Architecture is about style, abstract idea, flow, methodology, concept. Framework is something which implements the style, idea, concept etc..or makes it easier to implement it. example,
Architecture: Every component should have standard pluggable interfaces and it should be possible to connect any component to any other.
Framework: Then lego building blocks can be the framework.
Library: some readymade combinations of blocks that would work as the pillars.
Application: A building structure using the pillars and other building blocks(application).
Also to note the difference between design and architecture:
MVC is pattern as supposed to an architecture, it may be used as a technique in your architecture though. Framework as others have said is a collection of tools you use to implement your architecture. In other words framework is the tool-belt.