<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>codedifferent.de &#187; zend framework</title>
	<atom:link href="http://www.codedifferent.de/tag/zend-framework/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.codedifferent.de</link>
	<description>mobile &#124; mac &#124; business &#124; development blog</description>
	<lastBuildDate>Wed, 21 Jul 2010 13:02:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Ruby on Rails oder Zend Framework &#8211; die Entscheidung!</title>
		<link>http://www.codedifferent.de/2008/03/22/ruby-on-rails-oder-zend-framework-die-entscheidung/</link>
		<comments>http://www.codedifferent.de/2008/03/22/ruby-on-rails-oder-zend-framework-die-entscheidung/#comments</comments>
		<pubDate>Sat, 22 Mar 2008 08:20:57 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[community]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[rest]]></category>
		<category><![CDATA[ror]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[ruby-on-rails]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://www.codedifferent.de/2008/03/22/ruby-on-rails-oder-zend-framework-die-entscheidung/</guid>
		<description><![CDATA[Das Zend Framework ist seit dem letzten Artikel zu der Entscheidung Zend oder Rails nach anfänglichem Stocken im Entwicklungsprozess bei Version 1.5 angekommen. Auch Ruby on Rails hat mit dem Sprung auf inzwischen Version 2.0.2 einen großen Sprung gemacht. Wer ist also mein persönlicher Sieger in diesem Rennen? Welches Framework eignet sich aus meiner Sicht [...]]]></description>
			<content:encoded><![CDATA[<p>Das Zend Framework ist <a href="http://www.codedifferent.de/2007/04/20/weitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework/">seit dem letzten Artikel</a> zu der Entscheidung Zend oder Rails nach anfänglichem Stocken im Entwicklungsprozess bei <a href="http://www.zendframework.com/">Version 1.5</a> angekommen. Auch Ruby on Rails hat mit dem Sprung auf inzwischen <a href="http://www.rubyonrails.com/">Version 2.0.2</a> einen großen Sprung gemacht. Wer ist also mein persönlicher Sieger in diesem Rennen? Welches Framework eignet sich aus meiner Sicht am Besten für die Entwicklung von Web-Projekten. </p>
<p>Um es vorweg zu nehmen: Mein persönlicher Favorit ist Ruby on Rails!</p>
<p>Doch die brennende Frage ist natürlich das WARUM:</p>
<ul>
<li><strong>1. Ruby statt PHP:</strong> Natürlich klingt es unlogisch die eigenen mühsam erarbeiten PHP-Kenntnisse links liegen zu lassen und sich in eine junge rein objektorientierte Sprache einzuarbeiten. Doch, und das bestätigte mir bisher jeder ehemalige Java- oder PHP-Entwickler &#8211; die Mühe ist nicht groß Ruby zu lernen und der Nutzen ist überwältigend. Ruby ermöglicht es eleganten, gut lesbaren und gut wartbaren Code zu schreiben.</li>
<li><strong>2. Vision-Driven-Community:</strong> Egal ob in den Mailing-Listen oder auf Entwickerkonferenzen, die Grundeinstellung und Vision der Community ist freundlich, ansteckend, international und produktiv. Es geht darum gemeinsam etwas neues, besseres und eleganteres zu schaffen &#8230; siehe auch die <a href="http://blip.tv/file/566943">Keynote der RailsConf 2007 von David Heinemeier Hansson</a> in Portland.</li>
<li><strong>3. Skalierbarkeit:</strong> Inzwischen wurde vielfach bewiesen, dass Rails-Applikationen sich gut skalieren lassen auch wenn die Performance etwas schlechter sein soll. Doch unter dem Strich braucht man so etwas mehr Hardware als bei einem Zend Framework Projekt, doch dafür gewinnt man eine schnellere Entwicklung und bessere Wartbarkeit. Twitter, Qype und Xing machen es vor. Insbesondere die Twitter-Entwickler plaudern gerne über die Skalierbarkeit, wie <a href="http://www.railsconfeurope.com/presentations/railsconfeurope07/re7_brittselvitelle.pdf">Britt Selvitelle auf der RailsConf Europe 2007</a> in Berlin.</li>
<li><strong>4. REST:</strong> Mit der Version 2.0 wurde die Programmierung nach dem REST-Prinzip konsequent im Ruby on Rails Framework implementiert. Damit lassen sich einfach Schnittstellen zu anderen Systemen schaffen &#8211; und werden alte, aber gute und durchdachte Features des http-Protokolls wiederentdeckt. Siehe auch das PDF von b-simple zum Thema <a href="http://www.b-simple.de/documents">RESTful-Rails.</a></li>
<li><strong>5. Datenbank-Migrationen:</strong> Rails bietet mit Migrations ein mächtiges System Datenbankstrukturen einfach und in Einzelschritten skriptbasiert zu erstellen &#8211; und, wenn nötig diese Einzelschritte auch wieder rückgängig zu machen. Für die Entwicklung nach dem Prinzip des &#8220;Pragmatic Programming&#8221; ist das ein perfektes Werkzeug um Tabellen zu erstellen, zu erweitern und mit Daten zu füllen. Für das Zend Framework ist ein solches <a href="http://mingwu.wordpress.com/2008/01/07/rails-migration-in-php-zend-framework/">Feature als Proposal</a> angedacht &#8230; doch wann es kommt und wie es funktionieren wird ist noch völlig unklar.</li>
<li><strong>6. Test-Driven-Development:</strong> Rails ist weiterhin Vorreiter was die eingebauten <a href="http://wiki.rubyonrails.com/rails/pages/HowToDoTestDrivenDevelopmentInRails">Test-Infrastruktur für automatisierte Unit-Tests, Functional-Tests und Integration-Test</a>. Zend Framework versucht zwar mit dem ZFTestManager aufzuholen &#8211; doch noch immer fehlt eine schlüssige Integration in das Framework.</li>
<li><strong>7. MultiView:</strong> In Rails lassen sich Inhalte je nach Anfragetyp darstellen &#8211; sollen sie nun als CSV-Datei, RSS-Feed, HTML-Seite oder als spezielle iPhone-Seite Angezeigt werden &#8211; SlashDotDash zeigt wie man der eigenen Rails-Applikation ein <a href="http://www.slashdotdash.net/articles/2007/12/04/iphone-on-rails-creating-an-iphone-optimised-version-of-your-rails-site-using-iui-and-rails-2">iPhone-optimiertes User-Interface</a> verpassen kann.</li>
</ul>
<p>Bestimmte Projekte eignen sich allerdings nur bedingt für Rails:<span id="more-109"></span></p>
<ul>
<li><strong>&#8230; wenn die Applikation auf einem Shared-Hoste-Webspace laufen muss:</strong> Rails wurde zur Realisierung von professionellen Webapplikationen konzipiert. Ein einfaches Webspace-Paket bei einem Hoster wie 1und1 oder Strato eignet sich nicht für das Deployment einer Rails-Applikation. Shared-Hoster wie DreamHost bilden dabei eine Ausnahme. Allerdings gibt es inzwischen eine Reihe von speziellen Hostern die von der Privat- bis zur Enterprise-Lösung spezifische Hosting-Lösungen anbieten. Und natürlich läuft Rails bestens auf einem eigenen Server bzw. Root-Server. Ezra Zygmuntowicz, einer der Gründer von EngineYard, Bruce Tate und Clinton Begin  plaudern in dem neuen Buch <a href="http://www.pragprog.com/titles/fr_deploy">Deploying Rails Applications: A Step-by-Step Guide</a> aus dem Nähkästchen.</li>
<li><strong>&#8230; wenn die Applikation auf einem Windows Server laufen muss: </strong>Ruby on Rails wurde bisher für Unix-basierte Systeme optimiert. Das bedeutet, dass es schnell üblichen Web-Server-Infrastrukturen wie die verschiedenen Linux-Distributionen oder auch Mac OS X läuft. Auf einem Windows Server muss man jedoch mit einem Zentel der Performance rechnen. Daher ist ein Deployment auf einem Windows Server nur in kleinen Intranet-Installationen praktikabel.</li>
<li><strong>&#8230; wenn man einfach nur mal schnell das aktuelle Datum auf einer statischen Website eingeblendet werden soll.</strong> Dann lohnt sich weder die Nutzung von Rails wie auch von Zend Framework. <img src='http://www.codedifferent.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
<li><strong>&#8230; wenn man als Entwickler kein Wort Englisch versteht.</strong> Zwar gibt es inzwischen eine ganze Reihe Rails-Büchern in deutscher Sprache. Doch ohne Englischkenntnisse fehlt der Anschluss zur internationalen Community und lassen sich die vielen Tips und Tricks, die in Blogs gepostet werden oder Screen-Casts wie <a href="http://peepcode.com/">Peepcode</a> oder <a href="http://railscasts.com/">Railscasts</a> nicht nutzen. Im Zweifel hilft da nur eines: Englisch lernen <img src='http://www.codedifferent.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </li>
</ul>
<p>My2Cents</p>




	<a rel="nofollow"  href="http://twitter.com/home?status=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21%20-%20http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F" title="Twitter"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;bm_description=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21&amp;plugin=soc" title="MisterWong.DE"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.webnews.de/einstellen?url=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;title=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21" title="Webnews.de"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/webnews.png" title="Webnews.de" alt="Webnews.de" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://yigg.de/neu?exturl=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;exttitle=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21" title="Yigg"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/yiggit.png" title="Yigg" alt="Yigg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;title=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21&amp;bodytext=Das%20Zend%20Framework%20ist%20seit%20dem%20letzten%20Artikel%20zu%20der%20Entscheidung%20Zend%20oder%20Rails%20nach%20anf%C3%A4nglichem%20Stocken%20im%20Entwicklungsprozess%20bei%20Version%201.5%20angekommen.%20Auch%20Ruby%20on%20Rails%20hat%20mit%20dem%20Sprung%20auf%20inzwischen%20Version%202.0.2%20einen%20gro%C3%9Fen%20Sprung%20" title="Digg"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;t=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21" title="Facebook"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;title=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21&amp;notes=Das%20Zend%20Framework%20ist%20seit%20dem%20letzten%20Artikel%20zu%20der%20Entscheidung%20Zend%20oder%20Rails%20nach%20anf%C3%A4nglichem%20Stocken%20im%20Entwicklungsprozess%20bei%20Version%201.5%20angekommen.%20Auch%20Ruby%20on%20Rails%20hat%20mit%20dem%20Sprung%20auf%20inzwischen%20Version%202.0.2%20einen%20gro%C3%9Fen%20Sprung%20" title="del.icio.us"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F" title="Technorati"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;title=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21&amp;annotation=Das%20Zend%20Framework%20ist%20seit%20dem%20letzten%20Artikel%20zu%20der%20Entscheidung%20Zend%20oder%20Rails%20nach%20anf%C3%A4nglichem%20Stocken%20im%20Entwicklungsprozess%20bei%20Version%201.5%20angekommen.%20Auch%20Ruby%20on%20Rails%20hat%20mit%20dem%20Sprung%20auf%20inzwischen%20Version%202.0.2%20einen%20gro%C3%9Fen%20Sprung%20" title="Google Bookmarks"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.wikio.com/vote?url=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F" title="Wikio"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/wikio.png" title="Wikio" alt="Wikio" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;submitHeadline=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21&amp;submitSummary=Das%20Zend%20Framework%20ist%20seit%20dem%20letzten%20Artikel%20zu%20der%20Entscheidung%20Zend%20oder%20Rails%20nach%20anf%C3%A4nglichem%20Stocken%20im%20Entwicklungsprozess%20bei%20Version%201.5%20angekommen.%20Auch%20Ruby%20on%20Rails%20hat%20mit%20dem%20Sprung%20auf%20inzwischen%20Version%202.0.2%20einen%20gro%C3%9Fen%20Sprung%20&amp;submitCategory=science&amp;submitAssetType=text" title="Yahoo! Buzz"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/yahoobuzz.png" title="Yahoo! Buzz" alt="Yahoo! Buzz" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fwww.codedifferent.de%2F2008%2F03%2F22%2Fruby-on-rails-oder-zend-framework-die-entscheidung%2F&amp;title=Ruby%20on%20Rails%20oder%20Zend%20Framework%20-%20die%20Entscheidung%21" title="StumbleUpon"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/stumbleupon.png" title="StumbleUpon" alt="StumbleUpon" class="sociable-hovers" /></a>


<br/><br/>]]></content:encoded>
			<wfw:commentRss>http://www.codedifferent.de/2008/03/22/ruby-on-rails-oder-zend-framework-die-entscheidung/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Weitreichende Entscheidungen: Ruby on Rails oder PHP &amp; Zend Framework</title>
		<link>http://www.codedifferent.de/2007/04/20/weitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework/</link>
		<comments>http://www.codedifferent.de/2007/04/20/weitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework/#comments</comments>
		<pubDate>Fri, 20 Apr 2007 17:55:07 +0000</pubDate>
		<dc:creator>Christian</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[ruby-on-rails]]></category>
		<category><![CDATA[web-entwicklung]]></category>
		<category><![CDATA[zend]]></category>
		<category><![CDATA[zend framework]]></category>

		<guid isPermaLink="false">http://www.codedifferent.de/2007/04/20/weitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework/</guid>
		<description><![CDATA[Als Web-Developer hat man die Qual der Wahl: Welche Script-Sprache lernt man? Welche eignet sich für die zukünftigen Projekte am Besten? Welches Framework erleichtert einem die Arbeit und nimmt einem lästige Basisarbeit ab? Dazu kommt noch, dass Script-Sprachen und Frameworks meist von Open-Source-Communities entwickelt werden. Hinter PHP steht neben der Open Source Community auch noch [...]]]></description>
			<content:encoded><![CDATA[<p>Als Web-Developer hat man die Qual der Wahl: Welche Script-Sprache lernt man? Welche eignet sich für die zukünftigen Projekte am Besten? Welches Framework erleichtert einem die Arbeit und nimmt einem lästige Basisarbeit ab? Dazu kommt noch, dass Script-Sprachen und Frameworks meist von Open-Source-Communities entwickelt werden. Hinter PHP steht neben der Open Source Community auch noch die Firma Zend als eine treibende Kraft. Es stellt sich also dazu noch die Frage: Welche Projekte entwickeln sich am besten weiter? Gegenüber der etablierten Lösung PHP entwickelt sich die Community insbesondere um das in der Scriptsprache Ruby geschriebene Framework Rails rasant und verspricht klares, strukturierte, elegantes und vor allem schnelles Coding. Welcher Weg ist daher der richtige?<span id="more-28"></span><br />
Wenn man nach der aktuellen Verbreitung geht müsste man sich für PHP entscheiden &#8211; laut Zend arbeiten mehr als 4,5 Mio. Entwickler weltweit mit PHP. Auch die meisten aktiven Web-Open-Source Projekte arbeiten derzeit mit PHP als Scriptsprache: <a href="http://www.joomla.org/">Joomla</a> oder <a href="http://typo3.org">TYPO3</a> als Content-Management-Systeme, das Shopsystem <a href="http://www.oscommerce.org/">osCommerce</a> oder die Blogsoftware <a href="http://wordpress.org/">WordPress</a>, mit der auch dieser Blog läuft, sind alle in PHP geschrieben worden. Auch ich bin so zu PHP gekommen, denn um diese Open-Source-Software einzusetzen und insbesondere um sie nach den eigenen Wünschen zu erweitern, kommt man um PHP nicht herum.<br />
Wenn es allerdings um die Realisierung von neuartigen Softwarelösungen geht, die von Grund auf gecodet werden müssen, sieht die Welt bei genauerem Hinsehen etwas anders aus. Dann wird nämlich schnell klar, dass PHP als Scriptsprache zwar sehr mächtig ist, man als Entwickler jedoch viele wiederkehrende Herausforderungen immer wieder mit eigenem Code lösen muss. Viele dieser Probleme, wie die Datenbankanbindung, das URL-Mapping, den Umgang mit Sessions, die Authentifizierung von Nutzern oder das Caching von Inhalten sind für jede Webanwendung ähnlich. Jeder Entwickler kann sich so seine eigenen Lösungen basteln und versuchen diese Lösungen so zu verallgemeinern, dass er die Lösungen wiederverwenden kann &#8230; oder er nutzt ein Framework, bei dem einige Entwickler bzw. eine ganze Community diese Vorarbeit schon geleistet haben. Ein solches Framework entwickelt derzeit Zend für PHP5. Das Projekt hat in den letzten Monaten wieder Fahrt aufgenommen und das <a href="http://framework.zend.com/">Zend Framework</a> ist inzwischen bei dem Beta-Release 0.9.2 angekommen. Der erste Release Candidate 1.0.0 soll noch Mitte diesen Jahres erscheinen. Für den professionellen Einsatz ist das Framework derzeit daher noch mit mehr als Vorsicht zu genießen &#8211; bietet jedoch eine Fülle von Erleichterungen für die Entwicklung von Applikationen.<br />
Bei der Beschäftigung mit dem Zend Framework bin ich immer wieder über &#8220;Ruby on Rails&#8221; oder <a href="http://devzone.zend.com/node/view/id/1281">&#8220;the Rails way&#8221;</a> gestossen. Wie das immer so ist, weiss man im Nachhinein gar nicht, warum man sich mit dieser Technologie nicht schon viel früher befasst hat <img src='http://www.codedifferent.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Denn die Vorteile sind auf den ersten Blick überwältigend: Mit Ruby on Rails, kurz RoR oder Rails, lassen sich elegant Applikationen in kurzer Zeit entwickeln. Der Code ist Dank der von Smalltalk inspirierten Sprache Ruby und intelligenten Konventionen für die Programmierung sehr einfach lesbar. Rails schafft es dank verschiedener Rapid-Prototyping-Mechanismen, wie dem Scaffolding in Migrations-Scripten für Datenbankveränderungen, Web-Applikationen on the fly zu entwickeln &#8211; ganz im Sinne des <a href="http://agilemanifesto.org/">Agile Software Development</a>.<br />
Eleganterer Code, schnellere Entwicklung, Rapid Prototyping bei der Software Entwicklung &#8230; klingt alles wunderbar. Doch hat die Sache einen Haken, außer dass meine PHP-Bücher im Schrank verstauben? Und wieso nutzt dann nicht alle Welt Rails anstatt PHP?</p>
<ul>
<li>Rails ist noch jung &#8230; das Framework wurde erst 2004 von dem dänischen Programmierer <a href="http://www.loudthinking.com/">David Heinemeier Hansson</a> veröffentlicht. Doch die Community wächst rasant. Und man darf Rails nicht mit PHP vergleichen, sonder mit dem Zend Framework, dass sich derzeit noch im Betastadium befindet. Das ist also kein Nachteil, sondern ein Vorteil.
</li>
<li>Rails läuft nicht bei jedem Hoster &#8230; hier hat PHP derzeit natürlich die Nase vorne &#8211; denn PHP gehört inzwischen bei jedem ernst zu nehmenden Hoster mit dazu. Doch die Zahl der <a href="http://nubyonrails.com/articles/2007/02/24/the-host-with-the-most">Shared-Hoster mit Rails-Unterstützung</a> wächst. Für professionelle Projekte braucht man jedoch meist sowieso einen eigenen Server &#8211; und hier lässt sich Ruby on Rails problemlos installieren. Diesen Aspekt muss man sicher individuell abwägen.
</li>
<li>Rails hat derzeit eine geringere Performance &#8230; <a href="http://www.tonyspencer.com/2006/11/26/ruby-on-rails-scalability-is-it-a-problem/">bestätigen viele Entwickler</a>, allerdings ist eine Skalierung auch mehrere Server ohne Probleme möglich. Die extreme Reduzierung des Entwicklungsaufwands bedingt höhere Hardwareanforderungen. Das muss in der Projektplanung beachtet werden &#8211; ist jedoch in meinen Augen kein Nachteil.
</li>
</ul>
<p>Interessantes Detail der Ruby on Rails Community ist, dass viele der Entwickler auf dem Mac arbeiten. Und auch Apple begeistert sich für Ruby on Rails. Schon jetzt steckt in Mac OS X die Scriptsprache Ruby und mit <a href="http://weblog.rubyonrails.org/2006/8/7/ruby-on-rails-will-ship-with-os-x-10-5-leopard">Leopard (OS X 10.5) wird jeder Mac auch mit Rails ausgeliefert</a>.</p>
<p>Die Entscheidung muss jeder Entwickler selbst treffen &#8230; Ich werde in nächster Zeit auf alle Fälle von meinen Erfahrungen in der Welt der Edelsteine und Schienen berichten. </p>
<p>So, let&#8217;s get on Rails <img src='http://www.codedifferent.de/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  </p>
<p>Quellen: <a href="http://agilemanifesto.org/">Agile Manifesto 2001</a>, <a href="http://www.rubyonrails.org/">Ruby on Rails</a>, <a href="http://framework.zend.com/">Zend Framework</a></p>




	<a rel="nofollow"  href="http://twitter.com/home?status=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework%20-%20http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F" title="Twitter"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/twitter.png" title="Twitter" alt="Twitter" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.mister-wong.de/addurl/?bm_url=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;bm_description=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework&amp;plugin=soc" title="MisterWong.DE"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/misterwong.png" title="MisterWong.DE" alt="MisterWong.DE" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.webnews.de/einstellen?url=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;title=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework" title="Webnews.de"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/webnews.png" title="Webnews.de" alt="Webnews.de" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://yigg.de/neu?exturl=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;exttitle=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework" title="Yigg"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/yiggit.png" title="Yigg" alt="Yigg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://digg.com/submit?phase=2&amp;url=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;title=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework&amp;bodytext=Als%20Web-Developer%20hat%20man%20die%20Qual%20der%20Wahl%3A%20Welche%20Script-Sprache%20lernt%20man%3F%20Welche%20eignet%20sich%20f%C3%BCr%20die%20zuk%C3%BCnftigen%20Projekte%20am%20Besten%3F%20Welches%20Framework%20erleichtert%20einem%20die%20Arbeit%20und%20nimmt%20einem%20l%C3%A4stige%20Basisarbeit%20ab%3F%20Dazu%20kommt%20noch%2C%20dass%20S" title="Digg"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/digg.png" title="Digg" alt="Digg" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.facebook.com/share.php?u=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;t=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework" title="Facebook"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/facebook.png" title="Facebook" alt="Facebook" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://delicious.com/post?url=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;title=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework&amp;notes=Als%20Web-Developer%20hat%20man%20die%20Qual%20der%20Wahl%3A%20Welche%20Script-Sprache%20lernt%20man%3F%20Welche%20eignet%20sich%20f%C3%BCr%20die%20zuk%C3%BCnftigen%20Projekte%20am%20Besten%3F%20Welches%20Framework%20erleichtert%20einem%20die%20Arbeit%20und%20nimmt%20einem%20l%C3%A4stige%20Basisarbeit%20ab%3F%20Dazu%20kommt%20noch%2C%20dass%20S" title="del.icio.us"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/delicious.png" title="del.icio.us" alt="del.icio.us" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://technorati.com/faves?add=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F" title="Technorati"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/technorati.png" title="Technorati" alt="Technorati" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.google.com/bookmarks/mark?op=edit&amp;bkmk=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;title=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework&amp;annotation=Als%20Web-Developer%20hat%20man%20die%20Qual%20der%20Wahl%3A%20Welche%20Script-Sprache%20lernt%20man%3F%20Welche%20eignet%20sich%20f%C3%BCr%20die%20zuk%C3%BCnftigen%20Projekte%20am%20Besten%3F%20Welches%20Framework%20erleichtert%20einem%20die%20Arbeit%20und%20nimmt%20einem%20l%C3%A4stige%20Basisarbeit%20ab%3F%20Dazu%20kommt%20noch%2C%20dass%20S" title="Google Bookmarks"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/googlebookmark.png" title="Google Bookmarks" alt="Google Bookmarks" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.wikio.com/vote?url=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F" title="Wikio"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/wikio.png" title="Wikio" alt="Wikio" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://buzz.yahoo.com/submit/?submitUrl=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;submitHeadline=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework&amp;submitSummary=Als%20Web-Developer%20hat%20man%20die%20Qual%20der%20Wahl%3A%20Welche%20Script-Sprache%20lernt%20man%3F%20Welche%20eignet%20sich%20f%C3%BCr%20die%20zuk%C3%BCnftigen%20Projekte%20am%20Besten%3F%20Welches%20Framework%20erleichtert%20einem%20die%20Arbeit%20und%20nimmt%20einem%20l%C3%A4stige%20Basisarbeit%20ab%3F%20Dazu%20kommt%20noch%2C%20dass%20S&amp;submitCategory=science&amp;submitAssetType=text" title="Yahoo! Buzz"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/yahoobuzz.png" title="Yahoo! Buzz" alt="Yahoo! Buzz" class="sociable-hovers" /></a>
	<a rel="nofollow"  href="http://www.stumbleupon.com/submit?url=http%3A%2F%2Fwww.codedifferent.de%2F2007%2F04%2F20%2Fweitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework%2F&amp;title=Weitreichende%20Entscheidungen%3A%20Ruby%20on%20Rails%20oder%20PHP%20%26amp%3B%20Zend%20Framework" title="StumbleUpon"><img src="http://www.codedifferent.de/wp-content/plugins/sociable/images/stumbleupon.png" title="StumbleUpon" alt="StumbleUpon" class="sociable-hovers" /></a>


<br/><br/>]]></content:encoded>
			<wfw:commentRss>http://www.codedifferent.de/2007/04/20/weitreichende-entscheidungen-ruby-on-rails-oder-php-zend-framework/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
