Click here to Skip to main content
15,905,144 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
AnswerRe: Avoiding Circular References with Application Architecture Pin
led mike21-Jan-09 5:13
led mike21-Jan-09 5:13 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Leftyfarrell21-Jan-09 13:34
Leftyfarrell21-Jan-09 13:34 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Jon Rista21-Jan-09 18:34
Jon Rista21-Jan-09 18:34 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Leftyfarrell22-Jan-09 1:27
Leftyfarrell22-Jan-09 1:27 
GeneralRe: Avoiding Circular References with Application Architecture Pin
led mike22-Jan-09 4:59
led mike22-Jan-09 4:59 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Jon Rista22-Jan-09 5:35
Jon Rista22-Jan-09 5:35 
GeneralRe: Avoiding Circular References with Application Architecture Pin
led mike22-Jan-09 6:08
led mike22-Jan-09 6:08 
AnswerRe: Avoiding Circular References with Application Architecture Pin
Jon Rista22-Jan-09 5:11
Jon Rista22-Jan-09 5:11 
The key thing is removing the direct dependency cycle. Those are the things that can really kill you during maintenance or extension. Indirect dependencies are not nearly as worriesom, however there are times that you might want to keep things completely independant. In the case of cross-cutting concerns, as long as your utilizing your common API, and injecting the dependencies via configuration (this is called Inversion of Control and Dependency Injection), then the implementation can still vary independently from all the code that is actually using your cross-cutting API.

Logging, validation, instrumentation, security, etc. are all generally cross-cutting, and making changes to how they are used has the broadest reach of any change in most systems. If you change how your DAL works...you only really need to modify the next layer up...and possibly only part of it, to compensate. However, if you change how your logging works, you will likely have to touch just about every method you have written. When you sit down to write your API's for your cross-cutting frameworks, think about them for a while and make sure you cover as many scenarios, even if they don't quite exist yet, to prevent yourself from having to modify your CCAPI's in the future. Once you have the API...you are free to implement it however you want. You can utilize your standard DAL for logging, validation, and localization...or you can utilize a custom DAL specific to them. Whichever one meets your needs and minimizes impact to long term maintenance.
AnswerRe: Avoiding Circular References with Application Architecture Pin
Moim Hossain22-Jan-09 23:41
Moim Hossain22-Jan-09 23:41 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Jon Rista23-Jan-09 4:47
Jon Rista23-Jan-09 4:47 
QuestionRe: Avoiding Circular References with Application Architecture Pin
led mike23-Jan-09 5:23
led mike23-Jan-09 5:23 
AnswerRe: Avoiding Circular References with Application Architecture Pin
Jon Rista23-Jan-09 5:44
Jon Rista23-Jan-09 5:44 
GeneralRe: Avoiding Circular References with Application Architecture Pin
led mike23-Jan-09 7:00
led mike23-Jan-09 7:00 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Jon Rista23-Jan-09 7:57
Jon Rista23-Jan-09 7:57 
QuestionRe: Avoiding Circular References with Application Architecture Pin
led mike23-Jan-09 9:19
led mike23-Jan-09 9:19 
AnswerRe: Avoiding Circular References with Application Architecture Pin
Jon Rista23-Jan-09 9:26
Jon Rista23-Jan-09 9:26 
GeneralRe: Avoiding Circular References with Application Architecture Pin
led mike23-Jan-09 10:53
led mike23-Jan-09 10:53 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Jon Rista23-Jan-09 11:28
Jon Rista23-Jan-09 11:28 
GeneralRe: Avoiding Circular References with Application Architecture Pin
Leftyfarrell6-Feb-09 8:27
Leftyfarrell6-Feb-09 8:27 
QuestionDisign of Web service Pin
mpavas14-Jan-09 0:11
mpavas14-Jan-09 0:11 
AnswerRe: Disign of Web service Pin
Jonathan Davies14-Jan-09 5:25
Jonathan Davies14-Jan-09 5:25 
AnswerRe: Disign of Web service Pin
Moim Hossain22-Jan-09 23:43
Moim Hossain22-Jan-09 23:43 
GeneralRe: Disign of WIndows Service Pin
mpavas24-Jan-09 17:09
mpavas24-Jan-09 17:09 
QuestionDocumenting Design Pin
K. Shaffer13-Jan-09 14:13
K. Shaffer13-Jan-09 14:13 
AnswerRe: Documenting Design Pin
Pete O'Hanlon13-Jan-09 22:39
mvePete O'Hanlon13-Jan-09 22:39 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.