ViewModel Tool
Опубликовано: 31 марта, 2009 Filed under: .net, silverlight, WPF | Tags: INotifyPropertyChanged, MVVM, PropertyChanged, silverlight, ViewModel, WPF Оставьте комментарийДля тех, кто постоянно реализует во ViewModel интерфейс INotifyPropertyChanged. Clarius Consulting Labs выпустила утилиту ViewModel Tool, которая сгенерирует имплементацию интерфейса самостоятельно.
Chunk Cloud Computing by Jimmy Nilsson
Опубликовано: 30 марта, 2009 Filed under: architecture, DDD, development | Tags: ADDDP, CCC, Chunk Cloud Computing, DDD, Enterprise Domain Model, Jimmy Nilsson Оставьте комментарийДжимми Нильсон подытожил в своём блоге новый подход к архитектуре приложений, интерес к которому значительно вырос в последнее время: http://jimmynilsson.com/blog/posts/CCC.pdf
Пример TDD с использованием IoC-контейнера и Mock-фреймврка
Опубликовано: 30 марта, 2009 Filed under: .net, IoC, Mock, tdd | Tags: IoC, Mock, NUnit, tdd, Unity, xUnit Оставьте комментарийJarod Ferguson выступал с этим докладом на 2009 Boise Code Camp и выложил слайды и примеры кода. Советую ознакомиться.
Чуть подробнее читать здесь:
http://elegantcode.com/2009/03/29/boise-code-camp-test-driven-development-with-ioc-and-mocks/
Звучит заманчиво: Django на IronPython
Опубликовано: 29 марта, 2009 Filed under: asp.net, DLR, iis, iis6, iis7, Python | Tags: .net, asp.net, Django, IronPython, NWSGI, Python, WSGI 5 комментариевdef Introduce():
Дорогие мальчики и девочки, меня (как позже оказалось не только меня) интересует веб-индустрия и всё, что с ней связано, соответственно хочется вкусить разнообразных технологий, одной из них является известный фреймворк Django. Им и хочется заняться. Думаю, не стоит говорить, о том, что я .NET-разработчик, в связи с чем Python в чистом виде использовать не очень хочется, но хочется попробовать IronPython в деле. Тогда вполне очевидно, что Django на .NET должен являться ASP.NET приложением.
def WSGI():
Здесь нам нужно знать, что такое WSGI:
WSGI (англ. Web Server Gateway Interface, произносится виски) — стандарт взаимодействия между Python-программой, выполняющейся на стороне сервера, обычно из каталога cgi-bin, и самим веб-сервером, например, Apache.
Дополнительная информация: PEP 333
И нам безусловно повезло, т.к. есть готовая имплементация WSGI для ASP.NET: NWSGI – выполнена как ASP.NET 2.0 HttpHandler на IronPython.
Что примечательно, мало того, что NWSGI интегрируется с IIS и позволяет работать с сессиями, кешем и управлением пользователями, он интегрируется даже с графической средой управления IIS 7!
Это ещё не всё, NWGSI умеет также работать с Cassini (веб-сервер Visual Studio).
Думаю Вам, ровно как и мне, не терпится поработать с этим.
def PrepareIIS():
Итак, что нам необходимо:
- IronPython 2.0
- NWSGI 1.0
- Огромное желание сделать что-нибудь особенное на этом.
Для установки из пакета NWSGI копируем пример HelloWorld в папку C:\inetpub\wwwroot\HelloWorld (либо другой путь для ваших IIS приложений). Из этого же пакета копируем NWSGI.dll в папочку HelloWorld\bin (если пользовались инсталлятором, то в этом нет необходимости, т.к. она уже в GAC’е).
Далее из пакета IronPython 2.0 копируем в каталог HelloWorld\bin следующие сборки:
- IronPython.dll
- IronPython.Modules.dll
- Microsoft.Scripting.Core.dll
- Microsoft.Scripting.dll
Наша папочка HelloWorld должна выглядеть следующим образом:
HelloWorld\
- bin\
- NWSGI.dll (optional)
- IronPython.dll
- IronPYthon.Modules.dll
- Microsoft.Scripting.Core.dll
- Microsoft.Scripting.dll
- hello.wsgi
- Web.Classic.config
- Web.Integrated.config
Далее, если у нас ISS 7.0, то тогда копируем Web.Integrated.config в Web.config, иначе Web.Classic.config в Web.config.
Далее добавляем приложение на IIS, это можно сделать, как через графическое меню, так и воспользоваться консолью:
%systemroot%\system32\inetsrv\appcmd add app /site.name:"Default Web Site" /path:/hello /physicalPath:C:\inetpub\wwwroot\HelloWorld
Если же у вас IIS 6, то путь один – через графическое меню, а так же необходимо будет ассоциировать *.wsgi с ASP.NET ISAPI фильтром (по аналогии с *.aspx)
Теперь идём по адресу http://localhost/hello/hello.wsgi. И видим грациозное: "Hello, World!", yeah!
def InstallDjango():
Установить Django можно с помощью команды:
ipy setup.py install
Далее можно добавить проект и сгенерировать приложения:
ipy manage.py startapp AppName
ipy manage.py startproject ProjName
К сожалению, мне не хватило навыков для того, чтобы запустить django-приложение под NWSGI.
def SqlServer():
Подключить Django к Microsft SQL Server 2005 и выше можно с помощью следующей библиотеки:
http://code.google.com/p/django-mssql/
Так же можно почитать о подключении здесь: http://blogs.msdn.com/dinoviehland/archive/2008/03/17/ironpython-ms-sql-and-pep-249.aspx
def GetGratitude():
Огромную благодарность за выполненную работу хочу выразить Jeff Hardy и советую ознакомиться с его работами:
Какое отношение лягушки имеют к дизайну?
Опубликовано: 28 марта, 2009 Filed under: creative, design | Tags: apple, design, frog design, macintosh, Windows XP, yahoo messenger Оставьте комментарийКак связаны между собой Apple Macintosh, Microsoft Windows XP, Yahoo! Messenger for Windows Vista и многие другие дизайнерские решения?
Эта история уходит своими корнями к 1969 году, когда Hartmut Esslinger основал frog design. http://www.frogdesign.com/
Эта компания и занималась всеми вышеперечисленными разработками, а так же многими другими.
Шаблоны сохраняемости
Опубликовано: 25 марта, 2009 Filed under: .net, architecture, C#, patterns & practices | Tags: Active Record, Data Mapper, Identity Map, Lazy Load, Mapping Objects to Databases, Persistance, Persistance Pattern, Repository 1 комментарийОтличная статья в MSDN Mag April 2009, посвященная шаблонам сохраняемости:
http://msdn.microsoft.com/ru-ru/magazine/dd569757(en-us).aspx
Обзору подверглись следующие шаблоны:
Active Record
Data Mapper
Using a Repository
Identity Map
Lazy And Eager Loading
Virtual Proxy Pattern
Так же о шаблонах сохраняемости можно прочесть в блоге у Александра Кондуфорова:
http://merle-amber.blogspot.com/2009/02/orm.html
XAML Power Toys
Опубликовано: 24 марта, 2009 Filed under: .net, coding, design, development, silverlight, WPF | Tags: model, view, ViewModel, XAML, XAML Power Toys Оставьте комментарийXAML Power Toys – аддин для Visual Studio 2008 SP1 для разработчиков под Silverlight, WPF, облегчающий разработку генерацией XAML’а представений (View), а так же модели представления (ViewModel), со всем необходимыми бизнес-действиями и контролами.
http://karlshifflett.wordpress.com/xaml-power-toys/
Третья встреча Петербургской группы ALT.NET
Опубликовано: 24 марта, 2009 Filed under: .net, ALT.NET, architecture, asp.net mvc, DDD | Tags: ALT.NET, asp.net mvc, BDD, DDD, spbalt.net Оставьте комментарийТретья встреча Петербургской группы ALT.NET, посвященная разработке под ASP.NET MVC, пройдет в четверг, 2го Апреля в 19:00.
Встречи группы проходят по адресу Биржевая Линия дом 14, офис 409 (4й этаж) (карта).
Программа
- 19:00 – 21:00 — ASP.NET MVC, Александр Попов (c 2006 года Microsoft MVP)
ASP.NET MVC
Регистрация на сайте. Ждем вас!
Введение в проблемно-ориентированное проектирование (Domain-Driven Design) (DDD)
Опубликовано: 24 марта, 2009 Filed under: .net, architecture, DDD, development | Tags: Aggregate, BDD, DDD, Domain-Driven Design, Entity, Eric Evans, Layer, model, ObjectValue, Repository, S.O.L.I.D. Оставьте комментарийПроблемно-ориентированное проектирование (DDD) — это набор принципов и схем, помогающих разработчикам создавать изящные системы объектов. При правильном применении оно приводит к созданию программных абстракций, которые называются моделями предметных областей. В эти модели входит сложная бизнес-логика, устраняющая промежуток между реальными условиями бизнеса и кодом.
В этой статье я расскажу об основных принципах и схемах проектирования, соответствующих DDD. Считайте эту статью небольшим введением в проектирование и развитие полнофункциональных моделей предметной области. В качестве контекста беседы я использую сложную предметную область, с которой знаком: управление страховыми полисами.
Если вам понравятся представленные здесь идеи, я настоятельно рекомендую расширить свои познания, прочитав книгу Domain-Driven Design: Tackling Complexity in the Heart of Software (на английском языке), написанную Эриком Эвансом (Eric Evans). Это не просто первое и основное введение в DDD, это сокровищница информации, открытая для нас одним из лучших разработчиков программного обеспечения. Схемы и основные принципы DDD, о которых я буду говорить в этой статье, ведут свое происхождение от концепций, описанных в этой книге.
Статья сильная и заслуживает внимания, продолжение читать здесь:
http://msdn.microsoft.com/ru-ru/magazine/dd419654.aspx
ALT.NET, Питер, Четверг, 19 марта, 19-00, Компьютерная академия SoftJoys
Опубликовано: 17 марта, 2009 Filed under: ALT.NET | Tags: ALT.NET, AOP, BDD, DDD, Design Patterns, DSL, ORM, tdd Оставьте комментарийНе трудно догадаться, что многие разработчики стремятся к совершенствованию в своём любимом деле (разве нет?). Многие из вас постоянно слышат о новых для себя технологиях и методологиях разработки программного обеспечения, однако, не все находят время и стимул для того, чтобы ознакомиться с ними (примером тому являются методологии TDD, BDD, DDD, ORM, DSL, AOP, Design Patterns и т.д., а так же сопутствующие им инструменты).
Самым проверенным способом начать знакомство с методологиями и инструментами, а так же продолжить в практическом применении является общение с единомышленниками. В этом месте и стоит обратить внимание на движение .NET-разработчиков ALT.NET. Наша основная надежда, связанная с движением ALT .NET, состоит в том, что оно создаст сообщество, которое окажет помощь как новичкам втянуться в процесс создания высококачественного программного обеспечения, так и гуру развиваться в своих навыках.
Петербургская группа ALT.NET создана с целью проведения в Санкт-Петербурге семинаров и технических встреч, связанных с разработкой в среде .NET. Наша цель – помочь друг другу узнать больше о том, как работать в среде .NET, как эффективно использовать различные технологии, методологии и практики в нашей работе. Найти нас можно по адресу: http://spbalt.net/
Ближайшая встреча нашей группы пройдет в четверг, 19го Марта в 19:00 по адресу Биржевая Линия дом 14, офис 409 (4й этаж) (карта).
На ней мы планируем обсудить тему Аспектно-Ориентированного Программирования с использованием библиотеки PostSharp. Более детальная информация о наших встречах, а также форма регистрации, находятся на нашем сайте.
Заходите!