Tuesday, December 8, 2009

Obtics

If you're working with .NET and any sort of observability, such as WPF bindings, you owe it to yourself to check out Obtics. It's an excellent library that turns an expression into an observable expression. It has full support for System.Linq.Enumerable methods and for arbitary expressions.

Using Obtics and a custom helper method, you can do things like:

public int AplusB
{
    get
    {
        return Getter(() => AplusB, () =>
            A + B
        );
     }
}

Now, whenever A or B change, a property changed notification is fired for AplusB.

Imagine now that the expression inside is not as simple as A + B but several lines of code involving collections, linq extension methods, and more. Obtics is able to automatically add observability to the entire complex expression.

Need to watch for changes to proerties in collections? Obtics has elegant ways of doing that too. It's a great library, very much worth checking out. In comparison to CLINQ or Bindable LINQ, Obtics has a focus on full expression support. Having full expression support is extremely powerful and Obtics seems to be an excellent implementation of it.

No comments: