Почему классы не структурированы по типам?

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Аватара пользователя
yvgorshkov
Сообщения: 72
Зарегистрирован: 2012.06.20, 09:25
Откуда: Чебоксары
Контактная информация:

Почему классы не структурированы по типам?

Сообщение yvgorshkov »

Например: общие классы, классы для компонентов, классы для модулей, для контроллеров, для моделей, представлений, виджетов, фильтров и так-далее.

Как понимать такое разделение классов по папкам?
Аватара пользователя
Ryadnov
Сообщения: 456
Зарегистрирован: 2010.06.20, 00:38
Откуда: Санкт-Петербург

Re: Почему классы не структурированы по типам?

Сообщение Ryadnov »

Вы о чем? О Yii или о вашем приложении?
Аватара пользователя
yvgorshkov
Сообщения: 72
Зарегистрирован: 2012.06.20, 09:25
Откуда: Чебоксары
Контактная информация:

Re: Почему классы не структурированы по типам?

Сообщение yvgorshkov »

о Yii
Аватара пользователя
Ryadnov
Сообщения: 456
Зарегистрирован: 2010.06.20, 00:38
Откуда: Санкт-Петербург

Re: Почему классы не структурированы по типам?

Сообщение Ryadnov »

1. Зачем вам вообще знать, в какой папке лежит тот или иной класс?? 0_о
2. А что не так?
общие классы, классы для компонентов - framework/base
классы для модулей - framework/base
для контроллеров - framework/web, framework/web/actions
для моделей - framework/base,
представлений - framework/web, framework/web/renderers
виджетов - framework/web/widgets
фильтров - framework/web/filters
Аватара пользователя
yvgorshkov
Сообщения: 72
Зарегистрирован: 2012.06.20, 09:25
Откуда: Чебоксары
Контактная информация:

Re: Почему классы не структурированы по типам?

Сообщение yvgorshkov »

Трудно понять, из
http://www.yiiframework.com/doc/api/1.1
что из этих классов компонент, что модуль.
Аватара пользователя
yvgorshkov
Сообщения: 72
Зарегистрирован: 2012.06.20, 09:25
Откуда: Чебоксары
Контактная информация:

Re: Почему классы не структурированы по типам?

Сообщение yvgorshkov »

Уточняю вопрос: что можно писать в онфигурации в разедел 'components' и в 'modules'. Т.е. интересует как можно узнать список всех возможных компонентов и модулей.
Аватара пользователя
Ryadnov
Сообщения: 456
Зарегистрирован: 2010.06.20, 00:38
Откуда: Санкт-Петербург

Re: Почему классы не структурированы по типам?

Сообщение Ryadnov »

в Yii есть только 1 модуль (gii), остальные вы скачиваете или пишите сами - http://yiiframework.ru/doc/guide/ru/basics.module

в components настраиваете стандартные или добавляете свои - http://yiiframework.ru/doc/guide/ru/basics.component
стандартные (возможно не полный список, смотрите Subclasses http://www.yiiframework.com/doc/api/1.1 ... nComponent):

Код: Выделить всё

            'session'=>array(
                'class'=>'CHttpSession',
            ),
            'assetManager'=>array(
                'class'=>'CAssetManager',
            ),
            'user'=>array(
                'class'=>'CWebUser',
            ),
            'themeManager'=>array(
                'class'=>'CThemeManager',
            ),
            'authManager'=>array(
                'class'=>'CPhpAuthManager',
            ),
            'clientScript'=>array(
                'class'=>'CClientScript',
            ),
            'widgetFactory'=>array(
                'class'=>'CWidgetFactory',
            ),
            'coreMessages'=>array(
                'class'=>'CPhpMessageSource',
                'language'=>'en_us',
                'basePath'=>YII_PATH.DIRECTORY_SEPARATOR.'messages',
            ),
            'db'=>array(
                'class'=>'CDbConnection',
            ),
            'messages'=>array(
                'class'=>'CPhpMessageSource',
            ),
            'errorHandler'=>array(
                'class'=>'CErrorHandler',
            ),
            'securityManager'=>array(
                'class'=>'CSecurityManager',
            ),
            'statePersister'=>array(
                'class'=>'CStatePersister',
            ),
            'urlManager'=>array(
                'class'=>'CUrlManager',
            ),
            'request'=>array(
                'class'=>'CHttpRequest',
            ),
            'format'=>array(
                'class'=>'CFormatter',
            ),
Аватара пользователя
yvgorshkov
Сообщения: 72
Зарегистрирован: 2012.06.20, 09:25
Откуда: Чебоксары
Контактная информация:

Re: Почему классы не структурированы по типам?

Сообщение yvgorshkov »

Спасибо за ответы.
Здесь есть уточнения, по компонентам Yii.
http://appossum.com/appsite/techdetail/yii-ccomponent1
Dr0ID
Сообщения: 27
Зарегистрирован: 2010.04.04, 20:02
Откуда: Новосибирск
Контактная информация:

Re: Почему классы не структурированы по типам?

Сообщение Dr0ID »

yvgorshkov писал(а):Спасибо за ответы.
Здесь есть уточнения, по компонентам Yii.
http://appossum.com/appsite/techdetail/yii-ccomponent1
yvgorshkov писал(а):Да, и я бы еще и функцию назвал бы не setAttributes, а readAttributesFromPOST …
Извините, все не прочитал, времени нет. Но вот эту цитату хотелось бы прокомментировать.
И правильно, что нет метода readAttributesFromPOST т.к. это не обязанность модели (нарушает как минимум SRP) -- загружать атрибуты из POST запроса. Заполнение атрибутов из POST запроса это не единственный кейс, еще есть консольные приложения, какая бизнес логика оперирующая атрибутами и т.д.
AlTiger
Сообщения: 199
Зарегистрирован: 2012.01.15, 18:37

Re: Почему классы не структурированы по типам?

Сообщение AlTiger »

readAttributesFromPOST
readAttributesFromGET
readAttributesFromCOOKIE
readAttributesFromREQUEST
etc

Его нет еще потому что оч много букаф
Dr0ID
Сообщения: 27
Зарегистрирован: 2010.04.04, 20:02
Откуда: Новосибирск
Контактная информация:

Re: Почему классы не структурированы по типам?

Сообщение Dr0ID »

AlTiger, а зачем все это? Только интерфейс раздувать и наделять не свойственными объекту методами.
AlTiger
Сообщения: 199
Зарегистрирован: 2012.01.15, 18:37

Re: Почему классы не структурированы по типам?

Сообщение AlTiger »

А кто сказал что так нужно делать? я просто предложил вариант для решения этой "проблемы"
Ответить