Learning OOP/Programming :: Try Greenfoot & BlueJ

At Java Tech Days today, I came across an exciting project called GreenFoot to introduce people to Object oriented programming by creating interesting real world examples. GreenFoot is based on the BlueJ platform which you may already know about. BTW, BlueJ pioneered ( or was it Smalltalk? ) the Object Test bench which is introduced in VS2005.

Some people say that Microsoft copied BlueJ here. Although this is true in a sense and credit should be given where due and not by trying to patent the technology :). But I give Microsoft or that specific team credit to introduce OTB to the masses. I asked the presenters whether NetBeans supported this and the answer was "No". Eclipse, not sure?

Ok, coming back to Greenfoot, it a like an IDE with a prebuilt graphics engine and a few top level objects like World and Actor. Now, you can start by putting objects in that world and then interact between them.

From the website:

"Consider greenfoot as a combination between a framework for creating two-dimensional grid assignments in Java and an integrated development environment (class browser, editor, compiler, execution, etc.) suitable for novice programmers. While greenfoot supports the full Java language, it is especially useful for programming exercises that has a visual element. In greenfoot object visualisation and object interaction are the key elements. "

It is difficult to put that in words but it is definately a cool project. It is free therefore you can try it out and recommend it to anyone starting with OOP and/or programming.

[What is greenfoot] [Download]
Here is a screenshot directly from the website. [Gallery]

Recently, Microsoft did come up with a version of Express Editions for Beginners which I admit that I dont know much about and can't write anything without spending any time. But, I would recommend the team doing that to look at some of the things over in Java world and see what you can copy :).

 

1 Comment

  • OOP relies on other paradigms, such as procedural. public static void main, if statements, for loops, variables, etc. To get anywhere with programming, students need to do some of this stuff, ideally before they look at objects.

    Objects-first is analogous to learning to drive by drawing maps.

Comments have been disabled for this content.