I am a asp.net mvc programmer and if I want to start a project I do this:I make a class library named Model for my models.I make a class library named Infrastructure.Repository for database processesI make a class library named Application for business logic layerAnd finally I make a MVC project for the UI.But now some things are confusing me.Am I using 3-tier programming?If yes so what is n-tier programming and which one is better?If no so what is 3-tier programming?Some where I see that the tiers namings are DAL and BIZ.Which one is correct according to the naming convention?
For asp.net mvc is this a three tiered solution?
asp.net mvc;n tier
This is not a complete answer but it addresses one important point. Namely the difference between layers and tiers.It is important to understand the distinction between layers and tiers. Layers describe the logical groupings of the functionality and components in an application; whereas tiers describe the physical distribution of the functionality and components on separate servers, computers, networks, or remote locations. Although both layers and tiers use the same set of names (presentation, business, services, and data), remember that only tiers imply a physical separation. It is quite common to locate more than one layer on the same physical machine (the same tier). You can think of the term tier as referring to physical distribution patterns such as two-tier, three-tier, and n-tier... for more see: MSDN-Layered Application Design.