home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #19 / NN_1992_19.iso / spool / comp / lang / objectiv / 481 < prev    next >
Encoding:
Internet Message Format  |  1992-08-27  |  3.2 KB

  1. Xref: sparky comp.lang.objective-c:481 comp.lang.c++:12968
  2. Path: sparky!uunet!paladin.american.edu!europa.asd.contel.com!darwin.sura.net!zaphod.mps.ohio-state.edu!uakari.primate.wisc.edu!ames!pacbell.com!tandem!UB.com!igor!thor!rmartin
  3. From: rmartin@thor.Rational.COM (Bob Martin)
  4. Newsgroups: comp.lang.objective-c,comp.lang.c++
  5. Subject: Re: Objective-C vs. C++
  6. Message-ID: <rmartin.714926059@thor>
  7. Date: 27 Aug 92 14:34:19 GMT
  8. References: <1992Aug25.142415.7762@uc.msc.edu> <92238.232226MKK2@psuvm.psu.edu>
  9. Sender: news@Rational.COM
  10. Followup-To: comp.lang.objective-c
  11. Lines: 56
  12.  
  13. MKK2@psuvm.psu.edu writes:
  14.  
  15. >One thing that makes Obj-C "better" is that it lacks a large number of features
  16. >that C++ has but doesn't need.  Computer science has been fighting the
  17. >battle for a long time.  Should a language offer every possible feature,
  18. >or should it offer a slimmed down subset of just enough features?
  19.  
  20. I am sure that you could find many C++ programmers who would agree
  21. that the language is complex, and that there are features that could
  22. be removed.  I doubt you could get them all to agree on which features
  23. to remove.
  24.  
  25. The success of C++ in the industry (to date) is strong testimony to
  26. the notion that the language needs the features it has.
  27.  
  28. >The Obj-C reference manual on my machine is only 36 very light weight pages
  29. >long (though it assumes you know C 8-).  Just the index for C++ is longer than
  30. >that.
  31.  
  32. It is quite true that, knowing C, and a little about OOP, Objective C
  33. is quite easy to pick up and use.  Moreover, it provides an OOP
  34. envioronment which performs reasonably well; quite adequate for all
  35. but the most demanding applications.
  36.  
  37. But, with a few notable exceptions, the industry is putting its muscle
  38. behind C++.  
  39.  
  40. I find this somewhat surprizing since programming in C++ is very
  41. little like programming in C.  C is flexible and casual, and C++ is
  42. rigid and formal.  Objective C shares the casual and flexible nature
  43. of C.  Yet, most C programmers who are migrating to OOP are accepting,
  44. even demanding the formality of C++ in favor of keeping the causal
  45. environment of C and objective-C.
  46.  
  47. I know why I, and a few of my friends and associates made that choice;
  48. but I can't speak for the whole industry.  We wanted formality because
  49. we were tired of fighting the maintenance nightmares caused by the
  50. casual nature of C.  We wanted the compiler to lay down strong typing
  51. rules, const rules, rules about instantiating abstract classes, rules
  52. about downcasting and upcasting.  We wanted our programs to be
  53. difficult to compile, because the effort spent in getting a program to
  54. compile is much more efficient than the effort spent in debuggin an
  55. executable.  Every type-error or usage error that the compiler forces
  56. us to remove, saves us the effort of debugging some terrible execution
  57. failure due to type mismatch.  
  58.  
  59. I and my associates have not been dissapointed by the results.  We
  60. rail and moan against the complexity and odd nature of the language,
  61. but we spend a lot less time debugging.
  62.  
  63.  
  64. --
  65. Robert Martin                        Training courses offered in:
  66. R. C. M. Consulting                       Object Oriented Analysis
  67. 2080 Cranbrook Rd.                        Object Oriented Design
  68. Green Oaks, Il 60048 (708) 918-1004       C++
  69.