<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Rails vs. PHP: MVC or view-centric?</title>
	<atom:link href="http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/</link>
	<description>XML and the Web.</description>
	<pubDate>Sat, 10 May 2008 21:17:43 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: Bit a Bit - by kTzAR &#187; Ruby on Rails</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-24086</link>
		<dc:creator>Bit a Bit - by kTzAR &#187; Ruby on Rails</dc:creator>
		<pubDate>Sun, 11 Mar 2007 23:32:15 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-24086</guid>
		<description>[...] En la web de Ruby on Rails hay una serie de screencasts que muestran algos desarrollos. Parecen muy bonitos, pero toda la &#8220;magia&#8221; que tiene eso por debajo &#8220;no es gratis&#8221;, parafraseando a un profesor mío de la Universidad. Algo parecido se discute en un post en Quoderat:  Rails vs PHP: MVC or view Centric? [...]</description>
		<content:encoded><![CDATA[<p>[...] En la web de Ruby on Rails hay una serie de screencasts que muestran algos desarrollos. Parecen muy bonitos, pero toda la &#8220;magia&#8221; que tiene eso por debajo &#8220;no es gratis&#8221;, parafraseando a un profesor mío de la Universidad. Algo parecido se discute en un post en Quoderat:  Rails vs PHP: MVC or view Centric? [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Quoderat &#187; Sean McGrath&#8217;s obit for SOA</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-15609</link>
		<dc:creator>Quoderat &#187; Sean McGrath&#8217;s obit for SOA</dc:creator>
		<pubDate>Fri, 03 Nov 2006 12:55:12 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-15609</guid>
		<description>[...] I find the last point especially interesting. OO works well for developing many types of interactive applications, but maybe that&#8217;s just a fluke, and its principles are not applicable to the world at large. I&#8217;ve already mentioned that I find OO a poor fit for database-driven webapps, even though I consider myself primarily an OO developer. The real world doesn&#8217;t fit nicely into class hierarchies (yes, I know about aspect-oriented programming; in fact, I remember something similar for LISP called &#8220;facets&#8221; from late 1970&#8217;s or early 1980&#8217;s AI literature). [...]</description>
		<content:encoded><![CDATA[<p>[...] I find the last point especially interesting. OO works well for developing many types of interactive applications, but maybe that&#8217;s just a fluke, and its principles are not applicable to the world at large. I&#8217;ve already mentioned that I find OO a poor fit for database-driven webapps, even though I consider myself primarily an OO developer. The real world doesn&#8217;t fit nicely into class hierarchies (yes, I know about aspect-oriented programming; in fact, I remember something similar for LISP called &#8220;facets&#8221; from late 1970&#8217;s or early 1980&#8217;s AI literature). [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Upstream &#187; My infatuation with ruby</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-13295</link>
		<dc:creator>Upstream &#187; My infatuation with ruby</dc:creator>
		<pubDate>Wed, 13 Sep 2006 11:54:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-13295</guid>
		<description>[...] some of the discussion on the topic.. http://www.phpdeveloper.org/news/3920 http://clickablebliss.com/blog/2005/&#8230;_rails_part_1/ http://blade.nagaokaut.ac.jp/cgi-bin&#8230;ruby-talk/5334 http://www.megginson.com/blogs/quode&#8230;-view-centric/ [...]</description>
		<content:encoded><![CDATA[<p>[...] some of the discussion on the topic.. <a href="http://www.phpdeveloper.org/news/3920" rel="nofollow">http://www.phpdeveloper.org/news/3920</a> <a href="http://clickablebliss.com/blog/2005/&#8230;_rails_part_1/" rel="nofollow">http://clickablebliss.com/blog/2005/&#8230;_rails_part_1/</a> <a href="http://blade.nagaokaut.ac.jp/cgi-bin&#8230;ruby-talk/5334" rel="nofollow">http://blade.nagaokaut.ac.jp/cgi-bin&#8230;ruby-talk/5334</a> <a href="http://www.megginson.com/blogs/quode&#8230;-view-centric/" rel="nofollow">http://www.megginson.com/blogs/quode&#8230;-view-centric/</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve&#8217;s Log &#187; Blog Archive &#187; MVC and web apps: oil and water</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-2943</link>
		<dc:creator>Steve&#8217;s Log &#187; Blog Archive &#187; MVC and web apps: oil and water</dc:creator>
		<pubDate>Fri, 17 Mar 2006 20:43:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-2943</guid>
		<description>[...] This might just mean finding smarter ways to write view centric code, emphasizing DRY while avoiding spaghetti—consider the “article.php” in this URL. [...]</description>
		<content:encoded><![CDATA[<p>[...] This might just mean finding smarter ways to write view centric code, emphasizing DRY while avoiding spaghetti—consider the “article.php” in this URL. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Simone</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-2882</link>
		<dc:creator>Simone</dc:creator>
		<pubDate>Sun, 12 Mar 2006 03:24:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-2882</guid>
		<description>I agree with this article for the most part. In fact, I am trying to do some independent research about frameworks in general which will hopefully clarify when a framework stops relieving the developer of tedious tasks so they can concentrate on their problem and starts forcing the developer to fit the problem to the constraints of the framework.</description>
		<content:encoded><![CDATA[<p>I agree with this article for the most part. In fact, I am trying to do some independent research about frameworks in general which will hopefully clarify when a framework stops relieving the developer of tedious tasks so they can concentrate on their problem and starts forcing the developer to fit the problem to the constraints of the framework.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: jake</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-2807</link>
		<dc:creator>jake</dc:creator>
		<pubDate>Sat, 04 Mar 2006 04:47:45 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-2807</guid>
		<description>Obviously, .net is the way to go.</description>
		<content:encoded><![CDATA[<p>Obviously, .net is the way to go.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Quoderat &#187; PHP, XML, and Unicode</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-2780</link>
		<dc:creator>Quoderat &#187; PHP, XML, and Unicode</dc:creator>
		<pubDate>Wed, 01 Mar 2006 17:26:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-2780</guid>
		<description>[...] A couple of weeks ago, Tim Bray posted about PHP and received a firestorm of comments, just as I did when I posted about PHP and Ruby on Rails almost a year ago. PHP generates a lot of passion, for good or for ill: my posting still gets a new comment every week or two. [...]</description>
		<content:encoded><![CDATA[<p>[...] A couple of weeks ago, Tim Bray posted about PHP and received a firestorm of comments, just as I did when I posted about PHP and Ruby on Rails almost a year ago. PHP generates a lot of passion, for good or for ill: my posting still gets a new comment every week or two. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Grrr</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-2724</link>
		<dc:creator>Grrr</dc:creator>
		<pubDate>Thu, 23 Feb 2006 23:17:52 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-2724</guid>
		<description>&#62;&#62; I think that the answer has to do with the fact that web applications — whether producing HTML for people or XML for machines — are really about views, not objects. In anything but the most trivial cases, the views involve information from many different types of objects merged together to create a new object type.
---
I would disagree with that. Maybe my programming has not been proper MVC, but I have found that for something more complex than a couple of webpages put together - I spent about 6 months helping convert a legacy Foxpro app to PHP/MySQL - the separation is essential.
Imagine - we had like 10 developers in 3 countries, all trying to convert different parts of an around 120 screen Foxpro app (they defined the job amount by the "screens" converted).
Not separating Model into classes independant of controller/view pages would have been suicidal.

A typical page that user would call, would fulfill the role of Controller - getting input, validating it, and then depending on input and general app state, calling the appropriate actions in different models, assembling all the presentation info received into a structure, which then gets passed to a View (we used Smarty for Views, and it worked quite OK).

something like (pseudoPHP):

AddressEntryManagement.php (controller class):
...
if (user input action is delete &#38;&#38; $id is sane and some other checks)
{
   $addr = new AddressEntry($id);
   $addr-&#62;delete();
   $VIEW['result']='Success';
}
... // other actions

$tpl= new Smarty('AddressEntry.tpl');

$tpl-&#62;assign('DATA',$VIEW);
$tpl-&#62;display();
=============
not entirely proper MVC maybe, but definitely loads better than the default approach used of simply making all the DB calls in the same place as presentation and controller.</description>
		<content:encoded><![CDATA[<p>&gt;&gt; I think that the answer has to do with the fact that web applications — whether producing HTML for people or XML for machines — are really about views, not objects. In anything but the most trivial cases, the views involve information from many different types of objects merged together to create a new object type.<br />
&#8212;<br />
I would disagree with that. Maybe my programming has not been proper MVC, but I have found that for something more complex than a couple of webpages put together - I spent about 6 months helping convert a legacy Foxpro app to PHP/MySQL - the separation is essential.<br />
Imagine - we had like 10 developers in 3 countries, all trying to convert different parts of an around 120 screen Foxpro app (they defined the job amount by the &#8220;screens&#8221; converted).<br />
Not separating Model into classes independant of controller/view pages would have been suicidal.</p>
<p>A typical page that user would call, would fulfill the role of Controller - getting input, validating it, and then depending on input and general app state, calling the appropriate actions in different models, assembling all the presentation info received into a structure, which then gets passed to a View (we used Smarty for Views, and it worked quite OK).</p>
<p>something like (pseudoPHP):</p>
<p>AddressEntryManagement.php (controller class):<br />
&#8230;<br />
if (user input action is delete &amp;&amp; $id is sane and some other checks)<br />
{<br />
   $addr = new AddressEntry($id);<br />
   $addr-&gt;delete();<br />
   $VIEW['result']=&#8217;Success&#8217;;<br />
}<br />
&#8230; // other actions</p>
<p>$tpl= new Smarty(&#8217;AddressEntry.tpl&#8217;);</p>
<p>$tpl-&gt;assign(&#8217;DATA&#8217;,$VIEW);<br />
$tpl-&gt;display();<br />
=============<br />
not entirely proper MVC maybe, but definitely loads better than the default approach used of simply making all the DB calls in the same place as presentation and controller.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: litiumOnline &#187; it&#8217;s all about web app</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-2686</link>
		<dc:creator>litiumOnline &#187; it&#8217;s all about web app</dc:creator>
		<pubDate>Sat, 18 Feb 2006 04:58:39 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-2686</guid>
		<description>[...] to prevent this, i&#8217;ve tried not to use MVC yet but i ve tried a popular php template engine; named as smary but it&#8217;s sucks. it is complex(some say it&#8217;s a behemoth), slow, and doesn&#8217;t work when the page has java scripts and other irritating miscelleneous codes in it. today, i meet savant. i hope it is not as bad as smarty. as i took a glimpse on the codes, seems like even worse&#8230; other than php, there are web frameworks which is Ruby on Rails and Django. both are popular open source web application framework. hoping from page to page, i found out this page which is good to read and i love the comments coming from the rest of the readers. check it out: Rails vs. PHP: MVC or view-centric? [...]</description>
		<content:encoded><![CDATA[<p>[...] to prevent this, i&#8217;ve tried not to use MVC yet but i ve tried a popular php template engine; named as smary but it&#8217;s sucks. it is complex(some say it&#8217;s a behemoth), slow, and doesn&#8217;t work when the page has java scripts and other irritating miscelleneous codes in it. today, i meet savant. i hope it is not as bad as smarty. as i took a glimpse on the codes, seems like even worse&#8230; other than php, there are web frameworks which is Ruby on Rails and Django. both are popular open source web application framework. hoping from page to page, i found out this page which is good to read and i love the comments coming from the rest of the readers. check it out: Rails vs. PHP: MVC or view-centric? [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: smt</title>
		<link>http://www.megginson.com/blogs/quoderat/2005/06/11/rails-vs-php-mvc-or-view-centric/#comment-2680</link>
		<dc:creator>smt</dc:creator>
		<pubDate>Thu, 16 Feb 2006 23:57:58 +0000</pubDate>
		<guid isPermaLink="false">http://www.megginson.com/blogs/quoderat/?p=51#comment-2680</guid>
		<description>even if I love php, I feel the lack of what cpan is for perl and rails is now for ruby, i think the php comunity's real problem is that pear is not as good as php itself. too concerned of beeing perfectly designed... none uses it.</description>
		<content:encoded><![CDATA[<p>even if I love php, I feel the lack of what cpan is for perl and rails is now for ruby, i think the php comunity&#8217;s real problem is that pear is not as good as php itself. too concerned of beeing perfectly designed&#8230; none uses it.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
