Магический метод __get в статическом классе

Fortop

Новичок
сродни вопросу о том когда использовать константы вместо переменных. Верно
Где-то так.

я чем люблю кодинг - тем, что там нельзя быть неправым )))) как только ты становишься неправ - ты меняешь свое мнение, меняешь подход и ты снова прав...
Это можно делать и вне кодинга.

открытых проектов с офигенным подходом в ООП
Вряд ли такие крупные проекты можно найти. Но можешь попробовать посмотреть Magento.
 

alexeyco

Новичок
HraKK
Что - я уже не первый который так говорит? )))) Стоит задуматься.

Ну да ладно - прочь эти склоки. Ведь правда не разбирает личностей. У нас тут спор и любые склоки только этой правде помешают. Дело в том, что лично для меня этот вопрос важен - я всегда стараюсь что-то делать наилучшим образом, не потеряв при этом смысл того, ради чего все это делается. Поэтому если охота склочничать, то попрошу делать это где-то не здесь. Если охота помочь каким-то источником, который поможет мне, то буду рад. В конечном итоге всем будет лушче.

-~{}~ 26.02.10 14:21:

Fortop
Огромное спасибо! Будет чем заняться... я за последние 2 недели уже даже затрудняюсь сколько книжек переварил. Я на пару лет отходил от кодинга. Много нового. Пытаюсь уловить тренды.
 

HraKK

Мудак
Команда форума
Fortop
Но можешь попробовать посмотреть Magento.
Лучше не пробуй, магенто фигня. Спроси у Bege

alexeyco
Читай ZF и ссылку выше что я дал, а не 1 глазом загляни. Дальше попробуй к своему коду пописать Unit test'ы. А потом попробуй подменить свои классы, наследниками.
 

alexeyco

Новичок
И у меня сразу вопрос ко всем
Прежде всего, читаю вот эту статью

Понравилось:
По мере накопления опыта (а это не всегда был легким процессом) мы пришли к выводу, что самый главный принцип... бла бла бла Низкая стоимость создания и поддержки, Простота, Очевидность и простота использования, Расширяемость, Устойчивость, Возможность повторного использования
Не к этому ли я стремлюсь...

И еще в статье упоминается такой тезис: мол объект должен меньше всего зависеть от других объектов. То есть, к примеру, если есть класс, который реализует кеширование, и используется повсеместно, то это зло? Какой ужас.

Дело в том, что я не нашел пока никаких рекомендаций по интересующим меня вопросам. А именно - рекомендаций по использованию статичных классов от самого зенда.
 

HraKK

Мудак
Команда форума
И еще в статье упоминается такой тезис: мол объект должен меньше всего зависеть от других объектов. То есть, к примеру, если есть класс, который реализует кеширование, и используется повсеместно, то это зло? Какой ужас.
Используеться != зависит.
Ололо. Иди читай, шото более простое про ООП. Рано тебе эту ссылку дал.
 

Fortop

Новичок
Лучше не пробуй, магенто фигня. Спроси у Bege
Понятие не имею, я с ней не работал.

Одно я знаю точно "хорошего" ООП в крупных проектах обычно нет. Реальность она несколько оторвана от наших фантазий.
 

HraKK

Мудак
Команда форума
Идем по очереди. Как только на чем-то собьешься прекращаю объяснять дальше.
Расширяемость
расширь любой свой статический класс. Подмени его наследником расширяющим функционал. давай.

-~{}~ 26.02.10 13:35:

Реальность она несколько оторвана от наших фантазий.
не надо фанатеть на ООП. ООП не серебряная пуля, я думаю ты то это понимаешь хорошо)
 

Fortop

Новичок
alexeyco
Простой пример работы с БД
PHP:
class Model {
    public getById($id)
    {
        return DB:query('SELECT * FROM model WHERE id = ?', $id);
    }
}
Все кузяво, но если я захочу делать горизонтальное партиционирование, то мне надо для данной модели использовать другую БД. Как мне тут сделать?
Ввести класс DB2?

И без статики

PHP:
class Model {
    public function __construct(DB $db)
    {
        $this->db = $db;
    }
    public getById($id)
    {
        return $this->db->query('SELECT * FROM model WHERE id = ?', $id);
    }
}

$model = new Model(DB::getInstance(2)); 
$model->getById(1);
-~{}~ 26.02.10 13:43:

А можно и так

PHP:
class PgDB extends DB {
}
$model = new Model(PgDB::getInstance());  
$model->getById(1);
реализовать это со статиками и статическими зависимостями(это две разные вещи) - весьма сложно.
 

alexeyco

Новичок
dimagolov
По-моему у форума уже троллей в лице хотя бы тебя предостаточно

Fortop
Мне нравится то что ты говоришь. Однакож. Вопрос на засыпку: ты считаешь, что совсем не надо использовать никаких статических классов?
UPD
Бррр глупость сморозил... ну то есть, за исключением случаев, когда использование диктуется прямой необходимостью... как то, например, Registry pattern

ЗЫ
Качнул або 5.2, открыл... мама моя женщина... во-истину, маркетинг творит чудеса...
 

Fortop

Новичок
Вопрос на засыпку: ты считаешь, что совсем не надо использовать никаких статических классов?
UPD
Бррр глупость сморозил... ну то есть, за исключением случаев, когда использование диктуется прямой необходимостью... как то, например, Registry pattern
Если оно не нужно - то лучше не использовать.
Впрочем, как только начнешь везде их применять, неудобства возникнут.
 

alexeyco

Новичок
Ну да... не буду даже ссылкой делать abocms[dot]ru - очередное извержение от 1С...

Хмы... Fortop, спасибо, ты возбудил мой мозг остановиться и посмотреть на переваренное... ща буду вдумчиво опохмелять его
 

HraKK

Мудак
Команда форума
о как. ему все полдня талдычили одно и тоже, это его мозг не возбуждает, а банальный пример, который решается даже статикой, если захотеть - возбудил. Интересненько.
 

alexeyco

Новичок
Важно не ответить на конкретный вопрос, а дать пищу для размышления.

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

Потому как любая литература излагает суть объектности да, подробно... но объект типа Zoo чьим наследником является Rabbit и вся теория, связанная с таким подходом может и иллюстрирует объектную модель, однако она абсолютно никакого практического свойства не несет. Захлопнув книгу на последней странице, читатель уложив и поняв всю логическую схему этого зоопарка с его зайцами смотрит на задачу, которую ему надо решить и задает себе резонный вопрос... Чозанах? Куда мне теперь какой зоопарк с какими зайцами пхать?

Его я и изложил здесь.

по моему форум в лице alexeyco приобрел нового веселого троля
Дорогие мои, для системы ценностей большинства - я гораздо ХУЖЕ!!! (с) mr Free-man

Бугагагага
 

HraKK

Мудак
Команда форума
Ну точно. Я угадал, очередная жертва mr Freeman.
Теперь делают из стада, стадо не стадовых людей. Это же круче. Каждый думает что он такой вот уникальный. Тошнит.

Иди найди тут C_TIGER кажется, он тебе будет вровень.
 
Сверху