CakePHP - Manual11/Components /wiki/Manual11/Components History/revisions of CakePHP/Manual11/Components en-us 2007-10-21 19:33:31 /wiki/Manual11/Components/show?time=2007-10-21+19%3A33%3A31 <div class="pageBefore"><img src="/wiki_/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" /></div><div class="page"> <b>Сравнение версий <a name=".manual11.components" href="/wiki/Manual11/Components" class="">/Manual&nbsp;11&nbsp;/&nbsp;Components</a> за <a href="/wiki/Manual11/Components?time=2007-10-21+19%3A33%3A31">2007-10-21 19:33:31</a> и <a href="/wiki/Manual11/Components">2008-03-31 10:23:55</a></b><br /> <br /> <b>Добавлено:</b><br /> <div class="additions">Парень, именуемый olle в&nbsp;IRC-канале однажды сказал: Компонент это&nbsp;маленький общий &laquo;контроллер&raquo;. Мы&nbsp;решили что&nbsp;это отличное определение. Главная цель &ndash; это&nbsp;возможность переиспользования. Компоненты &mdash; это&nbsp;то&nbsp;же самое для&nbsp;контроллеров, что&nbsp;и&nbsp;хелперы для&nbsp;отображений. Главное отличие лишь в&nbsp;том, что&nbsp;компоненты внедряются в&nbsp;рабочий код, а&nbsp;хелперы в&nbsp;представляемый код. Это&nbsp;отличие очень важно, чаще всего начинающих бейкеров, пытающихся, добиться возможности переиспользования сбивает с&nbsp;толку: Я&nbsp;пытаюсь сделать X, это&nbsp;должно быть компонентом или&nbsp;хелпером?! Ну, ответ очень прост, что&nbsp;делает X? Это&nbsp;рабочий код&nbsp;или код&nbsp;представления, может быть оба? Если это&nbsp;рабочий код, значит это&nbsp;компонент. Если это&nbsp;код представления, значит хелпер. Если оба, тогда.. ну&nbsp;это тогда оба&nbsp;и&nbsp;компонент, и&nbsp;хелпер. Примером последнего случая будет система аутентификации. Вам&nbsp;нужно будет входить, выходить, разделять доступ, и&nbsp;тестировать привилегии пользователей (действия: edit, add, del.. или&nbsp;url), это&nbsp;рабочий код, так&nbsp;что эта&nbsp;система должна быть компонентом. Но&nbsp;также вы&nbsp;хотите добавить какое-то содержимое в&nbsp;главное меню, когда пользователь вошел, а&nbsp;это уже&nbsp;код представления.</div><br /> <b>Удалено:</b><br /> <div class="deletions">Парень, именуемый olle в&nbsp;IRC-канале однажды сказал: Компонент это&nbsp;маленький общий &laquo;контроллер&raquo;. Мы&nbsp;решили что&nbsp;это отличное определение. Главная цель &ndash; это&nbsp;возможность переиспользования. Компоненты это&nbsp;то&nbsp;же самое для&nbsp;контроллеров, что&nbsp;и&nbsp;хелперы для&nbsp;отображений. Главное отличие лишь в&nbsp;том, что&nbsp;компоненты внедряются в&nbsp;рабочий код, а&nbsp;хелперы в&nbsp;представляемый код. Это&nbsp;отличие очень важно, чаще всего начинающих бейкеров, пытающихся, добиться возможности переиспользования сбивает с&nbsp;толку: Я&nbsp;пытаюсь сделать X, это&nbsp;должно быть компонентом или&nbsp;хелпером?! Ну, ответ очень прост, что&nbsp;делает X? Это&nbsp;рабочий код&nbsp;или код&nbsp;представления, может быть оба? Если это&nbsp;рабочий код, значит это&nbsp;компонент. Если это&nbsp;код представления, значит хелпер. Если оба, тогда.. ну&nbsp;это тогда оба&nbsp;и&nbsp;компонент, и&nbsp;хелпер. Примером последнего случая будет система аутентификации. Вам&nbsp;нужно будет входить, выходить, разделять доступ, и&nbsp;тестировать привилегии пользователей (действия: edit, add, del.. или&nbsp;url), это&nbsp;рабочий код, так&nbsp;что эта&nbsp;система должна быть компонентом. Но&nbsp;также вы&nbsp;хотите добавить какое-то содержимое в&nbsp;главное меню, когда пользователь вошел, а&nbsp;это уже&nbsp;код представления.</div></div> 2007-10-21 19:29:38 /wiki/Manual11/Components/show?time=2007-10-21+19%3A29%3A38 <div class="pageBefore"><img src="/wiki_/images/z.gif" width="1" height="1" border="0" alt="" style="display:block" align="top" /></div><div class="page"> <b>Сравнение версий <a href="/wiki/Manual11/Components" class="">/Manual&nbsp;11&nbsp;/&nbsp;Components</a> за <a href="/wiki/Manual11/Components?time=2007-10-21+19%3A29%3A38">2007-10-21 19:29:38</a> и <a href="/wiki/Manual11/Components?time=2007-10-21+19%3A33%3A31">2007-10-21 19:33:31</a></b><br /> <br /> <b>Добавлено:</b><br /> <div class="additions">Если вы&nbsp;думаете, что&nbsp;ваш компонент может быть полезен другим, добавьте его&nbsp;в&nbsp;<a href="http://cakeforge.org/" target="_blank" title="Внешняя ссылка (откроется в новом окне)" class="outerlink"><img src="/wiki_/themes/cake/icons/web.gif" alt="" border="0" />CakeForge</a>. Компонент который будет все&nbsp;больше и&nbsp;больше полезен обществу может однажды быть включен в&nbsp;основной дистрибутив CakePHP.</div><br /> <b>Удалено:</b><br /> <div class="deletions">Если вы&nbsp;думаете, что&nbsp;ваш компонент может быть полезен другим, добавьте его&nbsp;в&nbsp;<a href="http://cakeforge.org/" target="_blank" title="Внешняя ссылка (откроется в новом окне)" class="outerlink"><img src="/wiki_/themes/cake/icons/web.gif" alt="" border="0" />CakeForge</a>. Компонент который будет все&nbsp;больше и&nbsp;больше полезен обществу может однажды быть включен в&nbsp;основной дистрибутив <span class="missingpage">Cake&nbsp;PHP</span><a href="/wiki/CakePHP/edit?add=1" title="Создать эту страницу">?</a>.</div></div>