biggity@pnet51.cts.com (Jon Johnston) (08/16/89)
Hello, I am at a crossroads, wanting to start a development project, and wanting to use an OOL, but I'm not sure which to start with. C++ (should I say that here?) seems to be somewhat less endowed with abilties than either Smalltalk or Objective-C. The main reason I have not chosen C++ is that reusability doesn't seem to be as easily accomplished as it would be in Smalltalk or the hybrid-C product, Objective-C. Can anyone expand on this? I would certainly appreciate it, please e-mail replies.... comp.lang.c++ seems to be overflowing, and the only thing I have heard consistently concerning a reason to use C++ over Objective-C or Smalltalk is "Its going to be the OOL standard" which really bugs the heck out of me. Thanks. Jon Johnston. 612-448-6433. UUCP: {rosevax, crash, orator}!orbit!pnet51!biggity ARPA: crash!orbit!pnet51!biggity@nosc.mil INET: biggity@pnet51.cts.com
johnson@p.cs.uiuc.edu (08/17/89)
I use both C++ and Smalltalk heavily. By heavily, I mean projects with more than 50,000 lines of code and half a dozen part-time programmers (i.e. grad students). Smalltalk is much nicer to use, but C++ is a lot faster. In my opinion, people who claim that you can't really do o-o programming in C++ are crazy. (Or maybe just ignorant.) Things like generic classes are much harder in C++, but there are standard workarounds, and some of them are not too bad. The biggest problem with C++ is the lack of good class libraries and having to use the Unix programming environment. One of the strong points of C++ is that it uses the Unix programming environment. (It all depends on your point of view.) The main weaknesses of Smalltalk is lack of performance (but only if your application would be CPU bound) and the difficulty of integrating it with other software. ParcPlace is working on both problems, so they are not as severe as they used to be. If you want to build real-time embedded system then you probably want to use C++. If you want to build a workstation application with a fancy interface, and you are more concerned with getting it done quickly than in selling it to 10,000 customers, then Smalltalk is almost certainly what you want. If you tell me more about your application then I can give you a more detailed opinion. Ralph Johnson