Of the 23 design patterns outlined in the GoF book, one I find myself reaching for time and time again is the façade pattern. In fact, I was making use of this design pattern before I even knew that the technique employed was called the

When implementing any type of programming language, be it a enterprise scale systems language like Java, a small Domain Specific Language and practically anything in between there is a myriad of design decisions to be made that will influence the overa

It's no secret that I am an iterator pattern fan boy. When it comes to implementing search trees - or any container of which you would like to access the elements one by one and in-place for that matter, the iterator pattern is indispensable. It allows

A fundamental concept for software engineers when it comes to writing maintainable software is the DRY principle: Don't repeat yourself. Many times when writing code we may find ourselves implementing algorithms that are very s

Two Posts on Iterators in a row? I know, I know. But at the risk of sounding like some kind of evangelist: If you're going to insist on implementing your own containers, you must implement iterators for them. I won't repeat my