The Many Shapes of Polymorphism

What is Polymorphism? The word “polymorphism” is from the Greek words “poly”, which means “many”, and “morph”, which means “form”. So “polymorph” means “many forms”, and “polymorphism” means “the ability to take on many forms”. But enough academics. How Does Polymorphism Work? Polymorphism is a by-product of message-passing, or dynamic dispatching. One message may execute [...]

Why Object-Oriented Programming is Important…and Inevitable

When I discovered (reinvented; see About page) object-oriented programming (in the mid-1980s) I was overjoyed. It solved many of my most irritating problems with programming. Frankly, I had become quite bored with (business) programming, it just seemed to be endless tedium, solving basically the same problems over and over with only slight variations. OOP made programming [...]

Object Mechanics – book progress report

I’ve been thinking about writing this book for years. YEARS. Because all of the books on object-oriented programming that I’ve read or skimmed seemed somehow incomplete to me (caveat: there are hundreds, and of course I haven’t read them all!). With some arm-twisting encouragement from my publisher, editor, and good friend Andrew Rollings (author of classic [...]

Object Mechanics – Practical Object-Oriented Programming

Welcome to the home of the forthcoming book, Object Mechanics – Practical Object-Oriented Programming!