Link to home
Start Free TrialLog in
Avatar of TungVan
TungVan

asked on

Best design pattern for a database application coded in C#



Hello all,

I would like to implement a large database application and I wonder if model-view-controller pattern is the best pattern to use. Please, let me know if there are better patterns to use in this case.


Thanks
Avatar of devsolns
devsolns

Patterns dont really work that way. Efficient and proper use of patterns are implemented through experience.  Your first attempt will likely have many flaws regardless of what pattern you follow.  If it is truly "large" i would advice having it architected by someone else and you learn as you go.
Avatar of TungVan

ASKER


Thanks devsolns,

I agree with you that proper use of pattern will come with experiences.

However, I need to tell my idea to my senior coworker next week (I already have MVC pattern in my mind). I just want to know if there are better patterns that I need to consider and investigate more.
TungVan, can you give me a little briefing on what this application does?
Avatar of TungVan

ASKER


devsolns,

It is basically a "purchase order" application for the company that i am working for. The database contains information about gains and expenses.
I agree with devsolns both about patterning and needing more information.

Here's a brief, direct description of the Model View Controller perspective.
http://ootips.org/mvc-pattern.html

The question
===
"I would like to implement a large database application and I wonder if model-view-controller pattern is the best pattern to use. Please, let me know if there are better patterns to use in this case."
===
Feels like trying to answer "which is better a diesel engine or gas engine?"  without knowing whether the engine will be used on a bicycle or a tug boat.

Conceptually, a level of separation between the database and the GUI is a GREAT idea.  But in terms of how to integrate database information with an application requires more specifics




It took me a couple of hours to submit that last response, sorry.

Are you using 2005 or 2003 VS?



Avatar of TungVan

ASKER


no problem...:)

I am using VS 2003.
I think the first and most important things to establish is the architecture from a high level.

-what are performance expectations.
-are you using physical or logical tiers?
-thick or thin client?
-will usage grow?  if so do you build to scale out (preferable over scaling up).
Avatar of TungVan

ASKER


>>-what are performance expectations.

I think it should be fairly quick because the database will grow quite fast.

>>-are you using physical or logical tiers?

I am not quite sure what those terms mean..

>>-thick or thin client?

The client connects to the database and retrieve information from it. It has little logic. So I would think to have thin client.

>>-will usage grow?

Yes, it will grow (more and more people in my company will use it.)

ASKER CERTIFIED SOLUTION
Avatar of gregoryyoung
gregoryyoung
Flag of Canada image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial