Programmer epiphany
Posted: Thu Aug 24, 2006 9:19 pm
back when I first started web development, coming from a desktop development background I was accustomed to using seperate files for most parts of an application, etc...
So naturally when I switched over to web development every page was a script and every action was a script.
As years progressed and I started using templating techniques, etc...I slowly made the transition into index.php (front controller type scripts) where index.php was the single applicaiton entry point...
Then I started appreciating seperate scripts to carry out actions, but keeping everything else inside a index.php (using classes/function API as a model) templates to seperate view from logic...
Using multiple switch statements, I had a IMHO clear applicaiton entry point and easy to follow code...
Each CASE would pull on model objects or push out templates based on certain page selector criteria, etc...
Then I started a personal project and my aim was to enhance my understanding of accessability thanks in part to an argument turned educational experience I had with iamsure
So I start thinking everything accessable, simple, intuitive designs, quick loading...think like Google...use CSS...slim HTML, etc...with the help of our own Oren, I was able to seriously chop my HTML files down in size...and made it pass transitional designs...something until now, I've always ignored in favour of fancy designs...
I spend most of my time thinking of application design, algorithm optimization, etc than I do about end user experiene, especially those with disabilities...
But it's nice to know I'm making some moral progress...
Anyways, on this project I've dropped any javascript which was essential to the application funcitonality (client side FORM checking) I've scrapped in favour for server side checking, validation, etc...I've always sanitized INPUT on the server, but never checked it...left that to javascript...
Today, I enounter a problem and it confuses me like mad...makes me realize my understanding of HTTP isn't quite what I thought it was...despite having read many articles on how their actually implemented...never mind used...thats life I guess
It forces me into re thinking my application design...as accessability is now an important issue...so instead of using a single application entry point...I will now use seperate files for most of the static entry points (about, faq, etc)
I moved away from this approach a good number of years back...because I found prototyping an applicaiton much faster using a single index.php...which it is...
But now, I'm thinking I'll use this approach all the time...single index.php to generate the prototype, hammer out some issues, then start to refactor into a more modular MVC design...I mean...it's even more efficient...
I know I've asked this quesiton in the past...but now I want more indepth answers...
Try and actually justify your answers...explain to me some caveats, positives and nagatives of both...
What design technique do you use...???
Cheers
So naturally when I switched over to web development every page was a script and every action was a script.
As years progressed and I started using templating techniques, etc...I slowly made the transition into index.php (front controller type scripts) where index.php was the single applicaiton entry point...
Then I started appreciating seperate scripts to carry out actions, but keeping everything else inside a index.php (using classes/function API as a model) templates to seperate view from logic...
Using multiple switch statements, I had a IMHO clear applicaiton entry point and easy to follow code...
Each CASE would pull on model objects or push out templates based on certain page selector criteria, etc...
Then I started a personal project and my aim was to enhance my understanding of accessability thanks in part to an argument turned educational experience I had with iamsure
So I start thinking everything accessable, simple, intuitive designs, quick loading...think like Google...use CSS...slim HTML, etc...with the help of our own Oren, I was able to seriously chop my HTML files down in size...and made it pass transitional designs...something until now, I've always ignored in favour of fancy designs...
I spend most of my time thinking of application design, algorithm optimization, etc than I do about end user experiene, especially those with disabilities...
But it's nice to know I'm making some moral progress...
Anyways, on this project I've dropped any javascript which was essential to the application funcitonality (client side FORM checking) I've scrapped in favour for server side checking, validation, etc...I've always sanitized INPUT on the server, but never checked it...left that to javascript...
Today, I enounter a problem and it confuses me like mad...makes me realize my understanding of HTTP isn't quite what I thought it was...despite having read many articles on how their actually implemented...never mind used...thats life I guess
It forces me into re thinking my application design...as accessability is now an important issue...so instead of using a single application entry point...I will now use seperate files for most of the static entry points (about, faq, etc)
I moved away from this approach a good number of years back...because I found prototyping an applicaiton much faster using a single index.php...which it is...
But now, I'm thinking I'll use this approach all the time...single index.php to generate the prototype, hammer out some issues, then start to refactor into a more modular MVC design...I mean...it's even more efficient...
I know I've asked this quesiton in the past...but now I want more indepth answers...
Try and actually justify your answers...explain to me some caveats, positives and nagatives of both...
What design technique do you use...???
Cheers