Rethinking the Java Curriculum: Goodbye, HelloWorld!
Subject:   Is Java the right langage to teach OO ?
Date:   2002-08-30 00:47:01
From:   dweeves

OOP is all about concepts and not about languages !

The problem with Java is that its Class Library (API) is itself a very sophisticated OO architecture , already using/implementing a lot of advanced OO concepts (like patterns) and system techniques (like threading , delayed calls in Swing)

I began OO programming in 89 with Borland Pascal for Objects. And i found the OO approach very well explained in the manuals .

Using the classical 'figure' example to explain virtuality and inheritance.

I saw a lot of "young" java programmers falling into the trap of using the class library without knowing the concepts they were manipulating just because Java had already implemented these concepts and made them easy to "call".

But calling already made objects is exactly what's done in Visual Basic which is all but an object oriented language (not speaking of VB.Net which is no more VB)

"Hello world" has simply no architecture. It is not an example to take for OO teaching !

The main interest in OOP is creating objects suiting an application architecture. For creating these objects, you can use other objects of course.

You can't teach Java before teaching OOP . But you can use Java as an OOP teaching language by using only the java.lang package and taking the approach of "problem solving".

I explain : ask the students how they would do something and tell them the benefits of doing it in an object way. By taking this approach, you could focus on each OOP concept , by refining the solution provided incrementally.

Full Threads Newest First

Showing messages 1 through 1 of 1.

  • Is Java the right langage to teach OO ?
    2005-06-02 03:08:43  MSCstudent [View]

    On my MSC course we were introduced to Java as the first and most important module on a conversion course. Most of the group had very limited computing backgrounds, and many of the students fell behind.

    However, for the few of us who were able to engage with the concepts immediately and navigate the API, we soon excelled and have since become competent programmers in multiple OO languages.

    In September 2004 I had never programmed before, and less than 9 months later I am nearing the end of my MSC course with an amazing breadth of knowledge and understanding.

    Therefore, for me Java was the best language to learn. However, the course has caused some students to struggle, but the focus should be on trying to find out what new students find difficult with the concepts so these issues can be addressed.