//Cloud notes from my desk -Maheshk

"Fortunate are those who take the first steps.” ― Paulo Coelho

About Glowcode


GlowCode is a complete real-time performance and memory profiler for Windows and .NET programmers who develop applications with C++, C#, or any .NET Framework-compliant language. GlowCode helps programmers optimize application performance, with tools to detect memory leaks and resource flaws, isolate performance bottlenecks, profile and tune code, trace real-time program execution, ensure code coverage, isolate boxing errors, identify excessive memory usage, and find hyperactive and loitering objects. For native, managed, and mixed code.

We have used it in our development project and seems useful.

2013-07-28 Posted by | .NET General, windbg | Leave a comment

Differences Between MEF and Unity

The main reasons to use Unity (or any other IoC container) are if:

  1. You have dependencies between your objects.
  2. You need to manage the lifetime of an object.
  3. You want to manage dependencies at runtime, such as cache, constructors, and
  4. properties.
  5.  You need to intercept the creation of an object.

The main reasons to use MEF are if:

  1. You need to implement external and reusable extensions in your client application, but you might have different implementations in different hosts.
  2. You need to auto-discover the available extensions at runtime.
  3. You need a more powerful and extensible framework than a normal Dependency Injectionframework, and you want to get rid of the various boot-strapper and initializer objects.
  4. You need to implement extensibility and/or modularity in your component

> Excerpt from book Building Enterprise Applications with Windows Presentation Foundation and the Model View ViewModel Pattern

2013-07-20 Posted by | .NET General | Leave a comment

Don’t know where to start? Follow – .NET Technology Guidance

You can learn more at our .NET Technology Guidance site, or download the .NET Technology Guide for Business Applications directly.

This guide is primarily intended for decision makers, architects, and developers who are responsible for selecting technologies and patterns for their business applications. It provides both background information and recommendations that will help you during your software planning process. The guide focuses on business applications but will also be useful for developers who are building other types of software.
new_patterns

The document provides guidance for both established and emerging application patterns. In particular, emerging patterns place a heavy emphasis on cloud services and multi-platform device clients.

  • Established application patterns: These include client/server applications and web applications optimized for desktop browsers. They act as foundational applications and are heavily centered on existing business processes.
  • Emerging application patterns: Multi-devices and the cloud are emerging as technology enablers for new applications. They complement the established patterns by extending the applications to focus on the end user

Read from source here

2013-07-17 Posted by | .NET General | Leave a comment