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

18Фев/100

Conversion, software version 7.0

Немного лирики.

Как и обещал занялся написанием пары топиков по оптимизации работы. Честно говоря серия должна была начаться отнюдь не с данной статьи, но так получилось что именно этот топик станет первым. Надеюсь у читателей есть представление о том, что такое SVN, если нет то лучше прочитать эту статью немного позже, так как немного позже будет опубликована статья под названием "Оптимизация работы или что нужно программистам для плодотворной работы" **(название взято из головы для раскрытия сути) в которой будет опубликовано мое мнение по тому, как оптимизировать работу работников небольшой компании которая только открылась. Ладно опустим лирику перейдем к теме топика.

Вам что-нибудь говорит название статьи? Нет это не относится к песне группы System Of A Down - Toxicity и сегодня мы будем говорить не об песнях, а о том зачем и что такое верисии(в дальнейшем тэги) и каким образом они относятся к оптимизации работы.

То с чего следовало начать.

11Фев/102

Хватит нас позорить

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

К сожалению, слова "Сделано в Беларуси" уже давно вызывают позывы ко рвоте. Есть парочка достойных продуктов, но их очень мало, а кино уж точно не входит в данный круг. Многие с ужасом вспоминают про клонирование "Наша Раша", да упокоятся души не выдержавших просмотра сего безобразия. И вот враги государства, решили своровать идею у тупых американцев. Название "Теория большого взрыва", заменили на более привычное и не отпугивающее наших умов с двумя и более высшими образованиями - "Теоретики".

Ну и получилось в лучших традициях современной белорусской науки творения уровня не хуже достижения наших "теоретиков". Да ладно ещё о позоре, люди разбегались виде сего безобразия. Но, но, но..... Слухи дошли до Чак Лорре, который высказал что об этом думает, вылив ведро несправедливых помоев на страну. Теперь мы кроме того, что пираты, так ещё и выращиваем скот годный только для одёжных щёток. Спасибо Вам, наши режисёрыща, Вы сумели втоптать страну ещё ниже, в этом году у вас есть шанс обойти наших теоретиков с интеграла с их наклейками.

Самое обидное, что в этом поучаствовали ребята из прекрасной команды ЧП, которая славилась своим качественным юмором в КВН. Зачем было лезть в воровство, когда сами могли придумать не хуже.

Письмо можно посмотреть здесь.

И главное, что им за это ничего не будет, а то и премию дадут.

Так как никаких других возможностей у меня нет, я надеюсь, что это письмо прочитают те милые люди, которые делают «Теоретиков», и что они, страдая от угрызений совести, отправят нам партию фетровых шляп.

1Фев/106

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

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

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

23Янв/105

Я сменил работу.

В середине декабря 2009 года, после разговора с директором было решено, что нужно менять работу. До этого я работал на пол ставки и меня это устраивало, т.к. было много времени для самообразования, которым я активно занимался. В прошлой компании был замечательный коллектив, адекватный руководитель, но проекты и менеджмент сильно напрягали, да и денег после перезда в более дорогую квартиру стало хватать в притык. Вот так, под бой курантов я попрощался и с работой.

Метки записи: Читать полностью
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 конфиги.

11Дек/090

Беларуский сайт для фрилансеров.

Недавно открылся сайт free-lance.by, посвящённый беларуским фрилансерам. Это не аналог российской версии, а скорее место общения белорусского фриланс комьюнити. Общайтесь, задавайте вопросы, отвечате на них, обменивайтесь опытом.