Комментарии 32
Мне кажется, топик лучше перенести в блог Zend Framework
+2
Не согласен. Тем, кто ZF использует эта штука нужна в меньшей степени, чем тем, кто хочет воспользоваться всего-лишь его частью.
+2
чето подглючивает.
codeutopia.net/pack/index/dependencies/class/Zend_Cache
codeutopia.net/pack/index/dependencies/class/Zend_Cache
+1
мне кажется что это вообще нонсенс. я понимаю что иногда не нужен целый фреймворк. но тут ошибка проектирования.
если в вашем фрейморке нет функционала который есть в зф, значит вы либо должны портировать сами. либо вы плохо выбрали фреймворк для проекта. и имхо вырезать несколько классов из каждого фрейморка и держать их в куче даже более худшее решение чем использование целого фреймворка.
если в вашем фрейморке нет функционала который есть в зф, значит вы либо должны портировать сами. либо вы плохо выбрали фреймворк для проекта. и имхо вырезать несколько классов из каждого фрейморка и держать их в куче даже более худшее решение чем использование целого фреймворка.
+1
странная точка зрения. Любите делать велосипеды, а PEAR по вашему глупая идея?
0
Вам нравится качество кода из PEAR?
0
я недостаточно работал с ним чтоб ответить, но это никак не относится к тому вопросу, который я задал
+1
Нет. К примеру — если в ЗФ совсем не будет нужного мне решения, но оно будет в какой нибудь pear либе, я ее синтегрирую в проект, но так чтобы другой девелопер понял откуда она взялась и почему лежит там где лежит.
0
это прямо противоречит тому что Вы сказали ранее «если в вашем фрейморке нет функционала который есть в зф, значит вы либо должны портировать сами. либо вы плохо выбрали фреймворк для проекта»
+1
да, неясно выразился, правда. Портирую == синтегрирую. Пример: Нужен был простейший пейджер из CI (когда в зф его еще не было) — посмотрел как он реализован в CI и сделал такой же в рамках своей библиотеки для зф (практически копипаст с некоторыми поправками) но заметте, я не взял целый кусок CI с зависимостями пейджера. И как результат стиль кода остался одинаковым, а он в ЗФ и CI отличается.
0
значит Вы все таки любите изобретать велосипед. Большинство же разработчиков считают вполне нормальным использовать библиотеки сторонних разработчиков в чистом виде. А для того чтобы было легко читать код достаточно сложить их в одном месте и пометить из каких фреймворков и библиотек они взяты
+1
У меня стойкая нелюбовь (обоснованная) к такому подходу :) я уже занимался крупными проектами «после» таких девелоперов.
0
ну если Вам попадались плохие девелоперы — подход не виноват :). К примеру извесный и признанный фреймворк симфони в версии 1.0 использовал 10 сторонних компонент (что можно увидеть по папке licenses и lib/vendor).
Кстати предложенный Вами подход категорически не верен. Как вы будете обновлять свой «синтегрированный» код, если будет обновлятся исходный? А если это будут критические изменения? Будете делать это вручную? Намного проще и разумнее написать враппер — это решит все проблемы
Кстати предложенный Вами подход категорически не верен. Как вы будете обновлять свой «синтегрированный» код, если будет обновлятся исходный? А если это будут критические изменения? Будете делать это вручную? Намного проще и разумнее написать враппер — это решит все проблемы
+1
мне, например, от зенда нужны только классы для работы с БД и кешированием. Остальные задачи выполняются другими средствами. Так зачем таскать весь зенд?
0
Тот же апдейт проще будет сделать. Хотя я все равно не юзал бы например 2 фреймворка в одном приложении.
0
я юзаю пять: zend framework, doctrine, prototype и css-фреймворк, и мой код, который реализует недостающий и заменяет некоторый ненравящийся функционал. если нужно юзаю класс из pear, потому что там готовый и отлаженый код.
да и в состав zend framework входит javascript фреймворк :)
да и в состав zend framework входит javascript фреймворк :)
+4
зачем так много? Все же количество инструментов может негативно повлиять на качество продукта…
-1
я имел ввиду пхп фреймворки. таже доктрина и зф это разные вещи ведь. т. е. я не стану использовать ZF + Symfony никогда
0
Ну, с Symfony скрещивать другой фреймворк смысла точно нет, а вот, например CI + ZF отлично живут вместе.
+1
в zf есть zend_table, так что они пересекаются с доктриной.
незнаю, zf, больше похож на библиотеку, чем на полноценный фреймворк, малая связаность позволяет его использовать практически везде.
незнаю, zf, больше похож на библиотеку, чем на полноценный фреймворк, малая связаность позволяет его использовать практически везде.
0
Шикарно!
Бывают совсем небольшие проекты, в которые весь ZF класть смысла мало, но некоторый функционал был бы очень полезен.
Спасибо всем, приложившим к этому руку :)
Бывают совсем небольшие проекты, в которые весь ZF класть смысла мало, но некоторый функционал был бы очень полезен.
Спасибо всем, приложившим к этому руку :)
+1
На самом деле польза от всего этого — лишь экономия дискового пространства. Ведь используя какой-нибудь класс ZF вы не тащите за собой весь его функционал, а только зависимые от него, что и предлагается в решении…
+2
ради экономии места/времени мы сделали кеширование скомпиленной библиотечки:
— удалили лишние компоненты фреймворка
— написали парсер, который проходит по всем файлам фреймворка, чистит коменты и инклады, строит дерево зависимостей и по нему выстраивает очередность, следуя которой нужно объявлять все классы и интерфейсы, чтоб перент был объявлен раньше чилда и тд.
— ну и компилятор, который, следуя цепочке, клеит всё в один файл.
— задействовали механизм кеширования, чтоб этот большой скомпиленный файл всегда висел в памяти и не инкладился каждый раз снова.
в результате — большой прирост производительности.
может кому-то идея будет полезной...)
— удалили лишние компоненты фреймворка
— написали парсер, который проходит по всем файлам фреймворка, чистит коменты и инклады, строит дерево зависимостей и по нему выстраивает очередность, следуя которой нужно объявлять все классы и интерфейсы, чтоб перент был объявлен раньше чилда и тд.
— ну и компилятор, который, следуя цепочке, клеит всё в один файл.
— задействовали механизм кеширования, чтоб этот большой скомпиленный файл всегда висел в памяти и не инкладился каждый раз снова.
в результате — большой прирост производительности.
может кому-то идея будет полезной...)
0
Есть еще один плюс. В IDE в подсказках меньше хлама ненужного появляется.
+1
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Компоненты Zend Framework отдельно