home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / lang / cplus / 18650 < prev    next >
Encoding:
Text File  |  1993-01-03  |  3.0 KB  |  74 lines

  1. Newsgroups: comp.lang.c++
  2. Path: sparky!uunet!wupost!zaphod.mps.ohio-state.edu!rpi!batcomputer!munnari.oz.au!metro!extro.ucc.su.OZ.AU!maxtal
  3. From: maxtal@extro.ucc.su.OZ.AU (John MAX Skaller)
  4. Subject: Re: Newbie Wants Advice on C-Programming
  5. Message-ID: <1993Jan3.170917.16629@ucc.su.OZ.AU>
  6. Sender: news@ucc.su.OZ.AU
  7. Nntp-Posting-Host: extro.ucc.su.oz.au
  8. Organization: MAXTAL P/L C/- University Computing Centre, Sydney
  9. References: <1993Jan2.163028.8829@netcom.com> <24538@alice.att.com> <4284@dozo.and.nl>
  10. Date: Sun, 3 Jan 1993 17:09:17 GMT
  11. Lines: 61
  12.  
  13. In article <4284@dozo.and.nl> jos@and.nl (Jos Horsmeier) writes:
  14. >
  15. >I think there's a bit more to leaning C++ than there is in learning C.
  16. >C++ uses quite a different paradigm: the object oriented programming
  17. >approach. 
  18.  
  19.     C++ makes class oriented programming possible. I would
  20. not wish to say 'C++ uses the object oriented approach'.
  21. Programmers do that, and C++ makes many other approaches available.
  22. For example, ADT programming -- not unrelated to the OO approach,
  23. but with the emphasis on values rather than objects.
  24.  
  25.     Then again there is more than one OO approach: a dynamic
  26. one (generally frowned on in C++) with Object heirarchies,
  27. or mixins (to name but two).
  28.  
  29. >My second attempt was, not using any programming
  30. >language at all, but just a clear explanation of the object oriented
  31. >concepts and mechanisms. When all that was clear, we switched to C++.
  32. >
  33. >This approach was much more fruitful: the C++ language became just
  34. >a mechanism to express these object oriented mechanisms. 
  35.  
  36.     As it can be used as a mechanism for other mechanisms.
  37. Which is why you might have failed the first time: you were
  38. trying to teach OO and not C++.
  39.  
  40.  
  41. >IMHO there are tree types of `beginners':
  42. >
  43. >- First time programmers;
  44. >- Experienced programmers but still unaware of the OOD concepts;
  45. >- Experienced programmers aware of OOD concepts, but they don't know
  46. >  anything about the C++ language.
  47.  
  48.     Type 4 is experienced C++ programmers *with* OO knowledge.
  49. Most of use would still consider ourselves beginners :-)
  50. After all, the language hasn't even been officially born yet.
  51. >
  52. >I think that one has to be a beginner of the third kind to be able
  53. >to learn the C++ language successfully.
  54.  
  55.     It also helps to look at the non-OO features of C++.
  56. These are surprisingly rich and powerful: C++ being class
  57. based does not have the dynamic power of OO systems like
  58. Smalltalk, or even Eiffel.
  59.  
  60.     Type 3 programmers with say Smalltalk experience
  61. often have a lot of trouble with C++. It is hard to believe
  62. these two languages really operate on the same paradigm at all.
  63.  
  64.     Although the transition might be slower, I suspect
  65. experienced C programmers have the least trouble with C++
  66. style in the long run. They at least can extend their
  67. paradigm(s) rather than having to radically alter them.
  68.  
  69. -- 
  70. ;----------------------------------------------------------------------
  71.         JOHN (MAX) SKALLER,         maxtal@extro.ucc.su.oz.au
  72.     Maxtal Pty Ltd, 6 MacKay St ASHFIELD, NSW 2131, AUSTRALIA
  73. ;--------------- SCIENTIFIC AND ENGINEERING SOFTWARE ------------------
  74.