[comp.windows.ms.programmer] Can you develop without SDK?

pcb@basin04.cacs.usl.edu (Peter C. Bahrs) (03/13/91)

Can you develop without SDK?  My opinion follows.


It depends.  I have been using sdk for 4 years with MS C.  Most of the
work I do is either motif stuff or C++/smalltalk.  I really wanted to
get an OO environment for windows so I got zortech.  yuk.  The bugs and
configuration problems forced me to abandon this for windows development.
About 7 months ago I spent ($99) more money and got Actor.  It was great so
I got the objectgraphics classes that go with it.  It gives you a lot
of classes predefined that interface with C style SDK calls.  Any SDK
call you can do in C you can do in actor:  Call CreateWindow(...).
   Actor is interpreted and every program you seal off comes with two
large files, and interpreter and an image.  I don't really like this too
much.
  So, after realizing that Actor is a derivative, kind of, of smalltalk,
I got digitalk's smalltalk for windows.  Very nice and similar to actor.
A lot of classes defined for doing windows stuff.   
   But I really needed compiled code.  So, I bought borland C++. I 
know c++ very well, used it with X and Interviews.  BUMMER! no classes.
I am really disappointed by the hype with borland c++ for $99 (my 
upgrade price)  and their advertisement about windows programming.  I 
noticed that my software came with a brochure advertising windows classes
from some company for $450.00.  sheesh!  To do any kind of productive
windows programming then it is ^$600 investment.  ugghh

   So, what are your choices?  Get C and SDK. you have all of the docs,
codeview debugger...but you don't get any benefits of OO development and
this is a major drawback.  Actor and smalltalk, great environments. 
BUT, let me repeat, BUT, I do not think having a reference to functions
onlike via a help system is enough to learn SDK.  And to write or modify
existing classes that interact with windows, you need to know sdk.  This
has been the case with the smalltalk and actor classes.  I have modified
numerous classes and have had to either pulled out the SDK docs, 
petzold's book, or looked at my sample SDK C programs.  Reference is
not enough, you need protocol also!
  For example, my actor dialog box class didn't come with a method to
get the index of the highlighted string in a combo box.  A very realistic
option to have.  If I did not know SDK well I can't say what I would
have done.  This becomes more of a problem when you want to mess with
files or DDE or DLL's.
  And borland C++, my alternatives are to write a class library (lot of
hours), buy one, or return the software.  I like C++ a lot and may
create libraries based on actors and smalltalks, add my own modifications
including a nice 3D library,  and distribute them as shareware.  Anyone
interested?


  In summary, think about this.  Actor, Smalltalk, and Borland C++ all
support the C protocol for accessing SDK routines.  This alone should
tell you something.  A solution: a full set of class libraries that support
ALL of the SDK calls through classes and methods (i.e. dialog case above).
This situation, I think, would definitely remove the burden of having
to know SDK.  (This is similar to using motif or athena widgets in X.  When
I want to do some interesting graphics I inevitablely have to make low
level X calls and bypass the widgets.)  Abstraction is good if you don't
loose fuctionality!



/*----------- Thanks in advance... --------------------------------------+
| Peter C. Bahrs                                                         |
| The USL-NASA Project                                                   |
| Center For Advanced Computer Studies      INET: pcb@swamp.cacs.usl.edu |
| 2 Rex Street                                                           |
| University of Southwestern Louisiana      ...!uunet!dalsqnt!gator!pcb  | 
| Lafayette, LA 70504                                                    |
+-----------------------------------------------------------------------*/