Mac Programming - an Introduction

Writing Programs on the Macintosh OS X

© Peter Jorgensen

Jul 23, 2008
The Macintosh provides many ways to automate tasks. Whether you're a beginner or an expert, you'll find that all the programming tools you need come with every Mac.

While the Mac is still a minority platform overall, in some areas such as film, music and graphic design it has always been very popular. It's popularity is growing in other areas like the hard sciences, and, believe it or not, computer science, now that it is based on a Unix core and the Intel processor family.

There Are Many Languages Supported

The options for programming on the Mac are truly outstanding, some would say overwhelming. Most Mac application development is done in the XCode environment which comes with OS X and supports c-based languages like C, and Objective C in addition to just about every other language you've ever heard of.

Traditional Unix Command-Line Programming

For those command-line junkies among us, all the usual UNIX suspects are available, including perl, php, java, ruby, python, and all shell scripting utilites such as awk, sed and grep. Of course these can all be integrated seamlessly into an XCode project as well.

Cross-Platform programming

There are several cross-platform environments like Revolution Studio which users of the now discontinued HyperCard will find familiar and Visual Basic for Applications which is included in Microsoft Office products and the OpenOffice suite.

Automated Scripting

The Mac has its own scripting language called Applescript as well that even those of use with no programming experience can use to automate a workflow using the Automator application to record our steps and fine tune them.

XCode - an Integrated Development Environment

From its NeXT heritage, the Mac OS has inherited a truly great IDE called XCode. Together with Interface Builder, Instruments and a host of integrated utilities you'll find developing, debugging, and producing double-clickable applications about as easy as it gets. Incorporating menus, text entry fields and other controls are as simple as dragging them into a window and telling them which parts of your code they belong to. The code that glues it all together is written for you. Yet you still have complete control over your source code whether it's in C, Objective C, Java or any of many the other supported languages.

Why Bother Programming the Computer?

People often end up doing the same task over and over again, like renaming many files. For example normalizing the names of two hundred JPEG files to put on a web site. In order to make the web site easier to maintain the files should all have the same extension, such as ".jpg". But some of them may have ".JPG" and some ".jpeg". A simple script can be written and saved as a droplet to normalize all of the names. Simply by dropping the folder containing the files onto it the task will be done. When you start thinking about the things you do, or should do, over an over again, like backing up your iCal, AddressBook and Preferences files to your iDisk every week, you realize that a simple script that runs on a schedule not only becomes a time saver, but can also be a lifesaver.


The copyright of the article Mac Programming - an Introduction in Mac Programming is owned by Peter Jorgensen. Permission to republish Mac Programming - an Introduction in print or online must be granted by the author in writing.




Post this Article to facebook Add this Article to del.icio.us! Digg this Article furl this Article Add this Article to Reddit Add this Article to Technorati Add this Article to Newsvine Add this Article to Windows Live Add this Article to Yahoo Add this Article to StumbleUpon Add this Article to BlinkLists Add this Article to Spurl Add this Article to Google Add this Article to Ask Add this Article to Squidoo