0

I am just confused about the 3-tier architecture or n-tier so thats why I am asking this. my question is basic question and related to the concept of the implementation of these techniques.My project structure more or less like this(BLL, DAL, OBJ and 3 layer architecture). (I wanna write all bll,dal,object manually dont wanna use orm) a friend told me that this approch called "strongly type dataset".so far so good, but I dont use apply dataadapter or datatable or dataset,just returns custome object list(DTO or Object however u call) or what ever I need as just like the link I gave. is it correct nameing called this "strongly type dataset"??

Just what I wanna is apply interfaces to my "strongly type dataset"(which I am not agrree with this name !) approach .doing like this ,I am planing to simplified code writting and avoid repeating write same codes again and again.

however, As searching, I found another approach called DDD(Domain Driven Design (DDD) and learn that ddd and n-tire approch totally different logic.

anyway, my question is please someone tell me ,how many approchs are available.which is older which one is better.(of course it is depents on the project but what I mean , avoid repeating code,easy to use and easy learn curve,good abstraction from the database,those to which the basic things a developer want). the concept of the ddd,it is said "model",what is the model is it just dto or dal or bll.

Community
  • 1
  • 1
sakir
  • 3,391
  • 8
  • 34
  • 50
  • This question seems too broad. It seems to boil down to, "which architecture is best". We need more context of what type of system you are building in order to make any sensible answer. – Davin Tryon Sep 20 '13 at 09:09
  • I am glad to happy if u answer the this part" is it correct nameing called this "strongly type dataset"??" – sakir Sep 20 '13 at 09:16
  • 1
    DDD is a design methodology, whereas n-tier is an architecture, they're 2 completely different things and can work fine together or apart. They're not mutually exclusive. – Adrian Thompson Phillips Sep 20 '13 at 09:16
  • 1
    @user2460637 I'm not sure what question that is. Maybe you should post a new question showing some code and then ask if the code represents a 'strongly typed dataset'. – Davin Tryon Sep 20 '13 at 09:20
  • here is the codes,I just dont wanna be messy and dirty my question so thats why I gave a link.http://stackoverflow.com/questions/16937221/bll-dal-obj-and-3-layer-architecture – sakir Sep 20 '13 at 09:22
  • 1
    @user2460637 to answer your other DDD question, your domain model is a collection of classes that attempt to model your business domain. They are many things: entities, value objects, services, interfaces, etc. but they are definitely not DTOs or DAL. – Adrian Thompson Phillips Sep 20 '13 at 09:26
  • Adrian thank you response,but saying "to answer your other DDD question," which one u mentioned – sakir Sep 20 '13 at 09:29
  • there are lots of notions and I just lost inside the those notions.when u saying "bussines domain",What exactlly u mean ,project itself or what ?? – sakir Sep 20 '13 at 09:32

1 Answers1

1

That's quite a big question, you'd be better asking smaller questions and posting sample code in the future. Any subjective questions (like "What's better X or Y?") are better asked on the Stack Exchange Programmers site.

However there's still plenty that I can recommend. Looking at your code and questions about getting to grasps with n-tier architectures, I can definitely recommend forgetting about DDD for the moment. DDD sits on top of all this and is, like Design Patterns, a more advanced topic and something you don't need to worry about yet. I'd look into this later, when you have the basics sorted out.

I'd recommend, for now, to try an n-tier/3-tier architecture and install FxCop or use the code analysis tools built into Visual Studio 2012. This will help you learn how to produce good-looking code, whilst you learn the basics.

Community
  • 1
  • 1
Adrian Thompson Phillips
  • 6,893
  • 6
  • 38
  • 69