Извращения кодера, блог php программиста Нетривиальный кодинг

1Фев/106

Пример использования ArrayAccess

Мне недавно в блоге задали вопрос о применении ArrayAccess. Просто как замену массивам - глупо, тем более теряется производительность. Итак, для этого у нас две основные причины - set/get должны как-то влиять на значение переменных, вторая - объект может использовать данные помещённые в нём для других методов.

Рассмотрим примеры. У нас есть класс для работы с таблице из базы данных как с объектом.

14Янв/104

Моя реализация ЧПУ

Нашёл на одном из блогов реализацию ЧПУ и решил внести свою лепту. ЧПУ - человеко понятный урл. На аглийском наиболее популярное название User Friendly URL. С какого-то перепугу разработчики решили, что стандартный урл с гет переменными непонятен и покатилось. Сначала сравним варианты для вывода списка новостей категории test отсортированного по date:
news.php?category=test&sort=date - стандартный подход, вроде всё понятно ключ=значение
news/category/test/sort/date/ - если убрать выделение, то не понятно где ключ, а где значение
news/test/date/ кратко, но довольно путано, обязательный порадок, трудно изменять
news/category:test/sort:date/ - этот вариант хорош, так же нагляден как класика и даже чуть короче
news.test.date - краткий, но не информативный, есть один плюс - такие страницы без тайтла сохраняются с нормальным названием.

13Янв/109

Работа с формами

Когда новички спрашивают что бы им написать посерьёзнее, обычно советуют гостевую книгу. Вариант хороший, в нём много разных путей реализации, можно повесить авторизацию, работу с деревьями, но самое главное - формы. Самое удивительное, что я встречал огромное количество (количество пишется с одним "л", когда уже избавлюсь от этой ошибки) "профессионалов", которые так и не научились делать удобные формы. Совет заказчикам при оценке партфолио всегда проверяйте форму обратной связи или регистрации-авторизации.

11Янв/100

Смешиваем singleton и registry

Основное достоинство Одиночки одновременно является и его недостатком. Допустим у нас есть класс для работы с базой данных реализованный на singleton (о ужОс, нужно было хотя бы фабрику). Всё замечательно работает, пока в один непогожий день мы не придумываем держать данные в разных базах на разных серверах. Ну и этого геморроя нам мало, поэтому от возможностей мускула мы отказываемся. И приплыли... Соединение у нас то ОДНО. Отказываться от singleton и перелопачивать тонны кода тоже не с руки, значим поставим костыль.

30Дек/090

Паттерн: Singleton

Продолжая тему паттернов бегло расскажу что это за зверь singleton. На русский язык он переводится как "одиночка", относится к порождающим паттернам и позволяет нам плодить объекты, вернее всего один. Singleton гарантирует, что будет создан только один экземпляр класса. Для этого конструктор делается приватным и создаётся статический метод, который проверяет создан ли уже объект и возвращает нам этот объект.

26Дек/092

Обустраиваем Zend Studio

В Zend Strudio 7 нет парочки очень нужных вещей для php разработчика. Сперва прикрутим поддержку самого популярного шаблонизатора - Smarty. Затем добавим поддержку так же очень популярного формата yaml, который для меня похоронил xml конфиги.

10Дек/090

Обновился Netbeans

Обновился IDE до версии Netbeans 6.8. Из особенностей, важных для PHP - поддержка PHP 5.3 и поддержка замечательного фреймворка   Symphony. А так же на сладкое - подсветка php в YAML. Многие не знают, но с помощью плагина легко добавляется подсветка и автокомплит smarty, покопайтесь в плагинах.

20Май/090

Отчёт о конференции «Байнет 2.3 Gamma»

Свершилось. С 14-го по 15-е мая 2009 года на просторах нашей страны случилась конференция посвящённая вэбу. Я решил пойти туда не только послушать, но и себя показать :( , но обо всём по порядку.

11Май/090

Конференция “Байнет 2.3 Gamma: в новом формате веба”

14-15-16 мая 2009.

Конференция “Байнет 2.3 Gamma: в новом формате веба” – одно из крупнейших событий Беларуси в области современных информационных технологий. В 2009 году пройдет в третий раз.

14 мая будет посвящено техническим вопросам современного интернета: программирование, верстка, веб-стандарты, проектирование интерфейсов, хостинг и т.п.

15 мая будет посвящено гуманитарным вопросам: блоггинг, интернет маркетинг и пиар, аналитика рынков, дизайн, презентация новых проектов, инвестиции и т.п.

16 мая станет специализированным днем по видео в интернете: интернет-трансляции, потоковое видео и сервисы для него, интернет-телевидение, съемка, монтаж и кодирование видео и т.п.

Участие в конференции БЕСПЛАТНОЕ.

Программа события здесь

Я буду учавствовать в конференции с докладом "Удобная работа с базами данных в PHP", который посвящён ORM, теория, реализация и более-менее подробно задержусь на Doctrine.

4Апр/090

Компания microsoft открыла код MVC фреймворка для ASP.NET

К этому они шли очень долго, но никто не ждал такого финиша. Первые креативные мысли по созданию своей реализации MVC появились у разработчиков ещё в 2007 году, затем вышло несколько версий - превью, беты, релиз кандидаты. Но лишь в марте 2009 года состоялся настоящий релиз.

Если релиза ждали многие, то вот о том что это будет ещё не самая важная новость, догадывалось нороду мало. Недавно было объявлено, что фреймворк является открытым и распостраняется под открытой лицензией MS-PL.

Меня не прильщает ASP.NET, но посмотреть в исходники от корпорации тьмы я всё же решил, чего и другим советую. Качать здесь.

Ну и немного оффтопа. Microsoft превратилась в красную тряпку для многих айтишников, а быки как известно - дальтоники, им плевать на что бросаться. Не уподобляйтесь им, не всё творимое "чёрной" компанией является плохим. И от просмотра кода или знакомства с их продуктами Вы не превратитесь мгновенно в зомби.