Sat Jan 21 00:24:04 CET 2006



This last week I've taken a short but very intensive course
in C++ at a company called Learning Tree. Very good course. 

Man, the more I learned about C++, the more I wanted to
hack in Java. Ok, I haven't programmed seriously in Java since
what, like 5 years ago or so, but it took about a day to
remember the basic ideas behind OOP- encapsulation,
inheritance, polymorphism and abstraction. After taking the
course in C++, it feels likethe designers of the language
embraced the ideals behind OOP, but didnt really dare to go
all the way... just take a look at all the exceptions to the
rule of encapsulation!

The desire to make C++ backwards compatible with
ANSI C is understandable, but this just makes it
impossible to create a true OOP language without these

Oh of course, Java probably has its faults as well. Just
google for "why java sucks" and you'll get a zillion hits. But
me, I like C++ as an improvement to C- its easier to write
code, you dont have to fiddle and curse at file handling as
much and all, but its a far cry from java when it comes to

Take operator overloading functions located outside the
class declaration for one. Outside the class declaration? eh?
Or the concept of friends. Or that functions are default
non-virtual, forcing you to remember to set them virtual so
that you can override them properly in subclasses.

But... this said, I liked the language. I positively loved
the idea behind templates. Though it forces me to use pointers
and references, I dont have to use them as much as in C. 

Ah well. Time to hit the hay. Now all I need to do is find
some fun C++ project I can either take part in or start up. I
have to practice!