Click here to Skip to main content
11,642,855 members (74,572 online)

Design and Architecture

 
Answercross post alert Pin
Shameel31-Aug-11 8:05
memberShameel31-Aug-11 8:05 
QuestionWebsite design help Pin
Simon_Whale25-Aug-11 23:07
memberSimon_Whale25-Aug-11 23:07 
AnswerRe: Website design help Pin
jschell26-Aug-11 8:39
memberjschell26-Aug-11 8:39 
GeneralRe: Website design help Pin
Simon_Whale26-Aug-11 21:56
memberSimon_Whale26-Aug-11 21:56 
GeneralRe: Website design help Pin
jschell28-Aug-11 7:17
memberjschell28-Aug-11 7:17 
AnswerRe: Website design help Pin
Shameel31-Aug-11 8:13
memberShameel31-Aug-11 8:13 
GeneralRe: Website design help Pin
dschumann13-Sep-11 15:20
memberdschumann13-Sep-11 15:20 
QuestionNeed help understanding how to initiate a Power OFF seq from BIos Pin
Member 390671822-Aug-11 15:10
memberMember 390671822-Aug-11 15:10 
AnswerRe: Need help understanding how to initiate a Power OFF seq from BIos Pin
Eddy Vluggen25-Aug-11 13:10
memberEddy Vluggen25-Aug-11 13:10 
QuestionGood programming practice Pin
tamasu19-Aug-11 7:57
membertamasu19-Aug-11 7:57 
AnswerRe: Good programming practice Pin
jschell21-Aug-11 11:03
memberjschell21-Aug-11 11:03 
QuestionDesign and Architecture is it a secret ?? why people keep hiding ?? Pin
capsulez17-Aug-11 13:08
membercapsulez17-Aug-11 13:08 
AnswerRe: Design and Architecture is it a secret ?? why people keep hiding ?? Pin
jschell18-Aug-11 12:54
memberjschell18-Aug-11 12:54 
QuestionIt's mediators all the way down. Pin
Leslie Sanford10-Aug-11 4:48
memberLeslie Sanford10-Aug-11 4:48 
I've been re-reading Arthur J. Riel's classic "Object-Oriented Design Heuristics."

One thing that I've found striking on this re-reading is how much Riel emphasizes the use of the mediator design pattern (though he doesn't refer to it as such). Specifically, it's heuristic 4.14:

"Objects which share lexical scope, should not have uses relationships between them."

What this means, basically, is that objects that exist at the same level of abstraction shouldn't be communicating with each other. Rather, they should be communicating with an object at a higher level of abstract which in turn takes the appropriate action and communicates any necessary info to the other objects at the lower level of abstraction, in other words, the mediator pattern.

(as an aside this heuristic conflicts somewhat with heuristic 4.13. Riel addresses this by suggesting the use of abstract classes, i.e. interfaces, as a means through which children communicate with their parents)

There are at least a couple of reasons for this heuristic. One, it promotes decoupling and reuse. If the objects at the same level of abstraction don't know about each other, they're more likely to be reuseable. Two, it lowers complexity. Instead of a many-to-many relationship between objects, you have a one-to-many, i.e. the mediator has a one-to-many relationship with its child objects. One-to-many relationships are easier to reason about and understand.

Following this heuristic, you can wind up with a layered approach in which each layer is made up of mediators. The child objects are in turn mediators to their child objects, and so on.

I like this idea in that it seems to strike a balance between a hyper object oriented approach in which objects are tangled together in a complex many-to-many web of connections and a strictly procedural approach in which nothing is connected. I'd never thought of mediator in this light before.
AnswerRe: It's mediators all the way down. Pin
Pete O'Hanlon10-Aug-11 4:53
protectorPete O'Hanlon10-Aug-11 4:53 
AnswerRe: It's mediators all the way down. Pin
jschell10-Aug-11 9:59
memberjschell10-Aug-11 9:59 
QuestionGeneral Architecture query - SSIS / XML / BizTalk [modified] Pin
bgallagher_lib2-Aug-11 22:18
memberbgallagher_lib2-Aug-11 22:18 
AnswerRe: General Architecture query - SSIS / XML / BizTalk Pin
jschell3-Aug-11 10:16
memberjschell3-Aug-11 10:16 
GeneralRe: General Architecture query - SSIS / XML / BizTalk Pin
bgallagher_lib4-Aug-11 1:22
memberbgallagher_lib4-Aug-11 1:22 
GeneralRe: General Architecture query - SSIS / XML / BizTalk Pin
jschell4-Aug-11 8:16
memberjschell4-Aug-11 8:16 
AnswerRe: General Architecture query - SSIS / XML / BizTalk Pin
Mycroft Holmes4-Aug-11 3:05
memberMycroft Holmes4-Aug-11 3:05 
GeneralRe: General Architecture query - SSIS / XML / BizTalk Pin
bgallagher_lib4-Aug-11 3:37
memberbgallagher_lib4-Aug-11 3:37 
GeneralRe: General Architecture query - SSIS / XML / BizTalk Pin
S Douglas25-Aug-11 15:28
memberS Douglas25-Aug-11 15:28 
QuestionMaster / Detail Datasource design quesiton Pin
David Mujica12-Jul-11 10:47
memberDavid Mujica12-Jul-11 10:47 
AnswerRe: Master / Detail Datasource design quesiton Pin
jschell12-Jul-11 10:56
memberjschell12-Jul-11 10:56 
GeneralRe: Master / Detail Datasource design quesiton Pin
David Mujica13-Jul-11 3:29
memberDavid Mujica13-Jul-11 3:29 
GeneralRe: Master / Detail Datasource design quesiton Pin
jschell13-Jul-11 9:00
memberjschell13-Jul-11 9:00 
GeneralRe: Master / Detail Datasource design quesiton Pin
Mycroft Holmes4-Aug-11 3:13
memberMycroft Holmes4-Aug-11 3:13 
GeneralRe: Master / Detail Datasource design quesiton Pin
may esguerra22-Aug-11 5:34
membermay esguerra22-Aug-11 5:34 
AnswerRe: Master / Detail Datasource design quesiton Pin
Nagy Vilmos2-Aug-11 22:41
memberNagy Vilmos2-Aug-11 22:41 
GeneralThank you Pin
David Mujica3-Aug-11 5:18
memberDavid Mujica3-Aug-11 5:18 
QuestionIntegrate CAS and ADFS Pin
_Zorro_9-Jun-11 0:18
member_Zorro_9-Jun-11 0:18 
QuestionWriting Windows Service to connect to Visual Source Safe and download the code Pin
meeram3952-Jun-11 23:40
membermeeram3952-Jun-11 23:40 
AnswerRe: Writing Windows Service to connect to Visual Source Safe and download the code Pin
Eddy Vluggen3-Jun-11 0:11
memberEddy Vluggen3-Jun-11 0:11 
GeneralRe: Writing Windows Service to connect to Visual Source Safe and download the code Pin
meeram3953-Jun-11 0:19
membermeeram3953-Jun-11 0:19 
GeneralRe: Writing Windows Service to connect to Visual Source Safe and download the code Pin
JV999916-Jun-11 3:27
memberJV999916-Jun-11 3:27 
QuestionMicrosoft Application Architecture Guide Pin
V.23-May-11 3:31
memberV.23-May-11 3:31 
AnswerRe: Microsoft Application Architecture Guide Pin
nbgangsta23-May-11 3:45
membernbgangsta23-May-11 3:45 
GeneralRe: Microsoft Application Architecture Guide Pin
V.23-May-11 3:50
memberV.23-May-11 3:50 
AnswerRe: Microsoft Application Architecture Guide Pin
jschell24-May-11 8:30
memberjschell24-May-11 8:30 
GeneralRe: Microsoft Application Architecture Guide Pin
digital man27-May-11 2:47
memberdigital man27-May-11 2:47 
GeneralRe: Microsoft Application Architecture Guide Pin
jschell27-May-11 9:04
memberjschell27-May-11 9:04 
AnswerRe: Microsoft Application Architecture Guide Pin
RobCroll29-May-11 19:39
memberRobCroll29-May-11 19:39 
GeneralRe: Microsoft Application Architecture Guide Pin
V.29-May-11 21:04
memberV.29-May-11 21:04 
AnswerRe: Microsoft Application Architecture Guide Pin
Eddy Vluggen8-Jul-11 13:19
memberEddy Vluggen8-Jul-11 13:19 
GeneralRe: Microsoft Application Architecture Guide Pin
V.9-Jul-11 22:33
memberV.9-Jul-11 22:33 
GeneralRe: Microsoft Application Architecture Guide Pin
GenJerDan3-Aug-11 6:13
memberGenJerDan3-Aug-11 6:13 
GeneralRe: Microsoft Application Architecture Guide Pin
V.3-Aug-11 19:54
memberV.3-Aug-11 19:54 
QuestionData Fusion Pin
TorstenH.18-May-11 3:44
memberTorstenH.18-May-11 3:44 
AnswerRe: Data Fusion Pin
thatraja11-Jun-11 14:31
mvpthatraja11-Jun-11 14:31 

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

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


Advertise | Privacy | Mobile
Web04 | 2.8.150731.1 | Last Updated 3 Aug 2015
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid