Click here to Skip to main content
15,895,746 members
Home / Discussions / Design and Architecture
   

Design and Architecture

 
AnswerRe: Help: Which design method should I use for this particular case? Pin
Eddy Vluggen28-Dec-10 7:42
professionalEddy Vluggen28-Dec-10 7:42 
AnswerRe: Help: Which design method should I use for this particular case? Pin
RobCroll4-Jan-11 3:52
RobCroll4-Jan-11 3:52 
QuestionSome thoughts about virtual methods [modified] Pin
bleedingfingers22-Dec-10 22:46
bleedingfingers22-Dec-10 22:46 
AnswerRe: Some thoughts about virtual methods Pin
Luc Pattyn23-Dec-10 1:11
sitebuilderLuc Pattyn23-Dec-10 1:11 
GeneralRe: Some thoughts about virtual methods Pin
Xpnctoc30-Dec-10 17:31
Xpnctoc30-Dec-10 17:31 
GeneralRe: Some thoughts about virtual methods Pin
Bernhard Hiller30-Dec-10 20:13
Bernhard Hiller30-Dec-10 20:13 
AnswerRe: Some thoughts about virtual methods Pin
Pete O'Hanlon23-Dec-10 1:54
mvePete O'Hanlon23-Dec-10 1:54 
AnswerRe: Some thoughts about virtual methods Pin
Paul Michalik7-Jan-11 1:55
Paul Michalik7-Jan-11 1:55 
Have you looked at Aspect Oriented Programming (AOP)? It provides a great alternative to inheritance in cases like yours. Don't know how complicated that triplet(?) of Pre, Actual, and Post calls will become, but my experience tells me that the orchestration of overridden virtual calls of that kind quickly becomes a nightmare... A good half-way to AOP are design patterns like chain of responsibility - in many cases this gives you larger flexibility and better control over the behaviour than (often hacky) orchestration of calls to overridden methods.

By the way, if you are on native C++, have a look at the C++ idiom called Wrap http://www2.research.att.com/~bs/wrapper.pdf - an interesting possibility to get compile time configurable Aspect-like behaviour. Often (but not always) the flexibility supersedes the one of polymorphic inheritance based implementation, could have issues about interoperability though...

Cheers,

Paul
AnswerRe: Some thoughts about virtual methods Pin
dasblinkenlight13-Jan-11 4:51
dasblinkenlight13-Jan-11 4:51 
QuestionEstimation of server for launching a site Pin
nainakarri16-Dec-10 22:26
nainakarri16-Dec-10 22:26 
AnswerRe: Estimation of server for launching a site Pin
Richard MacCutchan16-Dec-10 22:57
mveRichard MacCutchan16-Dec-10 22:57 
GeneralRe: Estimation of server for launching a site Pin
nainakarri17-Dec-10 0:01
nainakarri17-Dec-10 0:01 
GeneralRe: Estimation of server for launching a site Pin
Richard MacCutchan17-Dec-10 1:21
mveRichard MacCutchan17-Dec-10 1:21 
AnswerRe: Estimation of server for launching a site Pin
Luc Pattyn17-Dec-10 1:33
sitebuilderLuc Pattyn17-Dec-10 1:33 
QuestionGuidance on solution and project structure. Pin
Brady Kelly9-Dec-10 19:24
Brady Kelly9-Dec-10 19:24 
AnswerRe: Guidance on solution and project structure. Pin
Luc Pattyn9-Dec-10 22:50
sitebuilderLuc Pattyn9-Dec-10 22:50 
GeneralRe: Guidance on solution and project structure. Pin
Brady Kelly10-Dec-10 8:20
Brady Kelly10-Dec-10 8:20 
GeneralRe: Guidance on solution and project structure. Pin
Luc Pattyn10-Dec-10 9:15
sitebuilderLuc Pattyn10-Dec-10 9:15 
GeneralRe: Guidance on solution and project structure. Pin
RobCroll26-Dec-10 3:13
RobCroll26-Dec-10 3:13 
AnswerRe: Guidance on solution and project structure. Pin
RobCroll26-Dec-10 3:34
RobCroll26-Dec-10 3:34 
AnswerRe: Guidance on solution and project structure. Pin
Bernhard Hiller30-Dec-10 20:24
Bernhard Hiller30-Dec-10 20:24 
QuestionDevelopment Methodology Pin
Civic067-Dec-10 5:06
Civic067-Dec-10 5:06 
AnswerRe: Development Methodology Pin
Richard MacCutchan10-Dec-10 2:59
mveRichard MacCutchan10-Dec-10 2:59 
AnswerRe: Development Methodology Pin
T M Gray10-Dec-10 10:17
T M Gray10-Dec-10 10:17 
RantRe: Development Methodology Pin
RobCroll26-Dec-10 3:08
RobCroll26-Dec-10 3:08 

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.