barn_lock

C# clipboard locking and a crash

While testing a feature that accessed the clipboard recently, I came up against an interesting clipboard scenario. What test strategies and models can we use to approach this feature in order to highlight the most important risks? A straight-forward approach …

jenga

Visual Studio integration with p4merge

Integrating Perforce’s p4merge with Visual Studio can be a bit tricky, but it doesn’t have to be! Using a couple of pre-written batch files and Visual Studio configurations, you’ll be up-and-running in no time.Step 1: Copy the following batch files …

binary-code

Binary serialization in C#

Serializing an object into a binary file is an easy and fast way to persist your objects.If binary serialization is used to cache objects normally read from an XML file, a database or some other file format, you’ll get even …

red-question-mark

Overload the array square bracket operator in C#

Although operator overloading is possible in C# (just like in C++), overloading the array square bracket operator is by definition not possible. However, C# provides an alternative called Indexers (C# Programming Guide).This is directly from the Microsoft C# Reference for …

puzzle_pieces

Top 10 differences between Java and C#

My latest transition from Java to C# left me scratching my head and scrambling to find the differences.Don’t get me wrong — they are very similar.But some key syntax and philosophical differences set these two languages apart. Below are my …

question-mark

Why does an abstract class need to implement interface methods?

In a comment for a previous post (Top 10 differences between Java and C#), John P. Wood wrote: As a (primarily) Java developer, I’ve also noticed that C# handles abstract classes that implement interfaces differently. In Java, an abstract class …