Bert Altenburg, author of AppleScript for Absolute Starters, in co-operation with Alex Clarke and Philippe Mougin, has released a book for newcomers to Cocoa programming using Objective-C and XCode.
This tutorial is written for non-programmers, and is aimed at levelling the learning curve as much as possible. In the best tradition, BecomeAnXcoder is released as a free booklet in pdf format under a CC Attribution license. It is also available online, simply follow the links below.
BecomeAnXcoder has been downloaded over 110,000 times since May 2006. If you’d like to help create a translation into French, Spanish, Italian or any other language, please contact me: alex at cocoalab dot com.
Please Note: BecomeAnXcoder Chinese, Arabic and Japanese were written for OS X 10.4 Tiger, so they currently contain outdated information. The English book has now been updated for Xcode 3 on OS X 10.5 Leopard.
The online version of the book is always the most up to date. Every so often I will condense all the changes to the English version from the online version and create a new pdf. The translations are maintained by independent volunteers and so may not be in sync with the current English version.
- NEW! Become An Xcoder (French) (2.5MB PDF file)
- NEW! Become An Xcoder (German) (3MB PDF file)
- Become An Xcoder (English – Leopard) (2MB PDF file)
- Become An Xcoder (English – Tiger) (2MB PDF file)
- Become An Xcoder (Japanese) (2.3MB PDF file)
- Become An Xcoder (Simplified Chinese) (1.2MB PDF file)
- Become An Xcoder (Traditional Chinese) (4.5MB PDF file)
- Become An Xcoder (Arabic) (1.5MB PDF file)
English Leopard Online Book
- 00: Before we start
- 01: A Program Is a Series of Instructions
- 02: No comment? Unacceptable!
- 03: Functions
- 04: Printing on screen
- 05: Compiling and Running a Program
- 06: Conditional Statements
- 07: Repeating Statements for a While
- 08: A Program With a GUI
- 09: Finding Methods
- 10: awakeFromNib
- 11: Pointers
- 12: Strings
- 13: Arrays
- 14: Accessors and properties
- 15: Memory Management
- 16: Sources of Information