• If you are citizen of an European Union member nation, you may not use this service unless you are at least 16 years old.

  • You already know Dokkio is an AI-powered assistant to organize & manage your digital files & messages. Very soon, Dokkio will support Outlook as well as One Drive. Check it out today!

View
 

Mac Programming for Mortals

Page history last edited by Roland Tanglao 16 years ago

FAQ Mac Programming

 


 

If you have questions about OS X programming or Python that aren't answered here, try http://livingcode.org/

 

What is OS X?

OS X, or Mac OS X, is the operating system that runs on recent Macintosh computers. It has a wide variety of programming facilities, including all the usual tools you would find in Linux or Unix, plus some tools and libraries that are specific to the Mac. The Developer Tools used to build, test, profile, and debug Mac applications are freely available from the Apple developer site, although to download the most recent version you do need to create a free account on the Apple Developer Connection (ADC).

 

I'm new to programming, what is a good place to get started?

I recommend the Python programming language both for beginners and for easily creating or modifying Mac applications.

 

How can I use Python to script OS X programs

Using the Python/Objective-C bridge to create your program or plugin, and [http://svn.pythonmac.org/py2app/py2app/trunk/doc/index.htmlpy2app] to build your application or bundle for distribution.

 

If I'm using Python to build a Cocoa application, how can I figure out the Cocoa objects and APIs?

Apple's Developer site, but the best way I've found is to use the AppKiDo application which gives a searchable, hyperlinked view of the Cocoa documentation.

 

If I want to modify a Cocoa application, but I don't have the source code for it, how can I find out what objects are in the application, and what methods those objects have?

There are several ways. A good starting point is the Armchair Guide to Cocoa Reverse Engineering. Another method is to use some of the example programs that come with PyObjC that can inject functionality into a running program, including a class browser (InjectBrowser) and a live Python interpreter for interactive exploration (InjectInterpreter).

 

Comments (0)

You don't have permission to comment on this page.