Articles filed in category 'Patterns'

  • In an application built with object-oriented techniques, objects are the bricks.You construct little pieces of code encapsulated in these bricks. To build bigger structures, you need to hold these bricks together. You can hardwire them together by instantiating dependent objects within your objects, but it makes the whole structure less flexible in the face of change. So you can adopt an inversion of control (IoC) container to act as your mason to assemble your bricks in...See More
  • The ASP.NET Provider Model drives many features within the ASP.NET architecture, yet most people only relate it to security or membership-related functionality. In this article, I’ll take you deep into the provider model, show you how it’s used from a security context, then take it up a notch and teach you how you can use it to turn any feature in your application into an extensible and swappable component. In fact, I’ll even show you why calling it the ‘ASP.NET’ Provide...See More
  • Do more with less code is the slogan of Visual Studio 2005.When it comes to reducing the amount of written code, wizards are definitely a viable option. Visual Studio 2005 has a lot of wizardry in it, especially to generate data access code. Any code that gets silently injected in your project follows a strict logic and a well-known design pattern. A full understanding how Visual Studio 2005 does it puts you on the right track to modify and extend the code to build your ...See More
  • Nov/Dec 08 .NET Rocks by Carl Franklin
  • As developers are just getting used to ASP.NET MVC 2 and Visual Studio 2010, Microsoft has already planned and released a preview of the next version of ASP.NET. What started out as “just another option” for ASP.NET developers has become the programming style of choice for developers writing .NET applications for the web.
  • Ben Coe gives us tips on planning an engineering project when you’re starting with a blank slate. He starts with hosting options, addresses scaling, and looks at tools like Heroku, Amazon’s Web Services (AWS), Amazon’s Elastic Computing Cloud (EC2), and the Twelve-Factor App Manifesto.
  • Martin introduces Design by Contract and Code Contracts, and gives you a sneak preview of Pex—Microsoft’s new test-suite generator. Along the way, he will show you how to add contracts to ADO.NET entities and some interesting coding strategies, good practices, and pitfalls you may encounter while making a deal with your code.With Code Contracts, Microsoft delivers its own flavor of Design by Contract for the .NET Framework. But wait, what is this thing sometimes called C...See More
  • Building loosely coupled application architectures requires more than just separating your application into different layers.In this article, I’ll take a project that was built using techniques that result in fragile, hard-to-test code and introduce some principles, techniques, and refactorings that will help you realize flexibility and testability in your applications.
  • Struggling to grasp the concepts of Model-View-View-Model? Keep it simple!
  • Jimmy explores what went right and what went wrong with version 1.0 of AutoMapper.
  • Ned introduces the most significant advance in error handling since exceptions and he shows you a new way to look at errors.This article introduces the most significant advance in error handling since exceptions.You get improved tools for today and a glimpse of radical possibilities for tomorrow. You get a framework which supports more expressive error handlers and gives them equal access to error context information. You get a roadmap for adding improved error handling ...See More
  • Derick outlines how to achieve the benefits of low coupling, high cohesion, and strong encapsulation. He also shows how the five S.O.L.I.D. design principles can get you there.Most professional software developers understand the academic definitions of coupling, cohesion, and encapsulation.However, many developers do not understand how to achieve the benefits of low coupling, high cohesion and strong encapsulation, as outlined in this article. Fortunately, others have cr...See More
  • Since the beginning of .NET, developers have been able to take advantage of multithreading when developing applications. In fact we’ve been given more than one programming model to accommodate just about any requirement that might come across. There’s the Thread class, the Thread Pool, the Async Pattern, and the Background Worker. Well, as if that isn’t enough, we now have a couple of more patterns that bring with them another genre - parallel programming.
  • As readers of this magazine, you are all experts at certain facets of software development, be it for the desktop, the web, SQL Server and now mobile platforms. Mobile programming was a fairly arcane development arena up until the recent announcement of Windows Phone 7 (WP7). Prior to WP7, you had to become intimately familiar with the myriad platforms and form factors available and write your programs to each of those phones. With the advent of WP7, Microsoft is now con...See More