Beyond private accessibility
Surely you know about public, protected, internal and private. They are access modifiers often used in Object-Oriented Programming which indicate from where members can be accessed. If you’ve been...
View ArticleCasting to less generic types
… because yes, there are valid use cases for it! Finally I found the time to write some unit tests, followed by fixing the remaining bugs, and am now excited to report on the result which effectively...
View ArticleAspect powered WPF
In some of my first posts – as it turns out I can almost celebrate one year of blogging! – I wrote about a factory approach to solve the complexities and overhead of creating dependency properties...
View ArticleAttribute metabehavior
Attributes in .NET can be used to add metadata to language elements. In combination with reflection they can be put to use in plenty of powerful scenarios. A separate parser can process the data added...
View ArticleList of Tuples
I still had a few posts which I was planning to write about first, but the simplicity and usefulness of the following discovery prompted me to go ahead and cut in line of my post queue. .NET 4.0...
View ArticleMassive-scale Online Software Development
Cutting right to the chase: Would it be possible to create software, entirely developed and moderated by an open community? Call it democratic software development, or open source on steroids if you...
View ArticleGarbage Collection Unit Test
Unit tests are useful in order to guarantee code works as it is expected to work. Today my spidey sense told me I might have caused a memory leak. Let’s not consider unmanaged code for now, but...
View ArticleAspects and Garbage Collection
Earlier today I wrote about an Assert method which can be used in unit tests to check whether or not an object is collected during Garbage Collection (GC). I wrote this method because I was suspicious...
View ArticleNull Checks for Event Handlers, an Aspect Solution
There is no denying events in C# are a great step forward from more traditional approaches where a lot of boilerplate code needed to be written. I choose C# events over Java’s solution to the Observer...
View ArticleConditional project or library reference in Visual Studio
In case you were wondering why you haven’t heard from me in a while, I’ve been busy, which isn’t really of much importance unless you know me on a personal level. What is relevant is that I recently...
View ArticleGeneric Attributes in C#
As awesome as C# is, once you want to do some more advanced stuff with attributes, you quickly run into several limitations. There is even a Microsoft Connect entry on this issue. Attributes can’t be...
View ArticleInterval: Generic Ranges in C#
There is no doubt about it; out of all the programming languages I ever experimented with, C# has offered me the most streamlined positive development experience so far. It is a modern, ever-evolving...
View ArticleGeneric TypeConverter for XAML
TypeConverter‘s in WPF are part of the underlying mechanism which allow you to assign values to attributes of complex types within XAML using plain strings. For example, whenever you specify Point‘s....
View ArticleGeneric TypeConverter for XAML
TypeConverter‘s in WPF are part of the underlying mechanism which allow you to assign values to attributes of complex types within XAML using plain strings. For example, whenever you specify Point‘s....
View ArticleGeneric TypeConverter for XAML
TypeConverter‘s in WPF are part of the underlying mechanism which allow you to assign values to attributes of complex types within XAML using plain strings. For example, whenever you specify Point‘s....
View ArticleNon-generic Wrapper instead of Base Class or Interface
A common solution to treating a generic type as non-generic is to implement an interface or make the generic type extend from a non-generic base class. Among other reasons, this allows you to...
View Article
More Pages to Explore .....