Category Archives: Architecture

MVC vs Flux

They are all architecture patterns. M is for model. It stores generic logic for the model like fields and calculations based on the fields like validation and stuff. V is for view. It just renders stuff and passes user interactions (events) to it’s controller via controller’s API. C is for controller that ties models to …

Read more

Принципы SOLID с примерами на php

Шпаргалка Принцип единственной ответственности (Single responsibility) «На каждый объект должна быть возложена одна единственная обязанность» Для этого проверяем, сколько у нас есть причин для изменения класса — если больше одной, то следует разбить данный класс. Принцип открытости/закрытости (Open-closed) «Программные сущности должны быть открыты для расширения, но закрыты для модификации» Для этого представляем наш класс как …

Read more

Формализованные языки для построения API

http://ru.wikipedia.org/wiki/IDL Самые интересные: Apache Thrift — http://en.wikipedia.org/wiki/Apache_Thrift Гугловый ProtoBuf — http://en.wikipedia.org/wiki/Protobuf Apache Avro — http://en.wikipedia.org/wiki/Apache_Avro. Сравнений этих IDL — тысячи, например: http://www.slideshare.net/IgorAnishchenko/pb-vs-thrift-vs-avro. Но всё-таки имеет смысл делать самому, а из перечисленных брать основные идеи. И самое главное тут — формализация, формализация и ещё раз формализация. Т.е. всё делать вложенными объектами, никаких структур, вперемешку болтающихся, как …

Read more

Fatcache от Twitter — memcache на SSD

https://github.com/twitter/fatcache/blob/master/notes/performance.md

Выступление Jan Jongboom из Cloud9 — «The Architect Way» на YAC-2012

http://events.yandex.ru/talks/300/ Презентация в pdf — http://download.yandex.ru/company/experience/yac2012/jongboom_yac_2012.pdf

Алгоритм конкатенации js-файлов для каждой страницы на лету

Хочется сделать один js-файл на страницу. Думаю над таким алгоритмом. Сразу после процедуры деплоя пользователи грузят кучу отдельных js-файлов, всё как обычно. Первый пользователь, зашедший на страницу, ставит lock в кэш (на 1 минуту), означающий, что именно ему повезло создать единый js-файл. При генерации страницы пути всех подключаемых js-файлов сохраняются в массивчик (у нас уже …

Read more

Подкасты, которые я слушаю

Javascript: The javascript show yayQuery PHP: Lately in PHP DevZone Ruby: The ruby show ASP/Windows (MS stack): Herding code Python: Пока в раздумьях, что бы послушать SQL: Пока в раздумьях, что бы послушать Остальные: The changelog FLOSS Weekly SitePoint Podcast Software Engineering Radio This Developer’s Life WebDevRadio

Ajax Layout

Доклад Олега Илларионова про архитектуру клиентской части vk.com (vkontakte). Олег Илларионов: Разработчик ВКонтакте, ответственный за API, разделы Видеозаписей, Друзей, Приложений, интеграцию с внешними сервисами Twitter, Email и другие. Студент ЛЭТИ. http://www.slideshare.net/profyclub_ru/ajax-layout

PHP coding style

Описал часть своего code style для PHP. To be updated.

IoC в php

Читал-читал про инверсию управления (Inversion of Control), всякие Pico и Phemto.