Summary 27.04.2009

27/04/2009

Sharp

Luis presents how the duplicate entity validator works and what is inside the SharpArch.Web namespace.

DDD

Jonathan Oliver joins the debate Greg and Ayende had over the past few days, sharing his ideas on the repository pattern. Jonathan’s concerns summarize some of the most frequently asked questions around repositories:

  1. How do we best query the repository to find the particular aggregates that we care about?
  2. How do we handle UI concerns such as paging within the repository?
  3. Does the repository even care about UI concerns?
  4. How do we display domain objects to the UI (this is only slightly related to the repository pattern).
  5. How do we modify our domain objects to support lazy loading?

ASP.NET MVC

Keyvan Nayyeri, one of the authors of Beginning ASP.NET MVC 1.0, writes about IRouteHandler.

The storm continues as Chad Meyer presents his opinion on MVC vs. WebForms. While Chad puts the two technologies head to head, go and watch this video where ASP.NET MVC and WebForms are combined. Simone Chiaretta, the other author of Beginning ASP.NET MVC 1.0, shares his thoughts on when and why ASP.NET MVC should be adopted.

ASP.NET

Scott Mitchell announces that another four hosting tutorials are now available on www.asp.net. These tutorials follow the first six tutorials on hosting.

Windows 7

The RC release will be out this week and the Public Sector Developer Team published a few useful links with the changes from the beta.

Visual Studio 2008

Rick Strahl gives another great tip on how to create template projects.

Internet Explorer 8

Check-out this interesting video on box sizing and vertical text. John Hrvatin, the Lead Program Manager on IE Team, has some great tips on how to improve the application performance with IE8.

TDD

Karl Seguin writes about the 7 phases of unit testing. Where are you?

ASP.NET 4.0

Remember Control Adapters? Adapter Groups were supposed to be included in ASP.NET 4.0 but Scott Galloway announces that they will be out in the next beta.

Agile development

Nick Malik has a great article on agile development and agile architecture and what are the required changes from the classic waterfall and BDUF approach in order to improve the delivery.

Architecture

Karl Seguin continues his tutorial on building a validation framework showing how client-side validation can be done.

C#

Eric Lippert as usual has a great post explaining what is wrong when value types are by definition as variables allocated on the stack.

kick it on DotNetKicks.com


Summary 20.04.2009

21/04/2009

DDD

Yves Goeleven continues his DDD saga explaining this time how to model less obvious concepts such as constraints and processes using the strategy and specification patterns.

Go and watch this interview with Eric Evans about the state of art in DDD!

Architecture

Udi Dahan wrote about event driven architecture using NServiceBus.

Ayende answers to Justin’s post saying the cost for implementing the abstraction of IQueryable to the upper layers could be bigger than the cost for fixing bugs that could arise from possible modifications of the query.

RIA

Nikhil wrote a great post on the View Model pattern with RIA Services. The first part of the article nicely presents how we can use the repository pattern, the DomainService and the DomainContext.

Team Foundation Server

Brian Harry has a nice post about the key concepts in Team Foundation Server 2010. Team Project Collections is something I wanted and needed for my projects.

ADO.NET Data Services

Gil Fink wrote about making cross domain calls for a data service using a proxy service.

Enterprise Library

Grigori Melnik announces the start of the development for Enterpise Library 5.0.

S#arp

Luis Abreu posted two more articles about validating objects and working with entities.

TDD

Gabriel Schenker will write a tutorial on Rhino Mocks. The first part of this tutorial introduces the two most used frameworks: Rhino Mocks and Moq.

ASP.NET AJAX 4.0

Politian continues the articles on ASP.NET AJAX 4.0 and ADO.NET Data Services writing about many to many relationships.

JavaScript

Rick Strahl wrote an excellent article on how to extend the JSON support for date objects.

NHibernate

Oren continues his talk about NHibernate mapping with <join/> and <any/>.

Oslo

Shawn Wildermuth presents how relationships are mapped in MSchema.

LINQ

Daniel Guard has two nice posts with LINQ tips. In part one, he covers eager loading, retrieving multiple entity types from a single stored procedure, intercepting CRUD operations. In part two, he shows how to control the TSQL, how to clone an entity and and to handle complex stored procedures.

ASP.NET MVC

Sankarsan has a nice tutorial about writing a layered ASP.NET MVC application with Entity Framework. In the first part, he presents the options for the O/R layer isolation. In the second part, he creates the repository. In the third part,  he creates the service layer. In the fourth part, he build the ASP.NET MVC application.


Summary 17.04.2009 – 19.04.2009

21/04/2009

Visual Studio

Another great podcast on Windows Workflow 4 is available on Channel 9.

Design patterns

Oren has posted a very nice article on the repository pattern which is used as a singleton in many cases due to lack of understanding. Oren advocates for using directly NHibernate instead of using the additional repository pattern. The problem in question here is the fact that the repository contains methods such as FindXXX which according to DDD principles should belong to query objects and that repositories should deal only with domain state changes. Udi Dahan wrote an article on whether to use query objects or methods in the repository two years ago. Very often the repository is used for achieving persistence ignorance in a DAO fashion. In DDD, the repository has the precise role of maintaining the integrity of aggregate roots.

Following his above mentioned post, Oren wrote another one explaining how mocking NHibernate can be achieved when taking the above mentioned approach where repositories aren’t used.

Justin Etheredge replies to Oren’s approach which uses the Query Object pattern considering that allowing an IQueryable<> from the repository would allow the upper layers not only to do presentation concerns actions such as paging and sorting but also modifying the query itself.

Architecture

I think that Oren’s posts on the fact that the DAL goes all the way to UI, coins the exact problem with the classical three layers applications that we encounter very often.

ASP.NET MVC

Kobe tries to be the starter kit from Microsoft for building ASP.NET MVC applications. So far, it has failed. Go and check my previous post to get all the details. Oren has also a response to Phil which leads him to the same conclusion as the one from by previous post:

Stop shipping official guidance package without involvement from the community.

Application Lifecycle Management

David Chappell announces a series of posts on Application Lifecycle Management without having the focus on Microsoft’s products an technologies.

NHibernate

Oren Eini has another posts on named queries and one-to-one mapping.

Peter Bromberg wrote a nice article on Fluent NHibernate automapping.

Gabriel Schenker has published his second article on Fluent NHibernate. He also has a nice article on 2nd level cache and multiple databases.

Velocity

If you are starting with Velocity, you might want to check Andrea Colaci’s overview.

The Velocity team gives a short explanation on regions and high availability and a tip on how client performance can be increased.

Azure

Rob Bagby posted the third part of his tutorial on building a Azure shopping cart.

TDD

Brad Wilson has a very interesting post where he chooses Design by Example instead of TDD.

Internet Explorer 8

The JScript blog wrote on how JScript versioning works in IE 8.

RIA Services

Fredrik Normen has two interesting posts on RIA having in mind Silverlight.

MS Deploy

The RC1 release of MS Deploy is available.

Sharp

After finishing his ASP.NET MVC series, Luis Abreu started to talk about the S#arp framework. The first two posts present the BaseObject class and value objects.

Entity Framework

Simone Ince has an interesting series on auditing presenting the types of auditing and how data auditing works with Entity Framework and the auditing implementation.


Summary 16.04.2009

16/04/2009

JQuery

Check-out this nice JQuery horizontal accordion plugin by Alexander Graef (via Ajaxian).

NHibernate

Peter Bromberg shows how we can use automapping with Fluent NHibernate.

Oren Eini continues the posts about NHibernate writing about schema generation capabilities.

WordPress

If you are using WordPress like I do, you might want to take a look at the following WordPress hacks posted by Smashing Magazine.

Technology

Paul Graham has a nice post about how important startups may be in the new economic phase and whether they can flourish only in certain centers.

NServiceBus

Udi Dahan announces the release of NServiceBus 1.9 RTM.

Entity Framework

Alex James just posted another great tip on how to attach an entity.

Compilers

If you love compilers or simply want to learn more, you must check a new project released on Codeplex by Microsoft Research : CCI (Common Compiler Infrastructure).

Managed Extensibility Framework

Nicholas Blumhardt continues the post on MEF with a very interesting one on how components tend to represent their dependencies as queries over the available set of services. The basic idea is that dependencies are resolved not only on their type but also on additional attributes that can be expressed as queries.

Agile

Jurgen Apello is conducting a survey about agile practices.

Jimmy Bogard has put together a nice list of tips for improving the build performance on a local machine.

Scott has a great article about Agile Process Maturity Model (APMM) in practice.

Team Foundation Server

If you were wondering whether you can integrate TFS 2008 SP1 with SQL Server 2008 SP1, you might want to check Brian Harry’s post.

ASP.NET MVC
Keyvan Nayyeri, one of the authors of Beginning ASP.NET MVC 1.0, wrote a nice post on custom route constraint.

David Hayden writes about output caching attribute and caching profiles.

ASP.NET 3.5

As usual, David Ebbo wrote another great post on one of the new hidden gems for optimizing the compilation behavior.

Pete LePage shows how we can use the X-UA-Compatible tag in ASP.NET pages to specify the rendering mode in Internet Explorer 8.


Follow

Get every new post delivered to your Inbox.