[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference 7.286::macintosh

Title:Apple Macintosh Volume II
Notice:Mac is NOT an acronym - it's Mac or Macintosh *not* MAC
Moderator:SMURF::BINDERONS
Created:Sun Jan 20 1991
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:964
Total number of notes:30983

890.0. "Best Software Development kit of Mac" by R2ME2::ALANTAM () Thu Apr 25 1996 15:07

T.RTitleUserPersonal
Name
DateLines
890.1CALDEC::GOETZEerik goetze; Tired: Word; Wired: BBeditThu Apr 25 1996 15:554
890.2Can you live with a "Restricted" compiler for now?UNIFIX::HARRISJuggling has its ups and downsThu Apr 25 1996 16:2448
890.3Apple also has development tools.CCDCAT::STCLAIRFri May 17 1996 09:117
890.4AZUR::DESOZAJean-Pierre, MCSD E.Delivery, 828-5559Fri May 17 1996 13:0011
890.5Any Small-Scale Program Development Environments?RTL::DAHLMon Mar 17 1997 12:5724
I'm interested in experimenting with program development on the Macintosh. I'm
a software developer for DIGITAL, and have a background of C, C++, Windows, and
X technologies, but I've never done any development for the Mac.

My children (8 and 11) have expressed interest in learning about simple program
development for the Mac. I'm looking for ideas on development tools or
environments that might be helpfull for this.

I've read about CodeWarrior, and that sounds like a nice system for serious
development needs. It sounds akin to Microsoft's Visual C++ IDE, which I use at
work. However, I'm wondering if there are products which might be suitable for
more casual needs -- ones with which major applications could perhaps not be
developed, but which would need relatively little effort to do common things
(e.g., draw simple shapes, recognize mouse events). 

As an extreme example, we use a product called Widget Workshop. This is very
easy to use, as it's a purely visual drag/drop sort of environment. But the
class of "program" that can be developed is extremely limited. My 8-year-old
son is working on the logic gate ideas (AND, OR, etc.) which is a great start
to some of the core concepts that more general programming tasks require. 

Any ideas on Mac development environments that might be oriented more towards
beginner/young programmers?
						-- Tom
890.6Lots of them. None really simple (due to Mac nature)AZUR::HUREZConnectivity & Computing Services @VBE. DTN 828-5159Mon Mar 17 1997 15:1354
    
    o Following the current trend: Java
    
      . Sun's JDK          (free)
      . Symantec's Cafe    (kinda CW, stripped down to Java).
      . ...
                           Maybe too tricky for young folks!
    
    o Just went out of trend, considering Java[Script], but still good
    
      . Tickle (iTCL)      (shareware)
                           http://www.astro.nwu.edu/lentz/mac/unix/tickle.html
    			   Concise, object oriented, powerful scripting
                           language.  C-like style.  Fast GUI prototyping.
                           Drawbacks: slow on Macintosh.  Obscure Tk syntax.
                           Disrespectful of Mac look and feel.
    
    o OOP made simple
    
      . Little SmallTalk   (shareware)
                           http://hyperarchive.lcs.mit.edu/HyperArchive/
                             Archive/dev/little-smalltalk-315.hqx
                           Great OO language.  So simple that it is the most
                           easily learnt by Cobol programmers ;-)
                           This implementation needs TCL to work => Slow, etc...
                           There may be others as it was very popular in MUGs
                           of early Macintosh days...
    
    o Old fashioned but even simpler and still fun
    
      . Logo               $100
                           http://www.harvassoc.com/logoprod/logo0030.htm
    
      . LogoMation         (shareware)
                           http://hyperarchive.lcs.mit.edu/HyperArchive/
                               Archive/dev/logo-mation-114-.hqx
    
                           Great for kids.
    
    o Serious...
    
      . Ada 83             (shareware)
                           ftp://ftp.gwu.edu/pub/ada/gw-adaed/mac
                           Can be used as a Pascal-like environment;
                           Powerful.  Robust.  Enforces good programming
                           habbits!  Kind of severe, though...  Too verbose
                           for young people, but absolutely necessary if your
                           son plans to work for the DOD ;-)
    
    o Wanna find it by yourself?
    
      . http://hyperarchive.lcs.mit.edu/HyperArchive/Abstracts/
            dev/HyperArchive.html
    
890.7Java maybe?UNIFIX::HARRISJuggling has its ups and downsMon Mar 17 1997 15:2348
    Maybe not what you are looking for, but maybe Java.  The Java language
    is a lot less complex than C++ but yet it does still feel a lot like C
    (but not exactly).
    
    The standard set of Run-time libraries have all you need to create
    windows and objects etc... (one of my homework assignments was to
    create a stupid draw program - limited in that once drawn, I couldn't
    select the objects again by clicking on them, but it was not too
    difficult to do).
    
    There are also a collection of examples that do simple things.
    
    There are a ton of books (such as learn Java in 21 days for Macintosh -
    my classbook - so so as a text book, but it was a start).
    
    For a roll your own environment, you can get the Java development
    environment from SunSoft for free.
    
    Java envinroments are also available for many other platforms, and if
    you stick to standard stuff, it is portable.
    
    BUT...  The SunSoft free environment is not an integrated environment.
    
    You can spend money for CodeWarrier, or Caffine (and I think there is
    one other as well from Symantic).
    
    And Java is not perfect, so don't let me over hype it.  It is nice and
    has a chance of becoming common, Apple has indicated it is moving
    towards Java, Netscape and MS-IE run Java applets (I can run them on my
    Mac, my Digital UNIX workstation, a friends Linux, the school's Windows
    95 systems, etc...).
    
    The language is in the class of "Real Programming" languages, but it is
    not as complex as C++.  It is Object Oriented.
    
    But Java is still also evolving.  So what you learn today, many be old
    hat tomorrow (lots of work going on in the RTL's).
    
    Do I sound confused.  I guess I am.
    
    					Bob Harris
    
    
    PS.  You might visit the MacTech web page and see if you cna find any
    pointers to other programming environments.  MacTech is the primary
    Mag for Mac development.
    
    	<http://web.xplain.com/mactech.com/>
890.8Cocoa and SK8AZUR::DESOZAJean-Pierre, DTN 828-5559Tue Mar 18 1997 03:375
http://cocoa.apple.com/cocoa/index.html

http://sk8.research.apple.com/sk8/sk8.html

890.928937::GHEFFGot a head with wingsTue Mar 18 1997 08:243
    Unfortunately I read that Cocoa was one of the things that got "cut."
    
    How about Chipmunk BASIC?
890.10REGENT::POWERSTue Mar 18 1997 09:377
I have Future BASIC on my system, but I haven't used it much.
If you can accept that BASIC might be a reasonable way to learn
"programming" (as opposed to software design), then this package, with its 
implicit support for window creation and GUI manipulation might be a way
to go.

- tom]
890.11to expand my .4 reply ... Go for CodewarriorAZUR::DESOZAJean-Pierre, DTN 828-5559Tue Mar 18 1997 12:3526
Regarding Codewarrior, (I did renew my subscription despite the tempest)
there are essential differences with Visual C++ (that I use here).

Visual C++ has a lot of tools to edit the classes, generate the code ...
but it could not be differently because the Microsoft code is so twisted that
no reasonable human brain could develop a simple application without such an 
assistance ;-) MFC is a set of class based on a single common ancestor which
makes the whole library very tight and difficult to extend. It is very pleasant
to use, because you can do quickly what Microsoft wants you to do. 

On the other hand, Codewarrior has a framework named PowerPlant which was
designed with the ease of learning in mind, and is based on easily 
comprehendable "design patterns", in a mix-in approach: There are small groups 
of classes that do well a set of functions. And by mixing them you can achieve
more complex functions. And you can easily mix your classes in the framework.

The environment is not as polished as Microsoft's one but you certainly have a 
better grasp of what you're doing. It's more explicit to you, but still very
concise.

The developers have started to provide the same kind of framework for Java.

You really learn about OOA and OOD through the reading of the manuals. Check the
white paper at this URL, it is enlightening!
http://www.metrowerks.com/tools/software/powerplant/whitepaper.html