Posts tagged with 'PostSharp'
Sorry for another slow week of posts--I've been busy on a couple of side projects (neither of which involve AOP), so my evening writing time has been cut a little short. Here's your weekly dose of AOP links:
- White paper on using AOP for remote usability testing (PDF). I think this is the second white paper I've seen on using AOP for something like that. It's an interesting idea that needs some exploring...
- Reminder that Chad England is still posting in his series on PostSharp. Here's part 2 and part 3.
- I've used AOP to make threading/async coding more declarative and easier to read. Jonathan George did a blog post on a "fire and forget" asynchronous aspect.
- For you Game of Life enthusiasts, here's a github blog post from Reginald Braithwaite about using AOP to perform garbage collection in the game of life.
That's it for this week--keep sending in those links for next time.
SharpCrafters has created PostSharp Toolkits, an open source product that provides some useful pre-built aspects for common cross-cutting concerns. Currently, the only toolkit so far is the diagnostics toolkit, which includes aspects for logging, exception handling, etc.
You can find PostSharp Toolkits on Github. If you want support for PostSharp Toolkits, you can submit questions or suggest features in the PostSharp Toolkits support thread.
(It's being open sourced in order to get a shorter feedback loop, but most likely they aren't going to take unsolicited patches).
Surgery went well, thanks for asking. Now it's a few more months of rehab and I'll be almost good as new. I'm exercising my copy/paste skills again with this weeks Weekly Concerns link round-up:
- Using AOP with JSF for transactions when persisting data. Some Java stuff is Greek to me, but transactions are definitely a good use of AOP.
- DING for AOP in PHP
- Compile-time weaving is the only way to go with AOP on Windows Phone, here's an example that uses the PhoneCore framework.
- I'm most familiar with PostSharp, but it's always good to get other opinions on it. Here's a PostSharp review from Daniel Marbach.
- Speaking of PostSharp, Ward Bell recently did a live webinar about real world AOP usage at his company IdeaBlade. You can watch the recorded webinar, and IdeaBlade has also posted the code and slides used in that webinar.
- Finally, one more PostSharp link. This one is about using PostSharp for encryption/decryption.
That's all for this week.
Does PostSharp work on Windows 8 (or more correctly, with .NET 4.5)? The short answer is: not yet.
Long answer:
I tried to get it to work, I really did. I tried using the PostSharp Silverlight assembly. I tried installing with NuGet and I tried directly from the PostSharp installer. I tried it with a fox, I tried it on a box.
I'm guessing that SharpCrafters is going to wait until Windows 8 / .NET 4.5 is more stable and closer to release before worrying about updating PostSharp. SharpCrafters is a very small company, so they probably can't afford to spend resources on updating their product to work for a framework and operating system that aren't even used by the general public yet, which is totally understandable.
Here are some technical details about why it's not working. I do think it should work fine with VS11 if you are writing a .NET 4 app, if you are already doing that for whatever reason (can you do that? I actually don't remember). I'm going to try some other AOP tools on Windows 8 and see what I come up with, just in case you desperately need AOP in your hot new Metro app. I'm guessing DynamicProxy probably works in a XAML/C# project, and any JavaScript AOP solutions would probably work in an HTML/JS project, but we'll see...
EDIT:
Chad England has confirmed in a blog post that you can get PostSharp working in VS11 with non-.NET 4.5 projects.
PostSharp 2.1 SP 1 is now released. This is pretty much a maintenance release, addressing bugs.
There are some new features, including integration with decompiler tools (dotPeek, ILSpy, and Reflector are supported).
What's intriguing is the new features for and allusions to the PostSharp Toolkit, which could be a very interesting release from SharpCrafters.
Anyway, PostSharp is perhaps the most popular and stable tool for AOP in .NET. I'm not saying it's the end-all-be-all, but if you are interested in AOP for .NET, PostSharp is where I think you should start. You can download 2.1 SP1 (aka 2.1.6.4) at SharpCrafters.com, or just do it the easy way and get it via NuGet.