<?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"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Doctrine в CodeIgniter</title>
	<atom:link href="http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/</link>
	<description>Stories about Ruby, JavaScript, Objective-C and other cool tools</description>
	<lastBuildDate>Wed, 11 Jan 2012 18:45:17 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: BaRoN!</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2731</link>
		<dc:creator>BaRoN!</dc:creator>
		<pubDate>Wed, 16 Apr 2008 01:05:26 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2731</guid>
		<description>В CI таки да, не вполне комфортно - мышиная возня с написанием аналогичных оберток БД самостоятельно. Напоминает программирование в текстовом редакторе вместо полноценного IDE.
CakePHP вообще не смотрел даже, не ставилось цели кормить монстров )

Как Эккеля дочитаете - попробуйте с J2EE поиграться, если интересно еще более всеобъемлющее решение.</description>
		<content:encoded><![CDATA[<p>В CI таки да, не вполне комфортно &#8211; мышиная возня с написанием аналогичных оберток БД самостоятельно. Напоминает программирование в текстовом редакторе вместо полноценного IDE.<br />
CakePHP вообще не смотрел даже, не ставилось цели кормить монстров )</p>
<p>Как Эккеля дочитаете &#8211; попробуйте с J2EE поиграться, если интересно еще более всеобъемлющее решение.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FX Poster</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2730</link>
		<dc:creator>FX Poster</dc:creator>
		<pubDate>Wed, 16 Apr 2008 00:31:30 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2730</guid>
		<description>2. На все случаи жизни. Да и вообще - хороший ORM маленьким быть по определению не может. А то, что используется по умолчанию в CI и CakePHP - это просто детский лепет, который вообще юзать невозможно.
3. Масштабируемость вообще зависит от многих факторов. И я в этот разговор влезать особо не хочу - я никогда не делал сложных, высоконагруженных приложений. И вряд ли в ближайшее время буду. Хотя было бы интересно.

Так что пока я предпочитаю пользоваться (и изучать) тем, что реально очень удобно для меня. Doctrine входит в список таких &quot;интересных&quot; продуктов.</description>
		<content:encoded><![CDATA[<p>2. На все случаи жизни. Да и вообще &#8211; хороший ORM маленьким быть по определению не может. А то, что используется по умолчанию в CI и CakePHP &#8211; это просто детский лепет, который вообще юзать невозможно.<br />
3. Масштабируемость вообще зависит от многих факторов. И я в этот разговор влезать особо не хочу &#8211; я никогда не делал сложных, высоконагруженных приложений. И вряд ли в ближайшее время буду. Хотя было бы интересно.</p>
<p>Так что пока я предпочитаю пользоваться (и изучать) тем, что реально очень удобно для меня. Doctrine входит в список таких &#8220;интересных&#8221; продуктов.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BaRoN!</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2729</link>
		<dc:creator>BaRoN!</dc:creator>
		<pubDate>Wed, 16 Apr 2008 00:20:31 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2729</guid>
		<description>1. Под генерацией кода - именно сгенерировать модель из структуры БД. Видимо, проморгал, будем исправляться.
2. Лишнего много :-(
3. Масштабируемость всеж-таки недооценивается только до столкновения с чем-то невообразимым на текущий момент :-) Далее - полностью согласен, именно поэтому хороший код и должен стоять во главе угла - потому что его проще поддерживать. Но если хороший код не удовлетворяет запросам конечных пользователей - то по большму счету грош ему цена... Кэшируемость хорошая вещь, конечно, но:
* случается, что данные не только читают, но еще и записывают
* есть необходимость в постоянной валидации кэша, или же пользователь получает потенциально устаревшие данные
* кэши, особенно в памяти, имеют свойство заполняться и расходовать память неэффективно :-(

Хотя, конечно, баланс между первым и вторым каждый выбирает для себя сам. Оттого и придумывались разные языки программирования, разные фреймворки, разные базы данных... Можно, например, объектными базами пользоваться - хотя я не сталкивался, но что-то их никто не пользует, а вот ORM как адаптер - используют :-)</description>
		<content:encoded><![CDATA[<p>1. Под генерацией кода &#8211; именно сгенерировать модель из структуры БД. Видимо, проморгал, будем исправляться.<br />
2. Лишнего много :-(<br />
3. Масштабируемость всеж-таки недооценивается только до столкновения с чем-то невообразимым на текущий момент :-) Далее &#8211; полностью согласен, именно поэтому хороший код и должен стоять во главе угла &#8211; потому что его проще поддерживать. Но если хороший код не удовлетворяет запросам конечных пользователей &#8211; то по большму счету грош ему цена&#8230; Кэшируемость хорошая вещь, конечно, но:<br />
* случается, что данные не только читают, но еще и записывают<br />
* есть необходимость в постоянной валидации кэша, или же пользователь получает потенциально устаревшие данные<br />
* кэши, особенно в памяти, имеют свойство заполняться и расходовать память неэффективно :-(</p>
<p>Хотя, конечно, баланс между первым и вторым каждый выбирает для себя сам. Оттого и придумывались разные языки программирования, разные фреймворки, разные базы данных&#8230; Можно, например, объектными базами пользоваться &#8211; хотя я не сталкивался, но что-то их никто не пользует, а вот ORM как адаптер &#8211; используют :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FX Poster</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2725</link>
		<dc:creator>FX Poster</dc:creator>
		<pubDate>Wed, 16 Apr 2008 00:00:51 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2725</guid>
		<description>Что ты понимаешь под генерацией кода? Доктрина может тебе сгенерировать модель из структуры БД и наоборот. Описывать модель можно как в XML, так и Yaml.

По поводу документации - &lt;a href=&quot;http://www.phpdoctrine.org/&quot; rel=&quot;nofollow&quot;&gt;официальный сайт&lt;/a&gt;. Документация там отличная.

Насчет красоты - лично я считаю, что ты не прав. Красиво можно и нужно делать всё и всегда. Производительность достигается за счет кеширования всего и вся. А масштабируемость - это уж как повезет, но обычно - за счет продуманной архитектуры как раз масштабируемость и проявляется, а приложения написаные &quot;чтобы было производительно&quot; как раз хрен отмасштабируешь, да и кешировать на этом &quot;низком уровне&quot; сложнее, чем на более высоком.</description>
		<content:encoded><![CDATA[<p>Что ты понимаешь под генерацией кода? Доктрина может тебе сгенерировать модель из структуры БД и наоборот. Описывать модель можно как в XML, так и Yaml.</p>
<p>По поводу документации &#8211; <a href="http://www.phpdoctrine.org/" rel="nofollow">официальный сайт</a>. Документация там отличная.</p>
<p>Насчет красоты &#8211; лично я считаю, что ты не прав. Красиво можно и нужно делать всё и всегда. Производительность достигается за счет кеширования всего и вся. А масштабируемость &#8211; это уж как повезет, но обычно &#8211; за счет продуманной архитектуры как раз масштабируемость и проявляется, а приложения написаные &#8220;чтобы было производительно&#8221; как раз хрен отмасштабируешь, да и кешировать на этом &#8220;низком уровне&#8221; сложнее, чем на более высоком.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: BaRoN!</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2724</link>
		<dc:creator>BaRoN!</dc:creator>
		<pubDate>Tue, 15 Apr 2008 23:33:11 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2724</guid>
		<description>Идея неплоха, конечно, только сложно как-то все... Если брать ту же Java, и соответственно J2EE - там визуально это все делается и куча кода автогенерируется... И для масштабируемости - распределенные вычисления, на несколько серверов...
Не подскажете чего-нибудь почитать про doctrine, чтобы сжато и с примерами? :-)

А хорошее проектирование системы все-таки важнее производительности, при ряде условий: - наличие масштабируемости; - в самых &quot;узких местах&quot; по-моему можно и нужно делать предельно производительно, в ущерб красоте :-)</description>
		<content:encoded><![CDATA[<p>Идея неплоха, конечно, только сложно как-то все&#8230; Если брать ту же Java, и соответственно J2EE &#8211; там визуально это все делается и куча кода автогенерируется&#8230; И для масштабируемости &#8211; распределенные вычисления, на несколько серверов&#8230;<br />
Не подскажете чего-нибудь почитать про doctrine, чтобы сжато и с примерами? :-)</p>
<p>А хорошее проектирование системы все-таки важнее производительности, при ряде условий: &#8211; наличие масштабируемости; &#8211; в самых &#8220;узких местах&#8221; по-моему можно и нужно делать предельно производительно, в ущерб красоте :-)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sam</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2202</link>
		<dc:creator>Sam</dc:creator>
		<pubDate>Mon, 04 Feb 2008 15:04:31 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2202</guid>
		<description>Ещё один плюсик CI.</description>
		<content:encoded><![CDATA[<p>Ещё один плюсик CI.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FX Poster</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2198</link>
		<dc:creator>FX Poster</dc:creator>
		<pubDate>Sun, 03 Feb 2008 19:25:13 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2198</guid>
		<description>Мне - нет. Меня он очень многим не устраивает. :)</description>
		<content:encoded><![CDATA[<p>Мне &#8211; нет. Меня он очень многим не устраивает. :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MAX</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2196</link>
		<dc:creator>MAX</dc:creator>
		<pubDate>Sun, 03 Feb 2008 15:22:29 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2196</guid>
		<description>Как-то очень сложно... Разве Active Record Class в CodeIgniter не подходит?</description>
		<content:encoded><![CDATA[<p>Как-то очень сложно&#8230; Разве Active Record Class в CodeIgniter не подходит?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: FX Poster</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2190</link>
		<dc:creator>FX Poster</dc:creator>
		<pubDate>Sat, 02 Feb 2008 08:58:05 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2190</guid>
		<description>Можно :)

Если вкратце - мне известны 2 очень хороших ORM&#039;а, написанных на PHP. Которыми очень удобно пользоваться, которые ведут себя именно так, как ты этого ожидаешь (если ты запросил массив записей из бд - оно тебе и вернет массив ActiveRecord&#039;ов, а не обычный двумерный PHP&#039;шный массив), которые понимают разницу между записью и таблицей (в моделях CI такой разницы нет) и так далее.

Эти два ORM: &lt;a href=&quot;http://propel.phpdb.org/&quot; rel=&quot;nofollow&quot;&gt;Propel&lt;/a&gt; и &lt;a href=&quot;http://www.phpdoctrine.org/&quot; rel=&quot;nofollow&quot;&gt;Doctrine&lt;/a&gt;. Доктрина удобнее, как по мне, и функциональнее к тому же. В недостатки обоих можно записать &quot;тормознутость&quot;. Но если не делаешь сайт с, например, &gt;100k хитов в сутки - это всё равно не заметишь.

Для меня с некоторых пор хорошее проектирование системы значит гораздо больше, чем её прямая производительность, поэтому я выбираю такие решения.</description>
		<content:encoded><![CDATA[<p>Можно :)</p>
<p>Если вкратце &#8211; мне известны 2 очень хороших ORM&#8217;а, написанных на PHP. Которыми очень удобно пользоваться, которые ведут себя именно так, как ты этого ожидаешь (если ты запросил массив записей из бд &#8211; оно тебе и вернет массив ActiveRecord&#8217;ов, а не обычный двумерный PHP&#8217;шный массив), которые понимают разницу между записью и таблицей (в моделях CI такой разницы нет) и так далее.</p>
<p>Эти два ORM: <a href="http://propel.phpdb.org/" rel="nofollow">Propel</a> и <a href="http://www.phpdoctrine.org/" rel="nofollow">Doctrine</a>. Доктрина удобнее, как по мне, и функциональнее к тому же. В недостатки обоих можно записать &#8220;тормознутость&#8221;. Но если не делаешь сайт с, например, >100k хитов в сутки &#8211; это всё равно не заметишь.</p>
<p>Для меня с некоторых пор хорошее проектирование системы значит гораздо больше, чем её прямая производительность, поэтому я выбираю такие решения.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: MAX</title>
		<link>http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/comment-page-1/#comment-2186</link>
		<dc:creator>MAX</dc:creator>
		<pubDate>Sat, 02 Feb 2008 08:14:42 +0000</pubDate>
		<guid isPermaLink="false">http://blog.fxposter.org/2008/02/01/doctrine-codeigniter/#comment-2186</guid>
		<description>А поподробней? Что за зверь?</description>
		<content:encoded><![CDATA[<p>А поподробней? Что за зверь?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Page Caching using disk: enhanced

Served from: blog.fxposter.org @ 2012-02-11 08:19:18 -->
