Path: utzoo!attcan!uunet!ogicse!uwm.edu!rpi!brutus.cs.uiuc.edu!apple!apple.com!chewy From: chewy@apple.com (Paul Snively) Newsgroups: comp.sys.mac.programmer Subject: Re: Obligatory beginning-Mac-programmer questions Message-ID: <7179@goofy.Apple.COM> Date: 14 Mar 90 18:33:20 GMT Sender: usenet@Apple.COM Organization: Apple Computer, Inc. Lines: 108 References:<2392@milton.acs.washington.edu> <2217@husc6.harvard.edu> In article <2217@husc6.harvard.edu> siegel@endor.harvard.edu (Rich Siegel) writes: > In article <2392@milton.acs.washington.edu> phaedrus@milton.acs.washington.edu (The Wanderer) writes: > > > > A few quick questions: > > Aside from Inside Mac and the other official documentation, what books > >would you recommend for an experienced Pascal/C programmer trying to learn > >the Macintosh programming structure? > > "How to Write Macintosh Software" and "Macintosh Programming Secrets", > both by Scott Knaster. The first is a good guide to coping with the OS, and > the second describes lots of interesting Toolbox tricks. I'd like to ditto Rich's recommendations here and add the current editions of Chernicoff's books; they're pretty good Q&D intros to the subjects covered in IM I-V. BTW, be sure to get IM I-IV absolutely and V if you intend to run on SEs or Mac IIs. Also get the Tech Notes (yeah, all 250+ of them). Ugh. In article <2217@husc6.harvard.edu> siegel@endor.harvard.edu (Rich Siegel) writes: > Another good book is the TMON user's manual. It comes with a free > machine-level debugger. Gee, thanks, Rich (I wrote the TMON User's Guide, in my previous life at ICOM Simulations, Inc.) I'll second his recommendation here, too, in my obviously completely unbiased opinion. ;-) In article <2217@husc6.harvard.edu> siegel@endor.harvard.edu (Rich Siegel) writes: > > How much easier does MacApp make the programming process? Assuming it's > >the wonderful base I've heard it is and I immediately rush out to use it, how > >strongly should that influence the development environment I buy? (How many > >contortions do I have to go through to use MacApp with Think Pascal, that I > >could avoid by using MPW?) > > Ultimately, MacApp helps a lot, but the learning curve is very long. > It shouldn't make a difference in your choice of Pascal compiler; THINK > Pascal 3.0 supports MacApp practically out of the box, with some automatic > conversion. Rich is oversimplifying just a little here. The MacApp that THINK Pascal 3.0 compiles "practically out of the box" is MacApp 2.0b9; THINK has done a very good job of providing conversion tools that handle the general case, but my experiences in attempting to convert versions of MacApp later than 2.0b9 haven't been very successful. Which is not to say that THINK did anything wrong; they were in the unfortunate position of having to ship before Apple made MacApp 2.0 final. C'est la vie. In article <2217@husc6.harvard.edu> siegel@endor.harvard.edu (Rich Siegel) writes: > Both THINK C and THINK Pascal include the THINK Class Library, which > is similar in concept to MacApp, but is much easier to learn and use; you > can always save your pennies and get MacApp later if the TCL doesn't suit your needs. Sounds like sound advice to me. In addition to the above, let me just add that, since you're already an experienced Pascal/C programmer, it _is_ worth your while to learn object-oriented programming now, as Apple's world is clearly headed in that direction. THINK's TCL and related tutorials offer a good introduction both to the concepts and to the class libraries themselves. MacApp might be thought of as "industrial strength"--it has had some of Apple's best Mac Wizards involved in its evolution over its roughly five-year lifespan, and does lots of very cool things for you. It also has tutorials available, and is supported not only by us in MacDTS, but also by the MacApp Developers' Association, and has a regular newsletter, "Frameworks," associated with it, should you wish to subscribe to it. I must also take issue with a previous post that said, in effect, that once you start doing real work with MacApp that you find yourself changing the MacApp sources. This simple isn't true; the whole nature of object-oriented programming is that, when you wish to alter the functionality of some piece of code, you override it (this does _not_ imply changing the sources of the libraries). It _may_ imply knowing exactly what the thing you wish to override does. To simplify that process, MacApp 2.0 versions ship with a very nice little Object Pascal/C++ browser, itself written in MacApp (sorry, no sources for the browser yet--maybe later). I hope all of this helps somewhat! __________________________________________________________________________ Paul Snively Macintosh Developer Technical Support Apple Computer, Inc. 1st Choice: Paul_Snively.DTS@qm.gateway.apple.com 2nd Choice: CHEWBACCA@applelink.apple.com Last Choice: chewy@apple.com Just because I work for Apple Computer, Inc. doesn't mean that I believe what they believe, or vice-versa. __________________________________________________________________________