Page 1 of 1

Modular system design

Posted: Thu Apr 12, 2007 4:34 pm
by Theory?
When PHP 5 came out, a friend of mine who was much more into programming than me at that point tried to roughly explain the design principles behind a modular platform, whereby small modules that performed various functions would "connect" to a core framework that, by itself, has very little functionality.

I wasn't very clear on what he was talking about back then, but now I'm working on a large scale project and I feel like a system designed like that would be ideal.

I spent some time trying to reason out what elements a "core" would contain and how "modules" might be installed, etc.

I assume that the core would contain all the language variables and methods of translating customized markup (like BB Code, etc,) as well as the elements that determine the overall display of the site, things related to the DOM, global methods, global DB calls, XML parsers, and some sort of "Installation" system that allows modules to instruct the core how to display and interoperate with them.

Again, this is strictly guess work. I'm very vague on what the hell he was talking about. Perhaps someone can help me out here?

Thanks.

Posted: Fri Apr 13, 2007 2:04 am
by Christopher
Not much response because this is a topic that comprises most of the books written about software design. I would suggest searching for "Separation of Concerns" and "N-Tier" for more information on two massive sub-topics.

Posted: Fri Apr 13, 2007 3:41 am
by Theory?
I figured I was asking a really stupid and basic question, sorry, but thank you very much for the help.

Posted: Fri Apr 13, 2007 5:55 am
by Oren
Theory? wrote:I figured I was asking a really stupid and basic question, sorry, but thank you very much for the help.
No, it's not stupid at all nor is it a basic question.
It's a great question pal. The reason, I think, for the lack of replies is because the question is too general and also since it will take a full book to answer this question in depth.

Posted: Fri Apr 13, 2007 11:05 am
by Theory?
Oren wrote:
Theory? wrote:I figured I was asking a really stupid and basic question, sorry, but thank you very much for the help.
No, it's not stupid at all nor is it a basic question.
It's a great question pal. The reason, I think, for the lack of replies is because the question is too general and also since it will take a full book to answer this question in depth.
Or that. Speaking of books, are there any that tackle this topic pretty well?

Posted: Fri Apr 13, 2007 11:14 am
by bpopp
Code Complete is the best programming book ever written! Kidding, but it is my favorite (and I've read a lot). It's not PHP specific (most examples are from C), but most of the advice and suggestions are applicable to any language. I haven't read the second edition, but I suspect it brings in some object-oriented ideas.

Posted: Sat Apr 14, 2007 6:13 pm
by Ollie Saunders
Yeah your question is really general. Object Orientated programming is probably what you are looking for if you want modularisation because that's kind of the main purpose of it.