Welcome to the MacNN Forums.

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

You are here: MacNN Forums > Enthusiast Zone > Classic Macs and Mac OS > help, I want to be a programmer???

help, I want to be a programmer???
Thread Tools
sprite
Guest
Status:
Reply With Quote
Jul 17, 2000, 12:10 AM
 
I would like learn programming but I'm a little confused on which direction a beginner should go. should I learn c or realbasic. will programming for mac os x be differnet (easier or harder) than mac os 9. I would like to make a somes small utilites for monitoring system activities and maybe a hotline clone for both client and server that can control bandwidth and upload to download ratios etc...
thanks
     
Partridge
Guest
Status:
Reply With Quote
Jul 17, 2000, 02:06 AM
 
BASIC is a pretty good language to start out with. It takes care of a lot of the window creation/mouse handling event watching stuf for you so you can concentrate on learning about loops, branches, logical operations, function calls etc etc etc.
Learning BASIC first will make it MUCH easier to move over to c if and when you decide to start writing your own napster client application.
When you do that, you'll likely find yourself continuing to use BASIC on a fairly regular basis as it's also a great "utility" language for putting together small projects quickly.
     
Lunchbox
Guest
Status:
Reply With Quote
Jul 17, 2000, 09:40 AM
 
If you want to program for fun and get things done quckly: try realbasic, teach yourself.

If you want to program as a job and for OSX: learn C or C++ by taking a course.
     
Tintim
Guest
Status:
Reply With Quote
Jul 18, 2000, 04:59 AM
 
I think despite of REALsoftware producing the quite good REALbasic program for the Mac, there are many aspects of REALbasic and BASIC I don't like and I am not going to list them here.

I am new to programming myself and I chose to learn C. C is highly portable which mean that once you learnt the C language, you can write plain C programs for the Mac, Windows and Linux without requiring much changing. C is also quite pleasant to program using an environment like CodeWarrior. (For those not familiar with programming in C, you need to learn the C language first and then learn to write real programs for Mac, Windows or another platform.)

By the way, I have CodeWarrior Pro 5, a teach yourself C book and learning C by myself with no formal programming education, if anyone is interested in forming a learn C on the Mac group with a website maintain by me, please leave your email address and I will email you telling you the website address and email of others in the group. The group is for helping each other learning C programming and to maintain interest in C programming too of course
     
Paul Crawford
Dedicated MacNNer
Join Date: Nov 1999
Location: Georgetown, Demerara, Guyana
Status: Offline
Reply With Quote
Jul 18, 2000, 10:34 PM
 
Hi sprite,

I'll offer my two-cents' perspective as a software developer on various platforms (hobbyist/student since 1981, professional since 1993)... In general, there are always tradeoffs involved in choosing any computer language. Some folks claim that C (as distinct from C++) is a less advanced third-generation language (3GLs are typically procedural and "block structured"), whereas BASIC (especially MS Visual Basic) is a more advanced fourth-generation language (4GLs are typically data-abstracted and geared towards databases). Regardless of the truth/falsehood of those claims, the popular computer languages have also traditionally been divided into two major categories:- compiled vs. interpreted. The "professional" languages such as C/C++ and even Pascal are usually compiled, which means that the final built application is typically faster and more compact, but also that the debugging process can be slower since any source-code editing must be followed by another compile/link/run cycle. On the other hand, "prototyping" languages such as BASIC are usually interpreted, which means that the debugging process is typically faster and easier since any source-code editing is "instantaneously" reflected at runtime, but also that the final built application can be slower and bulkier if there is a dependency on a run-time "interpreting engine". Newer languages such as C++ have further heated up the debate by resurrecting an explicit "object-oriented" (non-procedural) model that was first found in older languages such as Smalltalk.

IMHO, procedural languages in the "professional" catagory aren't much harder to learn and use than those in the "prototyping" category; in other words, ignoring a few language features such as direct pointer/address manipulation, there isn't much of a learning-curve difference between C and BASIC as pure languages. There's a much wider gap between a procedural language (e.g., C) and an object-oriented language (e.g., C++) than there is between any two procedural languages. Similarly, learning the GUI specifics ("Application Programming Interfaces" or APIs) of a particular platform such as Mac OS, UNIX or Windows can be more challenging than learning the pure language itself, which is why "prototyping" interpreters such as RealBASIC have tended to provide built-in API facilities to make life easier for developers. However, nowadays most decent "professional" compilers also include rapid GUI-development tools and integrated debuggers, which greatly ease the burden of the development cycle. Lastly, some people claim that programming will be much easier in Mac OS X than it is in the Classic Mac OS, due to the high-level interface unit and other development units that are built-in to the Cocoa environment of Mac OS X [although this would require learning another language such as Java, or Objective C (an object-oriented variant of C that's not the same as C++)].

BTW, for additional C/C++ info & resources, see the somewhat off-topic C++ thread in the 'AppleScript' Forum here on MacNN. Also, for other general programming info & resources, see the related threads in various Forums/Fora here on Mac NN if you haven't already done so -- e.g.: looking for a programming book or program, MacOS Programming ..., Macintosh Programming Topic. & SoftWindows: Can I pretend I am programming an x86? in the 'Third-party Software' Forum; Objective C, Hobbyist programmer support & IDEs in MacOS X in the 'Mac OS X' Forum; and, Where Do People Learn Mac Programming?, Macintosh C, Helpful For You?, Programming Question - Making Window Movale., free CodeWarrior programming classes & Macintosh Programming? in the 'News and Advocacy' Forum -- as well as the Is there a programming language for Mac? thread over in MacFixIt's 'Troubleshooting Software' Forum, and the which language is this? thread over in MacFixIt's 'Troubleshooting Mac OS' Forum. Plunging into all those threads should keep you busy for a while. :-)

Best wishes in your future programming endeavors,

--Paul

[This message has been edited by Paul Crawford (edited 07-18-2000).]
     
sprite
Guest
Status:
Reply With Quote
Jul 19, 2000, 08:53 AM
 
thank you everyone for the input. I've been looking around and it seems the Mac OSX will be using Object c and Java.
I was just wondering how powerful is Java. I was under the impresson that java was more for website programing. Is it possible to write a napster clone with java?
     
Macguy
Junior Member
Join Date: Aug 1999
Status: Offline
Reply With Quote
Jul 19, 2000, 01:56 PM
 
Isn't there a program very similar to Napster that was written with Java?

Try this page:
http://freenet.sourceforge.net

I use a Java Stock Ticker on my computer everyday to track the markets, one thing that's nice about it is it works on a Macintosh or Winodws Computer, and looks pretty much exactly the same.
     
infiniti
Junior Member
Join Date: Apr 2000
Location: Canada
Status: Offline
Reply With Quote
Jul 26, 2000, 03:04 AM
 
It should also be made known that, although not supported yet, when realBASIC 3 is released, it will produce Carbon applications. They will be fully compatible with OSX, and use the Aqua interface.

Although realBASIC is a cool program, it's compiled programs have huge file sizes, and (I have found) it gets a little complicated when working on big or complicated projects. I don't know much about C++, but I'm sure it can do better than RB if you take a while to learn it.
12" iBook 900
     
lrivers
Guest
Status:
Reply With Quote
Sep 13, 2000, 02:11 PM
 
There is a huge difference between what is required to write a full-featured application in C and the same thing in REALbasic.

To do so in C, you also need to know all about toolbox calls, memory management, and so on in addition to knowing C.

You need to (at minimum) have 2 almost completely separate code bases if you want to deploy on Mac and Windows.

To create an application that runs on Mac OS Classic, Mac OS X, and Windows you one project, no knowledge of the toolbox (although if you want to use toolbox calls and declares for Windows, you can) or memory management. Drag and drop interface elements into a window, double-click them to add code, compile.

Yes REALbasic makes larger applications than hand-tuned C. So what? How big is YOUR hard drive? I have a 12GB drive in my PowerBook. It cost almost $200.
     
   
 
Forum Links
Forum Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Top
Privacy Policy
All times are GMT -4. The time now is 11:27 PM.
All contents of these forums © 1995-2017 MacNN. All rights reserved.
Branding + Design: www.gesamtbild.com
vBulletin v.3.8.8 © 2000-2017, Jelsoft Enterprises Ltd.,