All streams
Search
Write a publication
Pull to refresh
63
0
Send message
йех, понеслось «сперва добейся» и «а у меня все равно пиписька толще».
ладно. ambergames.com, PHP Architect, более десятка проектов в основном на symfony2, тесная интеграция с java-системами, основный задачи — инфраструктура (amqp системы), статистика (OLAP), более 10 программеров, TDD, стендапы и Code Review как и ручной, так и при помощи Sonar — like софта.
как вы говорите, полный энтерпрайз и паттерны головного мозга.
зарплатой тоже померяемся?
извините, что наехал на такого специалиста как вы.

прально, что тут, ребята деньги зарабатывают, а я фигней на spring/symfony2 страдаю… писал бы на dooPHP, стопроцентро заработал бы больше )
кажется, вы не поняли. я не отрицал мнения что вы предлагаете архзитектурно не самые хорошие решения, и работали бы на меня — получили бы commit reject и тикет на рефакторинг. так что, статус проповедника «а мне так проще» с вас за это не снимается.
нет, я уже сутки наблюдаю линч «начитанного заучки-теоретика» и искренне желаю выжить и не опускаться до такого же уровня.
женя, прекратите переходить на личности ) это не самый страшный говнокод.
ок, берем пример автора.

предположим, у него появится какой-то бекенд кеша где кллючи можно будет устанавливать только в констуркторе, а менять потом — нельзя. тогда из имплементации убирается setKey.

более того, если $obj->key и $obj->getKey возвращают разные значения, это трындец какой-то получается.

на самом деле, то, что касается вашего подхода, идеально когда вы один ССЗБ в проекте, а вот когда у вас в проекте рабоатет человек 5-6, один из которых пишет базовый инфраструктурный код, которым пользуются другие — нужна жесткая инкапсуляция.
наверное, опыт о том что люба логика должна оставлять возможность оверрайдинга. если потом придется это свойсвтво заменять, то придется делать __get
Профессионалом делает не знание, а использование. Вы же пытаетесь доказать что «мы не сделаем идеала, так давайте писать говнокод».

Про заработок — вы сами начали.

Причем, знание дотнета вас не делает хорошим или оплачиваемым программистом; все, о чем говорит автор, становится серебрянной пулей когда приложение должны быть поддерживаемым, модульным и разделяемым.
синглетон — это класс, который может существовать в едиственном экземпляре. это плохой подход.

решение тут — иметь общий массив соединений, и диначмически создаваемые экземпляры классов, с этим массивом работающих.
ooooooнет.

я скорее скажу что говнокод.
Метод, которым вы вызываете один объект из других. Чем сингдетон базы отличается от $GLOBALS['db'] = mysql_connect()?
Если из любого места приложения нет возможности добраться до соединения с БД, то нефиг его делать синглетоном, стоит подумать о рефакторе InterobjectCommunication.
А на самом деле, красивые советы, к которым надо было бы стремиться. Вам, как аспиранту, стоило бы знать, только автор в одном ошибся — статью стоило бы назвать «Что плохого в вашем ООП PHP коде».

На тему того что «деньги зарабатывают»… Во-первых, джависты зарабатывают сильно больше. Во-вторых, те, кто реально зарабатывают нехилые деньги на проектах — Zend / Sensio, как-то как раз следуют вышеупомянутым парадигмам.
тогда у нас с вами немного разные ремесла :)
вы про фанатичное «не делайте из PHP Java, мы будем продолжать писать 1000 строк чтобы сделать точ точ в PEAR написано годы назад»?
они мало сидят на хабре )
«бритва оккама» в контексте этой статьи прикрывается банально нежелание вылезти за зону комфорта и выучить что-то больше собственного фреймворка, чтобы потом стандартные решения делались парой строк. типа, мы не будем привлекать новые сущности, когда у нас есть столько решений найденных в гугле по «php авторизация пример скачать»
не, затарился кофе и читаю холивар на тему «почему в нашей фирме занимающиймя визитками за 200 баксов неинтересно использовать symfony»
э, ребята. Советы такого уровня к визиткам не относятся, скорее к CRM системам.
> дольше чем обращение к свойству

да, и в 5-6 тысяч раз быстрее чем чтение файла / открытие соединения с базой, не говоря уже о запросе.

Information

Rating
Does not participate
Registered
Activity