Господа поделитесь, на основании чего вы начинаете создавать новый сайт, набор собственноручно написанных классов, фреймворк, CMS или просто с нуля каждый сайт? Больше всего интересует вариант с классами написанными собственноручно, какой полезный функционал они должны нести? Может быть кто-либо мог бы выложить или выслать по эл. почте пример своих классов на основе которых Вы строите сайты.
Зависит от того, какой сайт нужен. У меня есть несколько cms'ок, "доработанных напильником": форум, галлерея картинок, etc. Ставлю их и дорабатываю дальше, под конкретную задачу. Если что-то мелкое, то копирую откуда-нить из уже установленного (мелкого, самописного) строки подключения к базе. Если что-то новое, крупное, то ищу подходящую cms'ку и дорабатываю напильником под себя. Короче - стараюсь изобретать велосипед по минимуму. Скорее - тюнингую существующие велосипеды.
Ну свой велосипед у меня тоже есть. И я тоже на нём катаюсь. Он, по моему, вообще у всех стариков на этом форуме есть. А то и не один.
Hawk Программирую процедурно. Каждый сайт начинаю всегда писать с нуля. Разве что использую свою библиотеку функций. И общая структура сайта у меня всегда одна. Правда раньше объеденял PHP/JS/HTML/AJAX были в одном файле в кучу - теперь все красиво аккуратно. Для JS свое, для HTML свое. Потом все это чудо парситься при помощи РНР и выводиться в браузер. Оказалось достаточно удобно А лисапет изобретать пока неохота молодой йа исчо З.ы CSS forever ^_^
Тюнингую чужие велосипеду, например порядком поднадоевшую мне Joomla. Параллельно пишу свой велосипед, ибо удобнее и душа требует самовыражения )... Классы? Ну планируется несколько классов: Работа с языками, работа с СУБД, аутентификация, простенький контроллер который будет все собирать вместе и запихивать в html шаблон. Остальное буду делать в виде модулей по мере необходимости...
Видели бы вы то, с чем я щас на новой работе работаю... Система заточена под бизнес-решения интранет систем делопроизводства. PHP4 и OOP на полную катушку (выжато всё, чего в PHP просто нету - эмулировано по возможности). И самое странное, мне начинает нравится, т.к. оно настолько облегчает разработку... Можно за день сделать столько, сколько я делаю за два-три обычными методами (правда система не лёгкая)
Hight Каретка и спицы в основном! Ну и так по мелочи педали, катафоты... А если серьезно если бы ты выслал на мыло все что есть, то я был бы очень рад! Т.к. люблю разглядывать чужой код, когда с него можно чему-то научиться, так что присылай все что есть... Если ты не против то в личку тебе мыло кину... Можем впринципе стоимость обговорить чтобы ты зря не ковырялся, но я бедняк поэтому много у меня нету
Clone Почти 4 года Как всегда в больших конторах переход идёт долго и нудно, это же надо всё переписать и по возможности оставить совместимость, хотя в последнем я очень сомневаюсь что вообще возможно это. Hight Да нет, просто пока не заставит нужда, руководство не хочет тратить время на переход - работает, значит зарабатываем бабло...
Я считаю хорошим движок, который: 1. Сохраняет в HTML-файлах всё, что возможно -- чтоб не дёргать php & MySQL для составления HTML-кода, одинакового для всех. 2. Сделан на основе классов, когда каждый новый вид страницы описывался бы классом-наследничком класса страницы. 3. Не пытался бы дать возможность пользователю "программировать не программируя". Т.е. логика построения страниц задавалась бы классом страницы и подклассами. С таким движком на все происки империализма (заказчиков) есть чем ответить.
tmanager Подход не самый удачный, имхо... каждый раз, когда придется решать мелкую, чисто дизайнерскую проблему (например, если такое-то число не ноль - выводить его на странице, в противном случае - не выводить вообще; или если данная страница - текущая, то выводить ее не ссылкой, а полужирным шрифтом), придется лезть руками в отлаженный код. Вообще надо не забывать, что в реальных проектах отображение шаблонов всегда управляется кучей маленьких нюансов, которым в логике приложения не место.
Хорошая фраза. Хорошо отражает суть вещей. Суть в том, что надо разделять не "оформление и код", а логику отображения - от логики выполнения приложения.
А вот я пользуюсь смарти. Вот кусок шаблона проекта, над которым тружусь сейчас: Код (Text): {include file="header.tpl" title="Регистрация" js="<script language=\"JavaScript\" src=\"template/templates/registration.js\"></script>" style="<link href=\"template/templates/forms.css\" rel=\"stylesheet\" type=\"text/css\" />" } {if $errors != false} <table border="1" align="center" id="errors"> {foreach item=error from=$errors} <tr> <td>{$error}</td> </tr> {/foreach} </table> {/if} Сейчас думаю, а сможет ли "не программист" правильно переделать шаблон? Думаю - нет. Потому хочу выбросить логику из шаблонов, оставив только подстановку переменных. Менее расширяемо, но удобно для пользователей. Как думаете?
Оставить логику? Вот даже не могу представить глаза начинающего хтмльщика, когда он увидит "{foreach}" . Впоследствие программиста будут драть как сидорову козу каждый раз, когда нужно будет изменить цвет рамки, мотивируя фразой "боюсь сломать". Хотя, надо будет спросить "не программиста", что он видит в шаблоне. Мне сложно судить.
Ну, увидит. Ну, нетронет. Что ему? Стоит и стоит. Подумаешь, новый тег, с новым синтаксисом. А драть тебя будут, когда тебе понадобится динамика в шаблоне и ты будешь скакать, и думать куда бы ее прикрутить и с какого места в коде. В итоге перепишешь пол-модуля.... плавали, знаем.