All streams
Search
Write a publication
Pull to refresh
159
2
Кирилл Мокевнин @toxicmt

Программист & Предприниматель

Send message
Мы с вами переписываемся одновременно в двух темах и трех ветках :D
Да дело ведь не в информативности. Исключения используемые для управления логикой приложения подобны goto.
Логично использовать исключения в исключительных ситуациях.
Если значение не найдено и скрипт должен продолжать работать дальше с учетом этого обстоятельства, то это не исключительная ситуация. Если элемент не найден (например это была статья на которую мы попытались зайти), то это ошибка 404, а значит исключительная ситуация, которую, в случае с зендом, обработает плагин ошибок и перенаправит на ErrorController.
Методы работающие с наборами в случае если ничего не найдено должны возвращать пустой набор, но никак не бросать исключение. Если нормальная логика программы построена через try… catch, то это повод задуматься)
То что описано в статье не является бизнес логикой, и если автору удобно что его шлюзы делают это так, то почему бы и нет? Ведь это и есть задача шлюза — взаимодействовать с таблицой в базе.
В данном случае модель как раз равна таблице, т.к. Zend_Db_Table это реализация паттерна «шлюз таблицы». В остальных случаях предпочтительно использовать модель сохраняемую в базу с помощью маппера, который в свою очередь может использовать шлюзы.
Если посмотреть в тикеты зенда то можно увидеть что в ближайшем будущем планируется переделать where так чтобы он принимал массив.
> Можно, но зачем, если все тоже самое есть в PEAR и нет риска тянуть за собой в виде зависимостей горы ненужного?

Можно из PEAR, но зачем если все тоже самое есть в ZF? ))

Все зависит от конкретной ситуации. Конкретно в моих проектах везде ZF и скорее всего я предпочту использовать компоненты ZF.
ЗФ, раньше, был ценен именно как набор библиотек), да и сейчас почти любой компонент можно использовать отдельно от фреймворка.
Как то так
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
В проектах которые используют frontController такой проблемы нет, потому что все и так идет на index.php
В нашем проекте каждый тест выполняется в отдельной транзакции, и программисты избавлены от необходимости следить за созданными объектами и их удалением.
Что Вы ждете в ответ написав такой комментарий?
Получите то что заслуживаете, и языки здесь ни причем.
Хотя здесь возможно и другой алгоритм.
Где-то пол года назад делал что то подобное для своих саттелитов. Алгоритм использовался достаточно простой и вместе с тем эффективный. В двух словах:
1. Чистим документ от всего лишнего, комментарии, скрипты, атрибуты, вообщем все кроме абзацев, tr (либо td) и дивов.
2. Дальше разбиваем все это дело в массив используя разделитель либо див либо td (или tr). (В этом месте автоматизации добиться не удалось, поэтому для каждой ленты я указывал какая это верстка)
3. Подсчитывалось количество русских букв в каждом элементе. В каком элементе массива букв оказалось больше тот и победил )).
А дальше мы его прогоняем через tidy и вуаля, наш контент готов.
а вы служили?
Согласен. Есть много всяких НО и т.п.
В принципе можно и совместный пост, если покажешь как ;).
Первый раз оставляю комментарий на хабре. (До этого только читал :))
Но не могу молчать когда ТАК заговорили про армию. Причем без вариантов "не вариант". Предполагаю что с возрастом, у тех кто не служил, сформировывается комплекс по поводу того что они не служили. Поэтому и придумывают разные страшные истории про то как бы это было плохо и что там делать нечего. Потеря двух лет и т.п. и т.д. (хотя я знаю людей которые и без армии как с армией).

Армия это в первую очередь (для солдата) школа жизни. Помните как в песне..."ты поймешь, как будет нужно где предательство где дружба".
И (читай по буквам) в армии нет возможности уйти от проблемы, ее всегда нужно решать.
Надеюсь вы улавливаете аналогию с обсуждаемой темой?
Так вот в армии за 2 года узнаешь и понимаешь то, что в обычной жизни пришлось бы познавать ценой гораздо большей и совсем в другие сроки.
12 ...
21

Information

Rating
1,387-th
Location
Miami Beach, Florida, США
Date of birth
Registered
Activity

Specialization

Fullstack Developer, Chief Technology Officer (CTO)
Lead