mgroves

Stories kicked by mgroves

What went wrong: IDbConnection life cycle(crosscuttingconcerns.com)

submitted by mgrovesmgroves(260) 3 months, 26 days ago

My new site Cross Cutting Concerns launched and almost immediately crashed once people actually started looking at it. What exactly happened, and how did separation of concerns make it easy to fix? read more...

add a comment |category: |Views: 8

tags: another

PostSharp Principles: Day 5 - Visual Studio Add-ins(www.sharpcrafters.com)

submitted by kingbee71kingbee71(511) 10 months, 26 days ago

Dustin Davis closes out week one of the series with a look at the Visual Studio add-ins PostSharp provides. read more...

add a comment |category: |Views: 22

tags: another

PostSharp Principles: Day 4 - OnMethodBoundaryAspect(www.sharpcrafters.com)

submitted by kingbee71kingbee71(511) 10 months, 27 days ago

Dustin Davis revisits the OnMethodBoundaryAspect class by building a profiler aspect to identify slow executing methods. As noted in Day 2, OnMethodBoundaryAspect has 4 methods for us to access specific points in a methods execution OnEntry - Before the execution of the method body OnExit - Always called when a method is done executing even if there was an error OnSuccess - Called only when a method is done executing and there were no exceptions OnException - Called only when a method has stopped executing due to an unhandled exception read more...

add a comment |category: |Views: 23

tags: another

PostSharp Principles: Day 3 - Applying Aspects with Multicasting Part(www.sharpcrafters.com)

submitted by mgrovesmgroves(260) 10 months, 28 days ago

Yesterday we started looking at multicasting. Today we’ll go even further with assembly level declarations and how to prevent aspects from being applied. read more...

add a comment |category: |Views: 22

tags: another

PostSharp Principles: Day 2 - Applying Aspects with Multicasting Pt 1 (www.sharpcrafters.com)

submitted by kingbee71kingbee71(511) 10 months, 29 days ago

Dustin Davis continues his series on PostSharp features by writing a how-to on applying aspects with multicasting - giving a clear understanding of multicasting through building a simple tracing aspect that logs the entry and exit of a method as it’s executed. read more...

add a comment |category: |Views: 27

tags: another

PostSharp Principles: Day 1 - OnExceptionAspect(www.sharpcrafters.com)

submitted by kingbee71kingbee71(511) 11 months ago

The first in a series of blogs by Dustin Davis on PostSharp features. Each feature will be explored and used in a functioning project to give a better understanding of the examples. This week Dustin uses PostSharp to enhance a simple contact management application while giving readers an introduction to some of the out-of-the-box aspect classes that PostSharp provides. read more...

add a comment |category: |Views: 66

tags: another

5 Ways That Postsharp Can SOLIDify Your Code Transaction Management(www.sharpcrafters.com)

submitted by kingbee71kingbee71(511) 1 year, 2 months ago

Source code used in these blog posts is available on GitHub <https://github.com/mgroves/PostSharp5> The last consulting gig I was at, we were required to use an SOA framework to interact with enterprise-level data. This framework was SOA almost entirely in name only, completely home-grown, and was something of a misguided &quot;pet project&quot; of the chief of IT, insecure, built on some shaky technologies, and was created to solve a problem that was either non-existent, or solvable by much simpler means. My team was very frustrated by this framework, but as consultants, you sometimes have to learn to pick your battles, go for the easy wins first, build trust, and then gradually tackle larger problems. However, this can be a very slow process that takes years, depending on the organization. read more...

2 comments |category: |Views: 184

tags: another

5 Ways That Postsharp Can SOLIDify Your Code: Authorization(www.sharpcrafters.com)

submitted by mgrovesmgroves(260) 1 year, 2 months ago

One of the best uses of AOP is to take cross-cutting concerns that repeat themselves over and over in your system, and move them into their own class. Authentication and authorization are important parts of many applications, but too often the code to check if a user is authorized is spread all over the app. A class should have one and only one reason to change, so let's get the "auth" stuff into its own class. read more...

add a comment |category: |Views: 280

tags: another

5 Ways That Postsharp Can SOLIDify Your Code: Logging and Auditing (www.sharpcrafters.com)

submitted by gfraiteurgfraiteur(988) 1 year, 2 months ago

Matt Groves's journey through the top 5 aspects inevitably meets logging and auditing. But rather than staying at the "Hello, world" level, Matt explains how the aspect can be optimized for performance, and shows how the aspect optimizer, a feature of the professional edition of PostSharp, makes the difference. read more...

add a comment |category: |Views: 279

tags: another

Fitting AOP Into the Paradigm Jigsaw(www.sharpcrafters.com)

submitted by gfraiteurgfraiteur(988) 1 year, 3 months ago

Object-Oriented Programming, Functional Programming, Declarative Programming, Generic Programming, ... Johnathan Worthington fits Aspect-Oriented Programming in the paradigm jigsaw and reminds its unique role in coping with the complexity of modern business applications. read more...

add a comment |category: |Views: 150

tags: another

5 Ways That Postsharp Can SOLIDify Your Code: Caching(www.sharpcrafters.com)

submitted by mgrovesmgroves(260) 1 year, 3 months ago

Sometimes there's just no way to speed up an operation. Maybe it's dependent on a service that's on some external web server, or maybe it's a very processor intensive operation, or maybe it's fast by itself, but a bunch of concurrent requests would suck up all your resources. There are lots of reasons to use caching. PostSharp itself doesn't provide a caching framework for you (again, PostSharp isn't reinventing the wheel, it's just making it easier to use), but it does provide you with a way to (surprise) reduce boilerplate code, stop repeating yourself, and separate concerns into their own classes. read more...

1 comment |category: |Views: 335

tags: another

5 Ways Postsharp Can SOLIDify Your Code: Lazy Loading of Dependencies(www.sharpcrafters.com)

submitted by gfraiteurgfraiteur(988) 1 year, 3 months ago

Matthew Groves discusses how combining aspect-oriented programming and a service locator can provide an attractive alternative to dependency injection containers. Dependencies are loaded lazily when a property or field is first fetched, and there's no reference to the service locator in source code. read more...

add a comment |category: |Views: 363

tags: another

Baby steps to create NuGet Package.(vkreynin.wordpress.com)

submitted by vkreyninvkreynin(1424) 1 year, 5 months ago

Step by Step how to create a simple NuGet package. read more...

add a comment |category: |Views: 65

tags: another

Microsoft Visual Studio - From Past to Present(www.ironshay.com)

submitted by shayfriedmanshayfriedman(1411) 1 year, 5 months ago

Recently I‘ve been working at a client site where they are using Visual Studio 2005 for their main project. I’ve gotta say that I was a bit surprised since I haven’t come across VS2005 for a few years… I immediately became nostalgic and decided to share. So I’m proud to present, Visual Studio – from past to present! read more...

1 comment |category: |Views: 613

tags: another

C# 5.0: async/await vs AOP(www.sharpcrafters.com)

submitted by gfraiteurgfraiteur(988) 1 year, 6 months ago

Gael Fraiteur compares the new async and await keywords of C# 5.0 to what has already been possible for 4 years using aspect-oriented programming. He explains the differences between both aproaches. While AOP can make a synchronous method run in a backgroud, C# 5.0 allows you to really program asynchronous methods. read more...

add a comment |category: |Views: 119

tags: another

C# alternative for Ruby’s acts_as_tree, part 1(blog.onderweg.eu)

submitted by werchterwerchter(30) 1 year, 6 months ago

First part in a two part blog post series about my search for a C# alternative for the Ruby's acts_as_tree plugin. In this article I'll be exploring ways to implement mixins, such as acts_as_tree, in C# using extension methods. read more...

add a comment |category: |Views: 22

tags: another