Психологи рекомендуют учиться на жизненных ситуациях, оценивая те или иные моменты, чтобы лучше увидеть себя глазами своих клиентов (подчиненных, начальников, инвесторов, родственников, или еще кого-то, смотря по какому вопросу вещает психолог).
Одна из самых показательных ситуаций для оценки взаимодействия заказчик-исполнитель — ремонт в квартире. Отличие от услуг, скажем, парикмахера — в отношении к большим суммам денег, а это очень заметно сказывается на остроте восприятия.
Делая собственный ремонт, я не мог не воспользоваться такой возможностью, чтобы лучше понять своих заказчиков и то, что в поведении хорошо, а что — плохо.
Прочитать остальное »
View Comments
Материалы можно скачать здесь. Там есть и слайды и исходники демо-примеров.
Что показано в примерах:
1. Использование Shared Views для генерации типовых интерфейсов на основе метаданных моделей
2. ControllerFactory, который умеет запускать generic-контроллеры
3. Расширение ViewEngine, которое позволяет создавать и переопределять виртуальные View-parts
Список интересных мест в исходниках, с которых стоит начать их изучение:
SharedViews-and-TemplateHelpers
Контроллеры:
\Controllers\DictionaryColorsController.cs, DictionaryDepartmentsController.cs
Сами shared views:
\Views\Shared\ListSelect.cshtml, Update.cshtml
Template Helper для таблиц:
\Views\Shared\DisplayTemplates\Table.cshtml
Метаданные для объектов:
\Models\Color.cs, Department.cs
GenericControllers
Сам generic-контроллер:
\Controllers\DictionaryController.cs
Регистрация generic-контроллера и маппинг моделей:
\Global.asax.cs, строки 28-30
Фабрика generic-контроллеров:
\GenericControllerUtil\GenericControllerFactory.cs
Регистрация фабрики для поддержки generic-контроллеров:
\Global.asax.cs, строка 39
Расширение ViewEngine для работы виртуальных View:
\GenericControllerUtil\CustomViewLocationsViewEngine.cs
Сами виртуальные View:
\Views\DictionaryController`1\Color\Footer.cshtml
Регистрация расширения ViewEngine для поддержки виртуальных функций:
\Global.asax.cs, строка 41
View Comments
25 марта 2011 года в Челябинске пройдет конференция .NET разработчиков.
На эта конференции соберутся люди, которые расскажут не столько о программировании на .NET, сколько о лучших практиках и последних тенденциях, связанных с проектированием, разработкой и тестированием программного обеспечения.
Вход свободный. После регистрации.
Сайт: http://www.dotnetconf.ru/
Доклады: http://www.dotnetconf.ru/Discussion
Регистрация: http://www.dotnetconf.ru/Registration
Для тех, кто сомневается, стоит ли выступать на конференциях: http://blog.byndyu.ru/2011/02/blog-post.html
Tags: dev, анонсы, программирование
View Comments
В мире программистов существует множество разных холиваров: «open source или закрытый код?», «гибкость (agile) или дисциплина?», «метрики или интуиция?», «процесс или продукт?», «творчество или формализм?», и т.д. Сторонники всех этих теорий всегда находят примеры того, что их сторона лучше, чем другая. Из этого следует, что все они правы, но по-своему, и в реальной жизни нужен компромисс и умение совмещать на первый взгляд противоположные подходы, в зависимости от ситуации — условий проекта, характера и опыта программистов, и т.д. Именно эта идея, высказанная в предисловии Томом ДеМарко и убедила меня купить эту книгу и дочитать ее до конца.
Но, видимо, после такого предисловия я ожидал, что в книге сразу будут даваться конкретные решения, а при чтении первой части у меня очень часто возникал вопрос «и это все?», после которого хотелось закрыть книгу. Пожалуй, до раздела с анализом и выводами я дочитал только лишь потому, что автор подготовил меня к такому развитию событий во введении, и пообещал все-таки сделать свой анализ.
Кроме освящения и анализа различных холиваров, в этой книге упоминается еще одна правильная мысль: проблемы, стоящие перед программистами, по своей сути — не новы, и, как следствие, те или иные споры и решения можно найти и в других областях, решающих задачи. Эта же идея, кстати, есть и у М. и Т. Поппендик в их «Бережливом производстве ПО».

Креативное программирование 2.0 на озоне.
Tags: книги, программирование
View Comments
Написал: Алексей Волков в категорию Все, Личное
Опубликовал один музыкальный черновик http://vk.cc/7c0XM — буду рад услышать первые мысли, пришедшие после прослушивания.
Tags: музыка
View Comments
В продолжение предыдущей теоретический темы про ActionScheme-driven Development — пример реализации такого подхода к разработке. Вообще, сам подход не зависит от языка программирования или фреймворка, но здесь я буду приводить примеры с использованием ASP.NET MVC.
Для реализации такого подхода, когда есть отдельное описание схемы взаимодействия с пользователем и отдельное описание модели данных, можно вместо привычных контроллеров создавать их generic-версии. В паттерне MVC контроллеры (как и вьюшки) зависят от модели, и каждая связка Controller+View работает со своей моделью данных, в то время как их generic-версии будут зависеть от класса однотипных моделей.
View Comments
Написал: Алексей Волков в категорию Все, Личное
Изначально это была обычная акустика, в которую я потом установил звукосниматель и выход на джек.
Прочитать остальное »
Tags: фото
View Comments
Написал: Алексей Волков в категорию Все, Личное
Выделил в блоге отдельную категорию — разработка, и вынес ее в отдельный rss-фид: http://aivolkov.ru/feed/developers/
Тем, кому не интересно следить за всеми записями в блоге — могут переключиться на него.
Иконка в разделе контактов также предлагает на выбор один из двух фидов.
Если кому-то нужен фид для других категорий — предлагайте
View Comments
Есть такой класс задач разработки ПО, главная цель которых — предоставить пользователю средство управления данными. Это различные корпоративные информационные системы (КИС, ERP) и прочие ИС (CRM, и т.п.). Именно о них я буду говорить далее. Назовем их, для краткости, ИС (информационные системы).
При разработке ИС все обязательно проходят через три этапа: разработка модели данных, разработка бизнес-логики, управляющей этими данными, и разработка интерфейса пользователя. Есть интересный процесс — Model-Driven Development (MDD), в котором утверждается, что определив модель данных все остальные этапы можно выполнить автоматически. Не все с этим соглашаются, так как это утверждение редко дополняется другим немаловажным моментом: это действительно так, но только в некоторых случаях, которые нужно еще уметь отличать от всех остальных случаев. Кроме того, фраза «выполнены автоматически» еще не означает, что больше не нужны программисты интерфейсов и бизнес логики — просто их задача немного видоизменяется, и цель этого изменения — скорость и цена разработки. И если к этому подойти с умом — можно это сделать даже не в ущерб качеству, как можно было бы предположить, зная истину «speed/quality/cost: choose two».
Обычно все примеры, связанные с MDD, содержат достаточно простые схемы, и может показаться, что это применимо только для простых админских страничек, как многие и воспринимают, например, ASP.NET Dynamic Data. Вот что, на мой взгляд, очень важно при разработке реальных приложений: возможность задавать схемы действий пользователя. Именно это позволит перейти от простых админских приложений, которые только и могут, что редактировать таблицы базы данных, к более серьезным проектам.
View Comments
В очередной раз посмотрев фильм с так сильно мешающими мне низкочастотными искажениями звука (тут или тут — на 1, 17 и 23 секундах русской дорожки есть, на английской — нет), хочу написать подробно, что я об этом думаю. Если в результате хотя бы один будущий «релизер» задумается перед тем как портить звуковую дорожку, и сделает «релиз» не испортив ее (звуковую дорожку), — значит я достигну своей цели.
Начну с видео-части, потом перейду к проблеме звука.
Прочитать остальное »
Tags: видео, интернет, кино, тз, фильмы
View Comments
|