Paradigm shift: made at last
255 wordsSeveral times in the last 10 years, I’m mentioned a difficulty in getting my head around Object Oriented design (here, for example). I read Java books and felt I understood every page, yet when it came to writing something real and useful, I would struggle to get started on an OO implementation, and quickly give up and implement it in a non-OO declarative manner in Perl or C.
The good news is that, at last, I’ve made the paradigm shift.
It took a major project with management expectations that it would be written in Java. In the past I’d have had to rock the boat if I wanted to not use C. We continued to perceive Java as a bit new and experimental, and whatever project we were on was always “too important” to risk trying a new technology on. Meanwhile, of course, the rest of the world was adopting Java wholesale.
The book that helped me was Craig Larman’s Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. Larman ’s approach manages to contrive examples that allow him to introduce useful patterns in an order that’s condusive to learning.
I’ve written an awful lot of Java in the last couple of months, and from my perspective it all seems to be neat and tidy, with good separation of concerns, even unit tests and JavaDoc. I’m getting a lot of satisfaction out of it. It’s even got to the stage where I’m a bit wary of going back to maintain C code.