Обновить
24
Дмитрий Куликов@graber

Пользователь

5
Подписчики
Отправить сообщение
искал-искал, так и не нашел — что такое hook() и где инициализируется $HOOKS если функция register_hook() так нигде и не вызывается?
видимо обновляться он будет раз в месяц и только для тех, кто подписан.
ну а подписаться можно в любом отделении сбербанка... анкета прилагается. ;)
Интересный человек был Настрадамус. В 2000 году предсказал конец света, а видимо уже к 2006-му свет снова дадут, чтобы «2006 - Мусульмане изобретут новый страшный вид оружия. Все станут готовиться к войне...».

После всего этого меня интересует один вопрос — ЧТО он курил?
строка кода
PartnerId=2&ExternalCss=http://affiliates.quintura.com/partner_styles/habr_styles.css&PartnerTopic=habr&ViewType=mini&LinkTarget=_blank">
набранная без пробелов раздвигает содержащий топик контейнер — из-за этого половина топика уехала вниз
кстати и сам Zend Studio обновился до версии 5.5.1 (было 5.5.0):
— New Support for PHP 5.2.5
— New Support for Zend Framework 1.0.3
— Bug fixes and other updates
влево, т. к. двери всегда справа. Старая задачка. Ретро можно сказать)
если у вас в макбуке стал часто появляться синий BSOD экран то я вам не завидую))
по порядку:
1. валидировать данные, отправляя их на сервер? хм. я так никогда не делаю.
2. поддерживаю технологию двойной валидации — на фронтенде для удобства, на бекенде для безопасности — половинчатые варианты очень не люблю.
3. мне в зенде нравиться реализация контроллеров-роутеров-диспетчеров. легкость и простота ее имплементирования и широкая возможность доработки под собственные нужды не ломая при этом идеологию и не изобретая велосипедов. Zend_Db, как впрочем и зендовскую авторизацию в чистом виде я не использую. тоже самое с Zend_View — имплементировал удовство работы, а движок для парсинга шаблонов использую смартевый. Как то передавать данные в шаблоны нужно, а смарти это делает наиболее прозрачно и понятно для верстальщиков.

3. я python настолько плохо знаю, что не могу сказать нравиться он мне или нет)). пока мнение исключительно субъективное.
у нас различные понятия определения «фреймворк». обработка форм, их вывод, валидация и т.д. очень сильно зависят от конкретного проекта. сделать что-нибудь более менее универсальное и чтобы при этом с ним можно было нормально работать практически невозможно.

фреймворк дает базовые инструменты, кирпичики так сказать, с помощью которых легко сложить нужный вам дом. Так например в прототайпе нет реализации валидации форм, нет реализации построения таблиц с сортировкой и другой более высокоуровневой логики. этим фреймвор заниматься не должен. а вот например script.aculo.us построенный на базе прототайпа (ну или того же mootools) прекрасно реализует возложенную на него более высокоуровневую задачу.

что касается конкретно Zend Framework, то я не сказал бы что это что-то идеальное и панацея от всех бед. да многое в нем меня не устраивает тоже, но тем он и хорош, что позволяет с легкостью переписать/дописать не устраивающий тебя метод/класс/модуль. его долго можно сравнивать с cakePHP или codeInteger и прийти лишь к тому что у каждого есть свои + и -.

а вообще нужно на python переходить :))
согласен. статья очень полезна для изучения патернов и стандартов. но использовать приведенный в ней код я бы не советовал. Если уж заинтересовал новый подход — «погугли в яндексе» не описан ли он в википедии :)
ну во-первых константа __FILE__ не изменит своего значения в зависимости от того, где был проинклужен файл config.php.
большенство моделей построения MVC подразумевают единую точку входа (тот же самый index.php). Так работает зенд фреймворк напрмер — все обращения к серверу реврайтятся на index.php. ну а уже в нем достаточно один раз require_once 'config.php';

у меня подобный алгоритм использован во всех проектах — все прекрасно работает. при этом я могу спокойно сменить место дислокации проекта с (напрмер) /var/www/ на /home/www/ и при этом ничего править не прийдется.
у меня именно после обновления до леопарда появился первый «кернел паник» — сразу после перезагрузки выдал окошко с предложением оповестить разработчиков, в котором можно было почитать каким образом будет происходить это оповещение :). вот там-то и был полный лог ошибки (ну и еще информация о моей системе, железе и еще что-то)
вы уже смотрели в сторону Zend Framwork? если нет советую хотябы ознакомиться. я использую его в своих больших, но при этом невысоконагруженных проектах. он удовлетворяет как раз эти 2/3 потребностей. в связке со смарти, дбсимпл и JsHttpReques — 3/4 :)
«придется либо один раз жестко дефайнить» — именно так. вопрос лишь в том, как это делать. define('ROOT_PATH', dirname(__FILE__)); в index.php к примеру вполне для этого подойдет.

ну а держать в include_path предпочитаю директорию с контроллерами, моделями и библиотеками (т.е. все три, не подумайте что уменя все это в одной папке свалено:) ).
Очередное изобретение велосипеда как всенда закончилось кучей комментов что и где надо дописать/исправить/заменить (ради которых такие статьи интересно читать).

советую почитать документацию по Zend Framework (если конечно вы ее уже не читали) — уж очень ваш подход мне напоминает этот фреймворк.
dirname(__FILE__); позволяет не думать о том, что однажды провайдер (к примеру) сменит домашнюю директорию вашего проекта.
так что define('ROOT_PATH', dirname(__FILE__));

и еще вместо использования константы DIRECTORY_SEPARATOR достаточно ВСЕГДА использовать прямой слеш /. Он в юниксе родной разделитель, а винде пофигу))
остается только посочувствовать людям, которым возможно придется рефакторить (да и просто читать) ваш код. в любом случае удачи)
советую посмотреть в сторону DbSimple — более удобной библиотеки абстракции БД я не встречал. Это конечно если вам не нужны сверхвозможности (работа с биндами, тригерами и т.д.). а если все таки нужны — то ADODB может вам подойдет больше чем peardb, с ней нет проблем в переназначении методов.
это именно то, что я и имел ввиду. в данном конкретном случае Registry не требует функциональности объекта — соответственно инстанционировать его не нужно, даже как сингелтон.

Информация

В рейтинге
Не участвует
Откуда
Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность