DCSIMG
AOP - IHateSpaghetti {code}

IHateSpaghetti {code}

VSX, DSL and Beyond by Eyal Lantzman

Syndication

Coding / Architecture

Extensibility /DSL

Projects

Articles

Browse by Tags

All Tags » AOP (RSS)
Blog Carnival #6
In this carnival there're a lot of software design/patterns and frameworks a bit of SOA, UML, DSL and NDepend and . . . V I S U A L S T U D I O 2 0 1 0 !!! UML Rejoining the OMG – UML and beyond - by Steve Cook Visual Studio 2010 Visual Studio 2010 and .NET 4.0 Overview Videos on channel9 ALL WEEK !!! DSL How do I create a ModelElement via API by Pablo Galiano F# and functional programming Object Oriented F# - Creating Classes by Matthew Podwysocki Software design ,Design Patterns and Frameworks...

Posted by Eyal | with no comments

Blog Carnival #5
After a couple of weeks of crappy Internet connections I finally managed to connect via my cell phone (still crappy though). Visual Studio Extensibility Localized VS Shell (w/ SP1) Download Links T4 Editor - Clarius' T4 Editor ships V1.0 DSL DSL Questions and answers by Martin Fowler ASP.NET jQuery and Microsoft Algorithms Back To Basics: Algorithms and Going Back To Virtual School Functional programming The Weekly Source Code 34 - The Rise of F# Object Oriented F# - Extension Everything Side...

Posted by Eyal | 1 comment(s)

Intercept.It new drop - including Generics
The new bits for my AOP framework. The changes for the helper class were relatively minimal. Method creation: 1: public IGenerationContext CreateMethod(TypeBuilder typeBuilder, MethodInfo method) 2: { 3: Type[] parameterTypes = GetParameterTypes(method); 4: MethodAttributes attributes = MethodAttributes.Public; 5: if (!method.IsFinal) 6: attributes |= MethodAttributes.Virtual; 7: 8: MethodBuilder methodInfoBody = typeBuilder.DefineMethod( 9: method.Name, 10: attributes, 11: method.CallingConvention...

Posted by Eyal | 1 comment(s)

Creating AOP IL Emitting framework – Part 3
In the previous post I talked about how to create a simple, not really helpful (yet), proxy class. In this post I'll add, for each method, the complete implementation - includes try-catch block and method calls the to intercepting library that will in turn propagate the call to all the registered advices based on the pointcusts. What do I need in order to accomplish this? Well, I saw how to call methods, I'm missing the try catch part, the pointcuts and generics. I'll leave generics for...

Posted by Eyal | 3 comment(s)

Creating AOP IL Emitting framework – Part 2
I managed to write some code from the last post in this series and I got a name for the project - InterceptIt and I uploaded the initial drop. I created IL emitter helper class that will be in charge of declaration of variables, constants, members, methods, constructors, properties and method and constructor invocation. Variables: Helper class overview: When creating a constructor or method the returned parameter is IGenerationContext that provides access to the ILGenerator for that context. IGenerationContext...

Posted by Eyal | 1 comment(s)

Creating AOP IL Emitting framework – Part 1
This is the 1st post in a series of posts regarding the issues involved with creation of AOP framework. ...

Posted by Eyal | 1 comment(s)

AOP - Aspect-oriented programming
AOP in supposed to aid programmers in the separation of concerns, specifically cross-cutting concerns . The base class behavior is modified by aspect class that applies advice (additional behavior) at various join points (points in the base class) based on query or quantification called pointcut . To be more specific it allows a simple class ( POCO ) to have additional behavior that can be added declarative (not in the base class but in some external definition - from software engineering perspectives...

Posted by Eyal | 3 comment(s)