Last post Nov 18, 2014 04:50 AM by jammycakes
Nov 18, 2014 12:42 AM|ak731|LINK
I heard about layered architecture for building applications which includes layer for UI components, process components, api components, business layer, data access layer and entity layer. Is this a framework meant for enterprise applications?
Which is the best approach for creating MVC 5, Web API 2 applications?
Nov 18, 2014 04:50 AM|jammycakes|LINK
The layered architecture is a fairly widely used way of structuring .NET projects. It consists of the following:
The advantage of the layered architecture is that it is fairly well known so you'll see a lot of projects around that use it. Its disadvantage is that it is often badly implemented: it's very common to see projects introducing layers that are completely
unnecessary and just add friction without providing any value. Don't introduce layers just for the sake of having layers: if one of your layers only passes data from the layer below it to the layer above it, bypass it. Also, don't waste time trying to make
your data access layer swappable: it's only rarely necessary to swap out your ORM for, say, a document database, and trying to pre-empt it doesn't work.