Pull to refresh
10
0
Виктор Павлович Гришко @Yeah

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

Send message

А мы пойдем другим путем. Перемещаем модель в базу данных

Reading time6 min
Views5.1K
А мы пойдем другим путемВ последнее время веб-разработка из наколенного поделия превратилась в серьезную инженерную дисциплину. Все это стало возможным стараниями легиона специалистов, которые разработали общие практики, которые позволяют писать веб-проекты, с использованием некой архитектуры, а не подобно исследователю, сбрасывающему ящик типографского шрифта с крыши небоскреба, в надежде, что тот чудесным образом сложится в первый том «Войны и Мира». Самой распространенной парадигмой веб-программирования является, вне всякого сомнения, MVC — Model-View-Controller. Говоря примитивно, эта парадигма предусматривает разделение кода приложения на слой управления (Controller), слой представления (View) и слой управления данными (Model). При этом MVC предусматривает, что Controller и View могут (но не обязаны) зависеть от Model, в то время как Model ни при каких условиях не должен зависеть от них.
Есть много различных подходов, как отделить бизнес-логику приложения от логики отображения и управления. Все они предусматривают, что модель является частью приложения и взаимодействует с БД, использую последнюю лишь в качестве хранилища данных. Мы же попытаемся пойти иным путем и по возможности максимально вынести бизнес-логику приложения на уровень БД.
Предупреждение: лицам с тонкой душевной организацией лучше не видеть того, что будет твориться под катом.
Читать дальше →
Total votes 64: ↑50 and ↓14+36
Comments112

Битва с «сумрачным гением» или Microsoft-HTTPAPI/2.0 наносит первый удар

Reading time4 min
Views29K
Как-то раз, вернувшись из отпуска, вдоволь натунеядствовавшись, решил я сваять что-то божественное на PHP. Открыл свой любимый Denwer и поразился неожиданной перемене: Apache напрочь отказался слушать 80-й порт, а значит, мои благородные намерения на этот вечер оказались под угрозой срыва. Ситуация, в общем-то, довольно банальная — сразу же в голове сработал заветный триггер: Skype! Однако к моему удивлению, Skype тут же объявил о своей непричастности к данному инциденту отсутствием галочки напротив соответствующей настройки. Чтобы окончательно проверить алиби зарубежного видеотелефона я решил посмотреть, кто же все-таки в данный момент слушает 80-й порт.
Читать дальше →
Total votes 114: ↑93 and ↓21+72
Comments124

Работа со сложными декораторами в Zend Framework

Reading time13 min
Views3.8K

Введение


Zend Framework — замечательная система. Такое мнение у меня сложилось на протяжение долгого времени тесного «общения» с этой системой. И замечательная она не в силу каких-то сверхвозможностей, предоставляемых программисту, а в силу того, что система эта удивительным образом приглашает программиста к собственному усовершенствованию для его, программиста, блага, предлагая простой и в то же время мощный фундамент для собственных разработок.
Работая над проектом с использованием Zend Framework, решил попытаться по максимуму использовать его возможности и сразу же обратил внимание на компонент Zend_Form (я намеренно называю Zend_Form компонентом, а не классом, поскольку компонент Zend_Form состоит из класса Zend_Form и целого набора сопутствующих классов и интерфейсов). В документации сказано достаточно просто: «Zend_Form упрощает создание форм и управление ими в ваших веб-приложениях». В общем-то это так, но без предварительной подготовки с вас семь потов сойдёт прежде, чем вы сможете создать и отобразить одну более или менее сложную форму. Концептуально форма в Zend Framework состоит из:
  • элементов
  • декораторов
  • фильтров
  • валидаторов
Элементы — это, собственно, то, что мы понимаем под элементами формы: поля ввода, выпадающие списки и пр.
Декоратор — это вся верстка, которая логически связана с элементом формы (окружает его), но не является его частью. Проще говоря, декоратор — оформление элемента формы.
Читать дальше →
Total votes 10: ↑7 and ↓3+4
Comments19

CSS-Transforms в Firefox??? Скоро!

Reading time2 min
Views1.1K
Как известно, движки в современных браузерах развиваются довольно динамично, стараясь блеснуть перед всем честным народом какими-нибудь доселе неизвестными фишками и, тем самым, поразить будущих пользователей в самое сердце. В октябре 2007 года ребята из Apple анонсировали включение в движок WebKit средств для преобразования видимых элементов средствами CSS (т.н. CSS Transforms), а уже в апреле 2008 была готова более или менее полная спецификация новой технологии. Многие фанаты (и не только) Apple с восторгом восприняли данную новость, остальным же оставалось лишь покусывать локти в надежде, что и их «любимцы» обратят на новую технологию внимание.
И вот, нежданно-негаданно, пришла благая весть из стана «конкурирующей фирмы» — Mozilla.
Читать дальше →
Total votes 11: ↑8 and ↓3+5
Comments9

Google пошел на попятную

Reading time2 min
Views1.1K
Думаю, что ни для кого не остался незамеченным резонанс, вызванный крайне неоднозначными формулировками одиннадцатого пункта лицензионного соглашения об авторских правах пользователя на информацию распространяемую через сервисы Google (в том числе, браузер Google Chrome).
Так вот только что PC World сообщил:
Total votes 129: ↑111 and ↓18+93
Comments44

Обработка ошибок и исключений в PHP

Reading time6 min
Views38K
Эта «небольшая» статейка является развитием темы затронутой в этой статье.
Как известно, PHP зародился довольно давно и уже тогда возник вопрос, что делать с возникающими ошибками. Perl, который является несомненным прародителем PHP по умолчанию не имел какой-либо системы обработки ошибок. При возникновении любой ошибки сервер выбрасывал 500-ю ошибку и на этом все заканчивалось. Поэтому Warnings, Fatal Errors и Notices были настоящим прорывом в облегчении и без того нелегкого труда программиста. Однако время шло, механизмы PHP не менялись, а технологии, как известно, на месте стоять не любят.
Читать дальше →
Total votes 3: ↑2 and ↓1+1
Comments60

Цепочки топиков на Хабре

Reading time1 min
Views844
Идея состоит в следующем:
Наблюдая за Хабром на протяжении нескольких дней подряд, обратил внимание на то, что сообщество, затронутое какой-нибудь хорошей и интересной темой (например, coworking или тема ценообразования в веб-дизайне) начинает писать топики в узкой похожей тематике, описывая их (топики), как ответ (или даже пародию) на предыдущие.
Так вот, я считаю, что было бы неплохо иметь возможность связывать такие топики между собой. То есть я захожу в топик, и вижу внизу блок с ссылками на похожие топики (похожая фишка есть на Lenta.ru).
Подобный функционал можно реализовать следующим образом (на вскидку):
1. Автоматически по тегам (например, если совпадает 80% тегов к топикам)
2. Вручную автором (даже и не знаю, как это сделать лучше, но это было бы правильно идеологически)
3. Вручную пользователем

Предвосхищая возмущение пользователей о том, что похожие топики объединены в блоги хочу сказать:
1. Не всегда мне нужно смотреть на все топики в блоге. Есть блоги с гигантским количеством топиков, а в подборку можно включить от силы пару штук.
2. Не всегда топик включен в блог. Мало того, мне может понадобится включить в подборку отхабренный топик.

Этот топик больше подходит для блога Идеи для сайта.
UPD: Перенесен в блог Хабрахабр — Идеи для сайта
Total votes 58: ↑53 and ↓5+48
Comments16

Information

Rating
Does not participate
Location
Харьков, Харьковская обл., Украина
Date of birth
Registered
Activity