home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #18 / NN_1992_18.iso / spool / comp / os / mswindo / programm / tools / 715 < prev    next >
Encoding:
Text File  |  1992-08-16  |  5.2 KB  |  109 lines

  1. Newsgroups: comp.os.ms-windows.programmer.tools
  2. Path: sparky!uunet!cis.ohio-state.edu!zaphod.mps.ohio-state.edu!menudo.uh.edu!lobster!nuchat!xcluud!joe
  3. From: joe@xcluud.sccsi.com (Joe Abernathy)
  4. Subject: Re: borland c++ and microsoft c/c++
  5. Message-ID: <BsyDBM.LL2@xcluud.sccsi.com>
  6. Summary: Byte speaks well of MFC in new issue
  7. Organization: Greater Montrose UFO Appreciation Society & Data Haven
  8. References: <1992Aug10.171802.18367@nntpd.lkg.dec.com> <pathak-100892175041@virtual.mitre.org> <1992Aug12.193916.17762@microsoft.com>
  9. Date: Fri, 14 Aug 1992 02:52:33 GMT
  10. Lines: 97
  11.  
  12. In article <1992Aug12.193916.17762@microsoft.com> stevesi@microsoft.com (Steven Sinofsky) writes:
  13. >In article <pathak-100892175041@virtual.mitre.org> pathak@mitre.org (Heeren Pathak) writes:
  14. >>In article <1992Aug10.171802.18367@nntpd.lkg.dec.com>,
  15. >>feldman@toklas.enet.dec.com (Gary Feldman) wrote:
  16. >>> 
  17. >>> I'm just starting to look at compilers and windows programming (for myself).
  18. >>> One thing that struck me was that Borland appears to have added a non-standard 
  19. >>> C++ extension, to bind messages to member functions (the "= [WM_FIRST + mesage]"
  20. >>> construct).  It seems like a nifty idea, but if you use it, doesn't it lock
  21. >>> you into buying compilers from Borland?  
  22. >>> 
  23. >>
  24. >>From what I understand, Borland's extensions are being debated by the ANSI
  25. >>committee and may actually become part of the standard.
  26. >
  27. >To the best of my knowledge and after checking with several representatives
  28. >on the ANSI XJ316 (the C++) committee, the Borland extension has not been
  29. >proposed, let alone debated by the XJ316 folks.
  30. >
  31.  
  32. It's important to keep in mind, in the midst of all the compiler vendors'
  33. posturing in regard to ANSI C, that the important, definitive standard for
  34. ANSI C hasn't been released yet. The new issue of Sun Expert, if you can
  35. find it, has an excellent discussion on this topic, based primarily on the
  36. insights of John Gillmor of Cygnus, one of the near-founders of Sun
  37. Microsystems. John's conclusion is that the ANSI C committees need to
  38. take a decade off, and he offers to throw a retirement party for them
  39. if they'll do so (and he's serious).
  40.  
  41. IMHO, the important issue for users of C on the IBM is whether the
  42. parts of various software tools fit together well, and at the moment,
  43. it's a bit more work than some of us would like for it to be.
  44.  
  45. >
  46. >
  47. >Microsoft does not use a language extension, everything that is used
  48. >for the message routing is standard ANSI C++.  MFC will compile with
  49. >BCC 3.1.
  50. >
  51.  
  52. Another magazine that arrived in the day's mail, the September issue
  53. of Byte, contains a good, thorough review of Microsoft C 7, and gives
  54. a thumbs-up to Microsoft's handling of its C++ extensions to the
  55. Windows API. The review avoids saying if it thinks this way better
  56. than that of Borland, but you get the idea that that's what the
  57. reviewer had in mind.
  58.  
  59. >>Comparing class libraries, I prefer the Borland class library.  While it
  60. >>doesn't cover the entire Windows API, the sections it does cover contain a
  61. >>much higher level of abstraction the Microsoft Foundation Classes.  When I
  62. >>looked at the MFC a month or two ago, I wasn't impressed.  Most of the MFC
  63. >>seems to be a wrapper around Windows function calls.  While this is great
  64. >>for those who already know Windows and are porting their code, I am
  65. >>doubtful that the MFC will provide the flexiblity that a well designed
  66. >>Object-Oriented Application Framework provides.  
  67. >>
  68. >
  69. >OWL and MFC provide nearly identical functionality in almost every
  70. >area.  MFC provides substantial abstraction in the areas of OLE, custom
  71. >controls, object persistance (that is much more automatic than OWL's).
  72. >OWL has 54 classes and MFC has 87, and the classes that the two have
  73. >in common are essentially identical, except that MFC is substantially
  74. >more complete.  Often at first look, people consider MFC less "abstract"
  75. >than OWL only because it uses the same names as Windows APIs and has
  76. >all the functionality of Windows.  
  77. >
  78.  
  79. Perhaps. But just a couple of days ago, for instance, I went to the MFC
  80. looking for some date functions, and what I found was an incomplete
  81. date class that warned me _against_ inheriting from it and customizing
  82. it, as you would normally do.
  83.  
  84. Getting back to the Byte review, I think they took a really nice tack on
  85. this issue, pointing out that it's Microsoft C Version 7, but MFC Version
  86. 1.00. "The initial version of a C++ class library typically suffers
  87. from a few oversights," wrote reviewer Othar Hansson, "and I would expect
  88. changes in future versions of the MFC (luckily, the source is provided
  89. for do-or-die modifications)."
  90.  
  91. Back to my date class example, MFC actually came a lot closer to having
  92. the functionality that I needed than did Borland's Object Windows
  93. Library, but in fact, neither one got me all the way there. The key
  94. difference was that with Borland's greater degree of abstraction, I was
  95. able to inherit their basics and add my customizations much more quickly
  96. than with the Microsoft implementation of my code, which forced me to
  97. completely reinvent the class. 
  98.  
  99. Microsoft does have a lot to recommend it, by the way, not the least of
  100. which is its P-code optimizations and outstanding documentation.
  101.  
  102.  --------------------------------------------------------------------
  103.  
  104. joe@xcluud.sccsi.com
  105.  
  106.  
  107.  
  108.  
  109.