Разбор ООП с Delphinum

12.77K
.
у ни чего неумеющего приложения нет функционала даже как понятия
имхо, он именно создает его
модуль блютуз не расширяет функционал телефона, он создает функционал взаимодействия с этим протоколом (по аналогии)
.
ramzes, ну если продолжить аналогию с телефоном, то в моем понимании приложение это ОСь телефона, а модули это приложения установленные на эту ОСь. ОСь без приложений ничего не умеет, а приложения расширяют ее функциональность.

Так же и здесь, есть некая базовая логика, которая декларирует алгоритм обработки запроса юзера на пример так:
1. Роутинг запроса по его URL
2. Выбор подходящего контроллера
3. Вызов контроллера
4. Рендеринг ответа
5. Возврат ответа

Без модулей этот алгоритм бесполезен, ведь именно модули позволят обработать запрос (через свои контроллеры).

В общем закончу движок, сразу поймешь о чем я (в нем нет ни капли фреймворков ;) )
.
(\/)____o_O____(\/)
Jahak, сам автор грамотно пишет, ещё захватывает некоторые смежные темы. ну и его рассуждения интересны
.
(\/)____o_O____(\/)
Delphinum, когда ожидать презентацию?
.
Koenig, для начала я выложу ссылку на сайт проекта (на самом деле это просто документация, оформленная в виде сайта), опишу на нем базовую архитектуру, объясню как писать модули, приведу пару примеров, выложу код на github и открою доступ к чатам.

Если появится комьюнити из людей, готовых писать модули, быстро быстро наклепаю несколько базовых модулей и начнем альфа тестирование, если народа не появится, потихоньку буду делать все сам.

После тестов выложу в бету.

Для начала будут следующие модули:
1. Юзеры и права доступа
2. Wiki движок, с помощью которого легко собрать себе лендинг или создать вику, кому что больше нравится
3. Доска объявлений

Далее уже как пойдет
.
КоханийВолодимир
Был у меня разговор с одним довольно таки опытным разрабом, говорил о фреймворках и тд. И тут зашел разговор о статических методах. Я сказал что всегда в моделях все методы делаю статическими, мне так проще их использовать в контроллерах, на что он сказал что это плохой тон, хотя так делать тоже можно.
Знатоки, в частности Дельфин, обьясните мне, когда стоит использовать статик а когда нет
.
КоханийВолодимир, это немного сложноватая тема, но ты цепляешь еще и понятие Модели и Контроллера, тем еще больше ее усложняя )

Для начала скажу о статике вообще: все методы класса по сути статичны, так как они не являются частью состояния объекта (тут нужно понимать, что такое состояние объекта). Просто когда метод вызывается из объекта он на него биндится (что такое биндинг метода тоже надо знать), а когда из класса, то биндится на класс. Вот вся разница между статикой и не статикой. Естественно методы, которые вызываются от имени объекта имеют доступ к его состоянию, а статичные методы такого доступа не имеют.

Использовать статику взамен обычных методов лишает ООП смысла, так как класс это не набор методов, а набор методов и свойств.
.
L!MP
КоханийВолодимир, статические методы годятся для фабрик объектов и для хранения состояния, общего для всех представителей класса. А в остальном они не нужны.
.
КоханийВолодимир
То есть когда я вызываю через статик то я тяну всю информацию с класса, а когда через экземпляр класса, то конкретно тот метод шо мне надо?
.
Что же касается статики на уровне модели, ну смотря что относить к модели. Вообще не исключено конечно, но обычно редко и как вспомогательные методы, а не как основные
Всего: 713