N-Tier Architecture in ASP.NET

When building n-tier application, in DAL and BLL, if there is any changes in the future, do we modify those classes we create earlier, or do we use inheritance? Also, when building asp.net project, would you recommend to use n-tier? It looks like you have to make a lot of effort to this.

http://www.mindstick.com/Articles/d36ceb0f-018c-4979-b2f5-a4a1e616cb5b/?N-Tier%20Architecture%20in%20ASP.NET
VBdotnet2005Asked:
Who is Participating?
 
käµfm³d 👽Connect With a Mentor Commented:
When building n-tier application, in DAL and BLL, if there is any changes in the future, do we modify those classes we create earlier, or do we use inheritance?
You would modify existing classes. Inheritance isn't intended for maintenance; it is intended for organization of your architecture.

Also, when building asp.net project, would you recommend to use n-tier?
Yes.

It looks like you have to make a lot of effort to this.
Sure. But the effort you put into designing the application now leads to savings in the maintenance of the project down the road. New development has a lot of time dedicated to design, but the actual coding does takes less than the whole of future maintenance.

Here's two scenarios to think about:

1.

When you originally designed the application, you had an existing Oracle database for the backend. It's now time to renew the annual support subscription for Oracle, but the bean counters notice that support for SQL server is much cheaper than Oracle, so they persuade the CIO to make the switch. How much easier do you think it would be to just swap out your DAL for one that talks to SQL server, rather than hunt for every place in the project you used an OracleConnection instance to replace with a SqlConnection instance?

2.

The A+ team that created the new Foomatic system all got new higher paying jobs outside of the company due to their stellar work on Foomatic. You were not involved with the Foomatic project during its creation, but now that everyone on that team is gone, you have inherited the maintenance of the project. Would it not be easier for you to know how the project was organized without even having to look at the code? Can you imagine how difficult it would be for you to pick up a new custom-code project that didn't follow any established standard(s)? Remember the kind of code you would write when you first started coding? Imagine you inherited "Joe the intern's" code.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.