I've always had a pet peeve that introductory Java books teach developers the bad habit of using the static keyword and executing business logic code in the main method. I believe this is done in part out of a misguided intention of avoiding confusion, but also out of laziness.
I've seen lots of bugs and unmaintainable architectural choices (some subtle, some not) introduced by overuse of static references and methods, and find myself wondering how much of this is attributable to the failure of Java teachers to make the distinction between class and object clearer from the outset.
I'm very pleased to see BlueJ (which I first learned of here on JTraining) as an effort to remedy this general failure in Java and OO programming training.
Home
Community