Несвязанные представления

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

Но почему при этом все так жёстко привязываются к определённому фреймворку в представлениях (View)?

Я ненавижу использовать различные хелперы в виде Html.BeginForm в представлениях. От того, что это превращается во время выполнения в <html> выгоды ноль. Проще же сразу написать HTML тэги и отвязаться от абсолютно ненужно помощи фреймворка. 

Microsoft раздвигает тучи перед облаками

Услышал тут интересный подкаст об успехе Amazon, как компании онлайн торговли и как бога облачного. 

Microsoft серьезно продвигает свое облако Azure, компании просто не дает покоя успех и финансовые результаты Amazon. Я не финансист, но вроде бы американский книжный гигант никогда не показывал прибыли со своего основного бизнеса. Компания тратит почти все, что зарабатывает на своем сайте и сервисах вокруг него, но инвесторы счастливы, потому что для них важна не прибыль, а потенциал компании. Чем выше потенциал, тем выше акции и именно на курсе акций в основном зарабатывают. А дивиденды вроде бы фигня. 

Но тут Amazon создает свое облако S3 (оно кажется было первым из всех облачных сервисов Amazon) и оно выстреливает. Сейчас Амазон показывает прибыль и почти вся она идет от облачных сервисов, хотя при их создании была идея продавать их по себестоимости и особо не пытаться зарабатывать. 

Синий экран смерти Windows

Во времена Windows 95 не нужно было сильно напрягаться, чтобы увидеть синий экран смерти. Но начиная с XP и тем более Windows 7 это стало такой редкостью, что некоторые уже и забыли, как он выглядит. 

На работе я иногда вид его, явно проблема с драйвером или самой видеокартой, а на личном Surface Pro с Windows 10 я не помню, когда последний раз видел это чудо. 

Сегодня было совещание с американцами из двух разных городов, а у меня Surface сразу после разблокировки ушел в синий экран. Было не очень удобно, когда куча народа ждали, пока у меня перезагрузиться Windows. А этот гад еще и начал долго собирать информацию, видимо по умолчанию стоит создание полного лампа. Нужно будет его отключить.

Обязательная Dependency Injection

Я люблю Dependency Injection, я считаю этот патерн очень даже удобным, но я стал замечать, что им пренебрегают. Мне не нравится в последних версиях Symfony, что если у класса есть конструктор с параметрами, то он автоматически пытается привязывать все эти параметры. 

А я не хочу этого делать. У меня очень часто в моделях есть классы, которые получают жизненно важные данные через параметры. Symfony заставляет указать autowiring или отключить его в конфигурации. И это реально бесит. Простое использование классов с моими личными параметрами – теперь боль. Может кто знает, как просто отключить Dependency Injection на один из параметров, без необходимости лезть в service файл? 

Мало кто пишет не связанный код

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

Вот взять для примера всеми любимые фреймворки для PHP и посмотреть на код оправки почты - вот возьмем пример отправки E-mail из Symfony. Я специально беру его, потому что фреймворк хороший и в нем можно писать код без записимостей. 

Занимаюсь спортом на беговой дорожке

Вчера с собой в фитнес взял iPad и совместил приятное с полезным - читал книгу по хорошей архитектуре в PHP. Пока 15 минут бегал на хорошей скорости и еще 15 минут ходил пешком прочитал достаточно, чтобы написать аж две заметки. Чтобы не забыть тему я брал iPad и набегу записывал свои мысли, чтобы потом дописать заметку уже дома. Пока записывал тему, чуть не навернулся с беговой дорожки, потому что зацепил краем ноги край дорожки, который не движется (меня снесло вправо) и чуть не улетел. 

Солидная компания с плохо настроенным сайтом

Я не знаю зачем, но сын зачем-то полез на de версию сайта http://mercedes-benz.de, а результат вы можете видеть на скриншоте. Он у меня помешался на мерсах и постоянно изучает информацию по ним, может рассказать про них практически все. Он вообще у меня любитель машин. И когда он зашел на сайт, был немного восхищен такой простотой дизайна и информативностью контента. 

Чего не хватает в Microsoft Surface Pro

После использования Microsoft Surface Pro я все ещё люблю это устройство, го больше как компьютер. Как планшет я все же до сих пор предпочитаю свой старенький iPad 4 за его более маленький размер, более комфортное соотношение сторон и более тонкую магнитную крышку. 

У Surface слишком большой экран и в транспорте им все же пользоваться не так комфортно. Крышка со встроенной клавиатурой удобна, но когда её откидываешь назад, чтобы пользоваться устройством как планшетом, то толщина всего этого хозяйства делает устройство не очень комфортным в руке. 

Реклама в роликах Channel 9

У Майкрософт серьезные проблемы, что они стали встраивать рекламу в середину своих роликов Channel 9? В районе 2:30 идет откровенная реклама, причем невероятно дешевая на мой взгляд и даже отталкивающая. Абсолютно не захотелось пробовать этот кластер.  

Майка .NET

У меня есть майка, на которой кажется написанг Sleep, Eat, Code, Play и я что-то решил для работы купить что-нибудь с надписью .NET. Запустил поиск на eBay и результат получился немного неожиданным. Не уверен, что такое можно будет носить на работу. Вверху скриншота видно в строке поиска, что я искал. 

О блоге

Программист, автор нескольких книг серии глазами хакера и просто блогер. Интересуюсь безопасностью, хотя хакером себя не считаю

Обратная связь

Без проблем вступаю в неразборчивые разговоры по e-mail. Стараюсь отвечать на письма всех читателей вне зависимости от страны проживания, вероисповедания, на русском или английском языке.

Пишите мне