Welcome to Windows Presentation Foundation (WPF)
Top Tasks :

WPF Community Bloggers

Browse by Tags

All Tags » Patterns » .NET   (RSS)

  • Is ASP.NET good enough for startup's

    James Avery has a link to Jeff Eaton post that asks "Why not ASP.NET [for startup's]?". Let's consider that if this is a cost thing then it's running Windows (costs) as opposed to Linux (free, unless your paying for support options but its relative). ASP.NET\Visual Studio Express (web edition and c# edition) are free. Jeff's remaining points can be addressed as Webform issues not ASP.NET issues, if your looking for Rails style in ASP.NET then projects like Castle MonoRail shoild be your first port of call. You can find all the power, flexability, community and all that Rails goodness and it's built onto of ASP.NET framework. To be fair to webforms, it's short comings are well know, it's product team is hard working in solving those problems and as a great community (which extends to the ASP.NET framework as a whole) of users and problem solvers\experts like the MVPs and ASP Insiders. To address problem 1, if you want to cut costs and run Linux you can still use ASP.NET using Mono. Mono Read More...
  • SubSonic and MVC

    Rob has been busy, creating two SonicCasts :) MVC and using SubSonic MVC templates . Rails from a ASP.NET POV . MVC can be little confusing ( look at the confusion with MVC1 and MVC2 for example), webforms in some respects does follow MVC but ideally the layers and concerns need to be isolated and that is where the problems start. However, ASP.NET as a framework can be built to support a MVC framework (look at Castle MonoRail for example) but still some problems remain, needing to create IContex for Context\HttpContext for example . Scott is on the case however , so overall good times ahead. Read More...
  • The trouble with webforms

    Ayende has a post on "Removing the leaky abstractions from webforms", webforms do leak abstractions like a water mains with a hole it. I see folks going to great lengths to reduce page bloat by removing all viewstate and in the process creating a kind of ASP on .NET model. MonoRail helps you achieve this goal and does provide a clear seperation of concern by following MVC closely. Read More...
  • Using IoC with Castle MicroKernel

    Inversion of Control or IoC is very simply put a pattern defined by Martin Fowler for injecting a class's dependencies. IoC helps with mocking objects and thus a dependency of a object. It helps improve testability of a object because of the easy of mock object injections. Java and .NET have a good collection of OSS frameworks for IoC, Spring is quite popular in the Java world and Spring.Net in the .NET world. There is quite a lot of XML configuration to Spring and a alternative and popular choice in the ..NET world is Castle MicroKernel . The documentation is top notch for learning how to use this framework with a work through guide , well worth a look. Read More...
  • Castle Igloo

    Ayende has a very interesting post on a new project from Castle called Igloo, a MVC implementation for webforms . Webforms are tricky to adapt to MVC or MVP because of code behind, it makes the view a two part visual and event controller that which in in turn makes the controller a two part controller class and code behind and in turn binds the view to the controller tightly. True degrees of seperation are lost. Igloo does look to make the controller and view not aware nor dependent on each other. If you treat the code behind as a lightweight display mech and allocate more into the controller class then you have a good MVC approach. You will still have the problem of consuming events in the controller class from the view and removing web dependencies in the controller, the many problems of webforms. True MVC on ASP.NET is still the domain of Castle MonoRail but I will explore Igloo will interest. Read More...
  • Applying the MVP pattern in winforms

    Some great articles from. Dan Bunea Jeremy Miller Michael Feathers I wonder how folks are overcoming threading issues when applying a pattern such as MVP to their GUI (updates to GUI components occuring in a thread for example), thoughts welcome. Read More...
  • RoR style database migration for .NET

    Marc has the details on a RoR style database migration for .NET that is wrapped into the Castle Generator project. The Castle Generator project is very interesting too, this is a RoR style Scaffolding system. Read More...
  • Webbness, Boo + Rails

    I've started taking a look at Boo for some very early MbUnit protyping. While exploring the site I came across Webbness which is a Rails style MVC framework (along with code generation and ORM) for ASP.NET that uses Boo. It's not clear if it generates MonoRail style unit tests for each pattern layer but that would rock. Read More...
  • MonoRail in a commerical world

    MonoRail is a very hot topic with me right now so t his post from Scott Bellware is timely . Scott makes an interesting point. [MonoRail] simplifies web development on .NET much in the way that Ruby on Rails simplifies web development period. Corporate shops building web apps on .NET are largely staffed with developers who have been exposed only to those ideas and approaches that Microsoft has allowed passage into its customer collective consciousness. Rails exposes a number of key concepts to the consciousness, namely patterns (like MVC) and testability, and these are baked right into the framework. You can use Rails and not be aware your using these things because it's a a part of the framework, you don't have to go to any extra lengths to make use of patterns or achieve testability because the framework is built on these things. In web space of .NET these things feel unnatural because webforms does not make use of them. MVP and MVC in a webform context feels unclean because you Read More...
  • Castle RC2

    Ayende has a great post on building applications (with a dash of TDD) using the Castle RC2 release, some things stand right out here in that testability and patterns are baked right in (with the VS projects supporting this structure). Share this post: Email it! | bookmark it! | digg it! | reddit! Read More...
  • webforms vs monorail

    It was bound to happen sooner or later, someone comparing webforms to monorail . All of the pro's and con's make sense and from a webforms point of view it's cons like viewstate and pros like controls/vs support that stand out. For me monorails design is very important in that it follows MVC and you get an ideal world of a clean, light weight view and testability for controller and model . Anyone that has ever tried to unit test webforms will know it's a world of pain. Thats not to say you can't do patterns in webforms, MVP can be done (and Phil Hackk has a great example) but it does introduce complexities that may but folk off. In an ideal world webforms would have MVC baked in would support templates for light weight view genertion would bake in Atlas for templates to avoid page postbacks Share this post: Email it! | bookmark it! | digg it! | reddit! Read More...
  • The DataModel-View-ViewModel pattern

    Dan Crevier has series of posts on the DM-V-VM pattern , including how to implement it and how ot test it. Porting to MbUnit or NUnit would be a change of referance and using statement and from [ TestClass ] public class StockModelTests [ TestMethod ] public void TestStockModelProviderGetsValue() to [ TestFixture ] public class StockModelTests [ Test ] public void TestStockModelProviderGetsValue() Share this post: Email it! | bookmark it! | digg it! | reddit! Read More...
  • Coding to MVP but I need more

    I have spent all day today coding a asp.net app to the MVP pattern and it's been an interesting exercise. Read More...
  • ActiveRecord is the answer

    In my last post I pondered how a ORM and Sprocs fit in , for me a database that is in at least 4nf and Read More...
  • IContext, good or bad

    One of the comments in Phil's post on using the MVP patten is mapping the Context object to a type Read More...
More Posts Next page »

Copyright © 2006 Microsoft Corporation. All Rights Reserved. | Terms of Use | Privacy Statement | Contact Us