The Objective

A helpful blog for Objective-C software developers.

Objective-C being a superset of C means that its applications fall under the same basic rules.  An Objective-C based program needs a main function like all other C based programs.
Like any other C program, you can use either of the following examples:

int main() {}
//or
int main(int argc, char *argv[]) {}

Starting an Objective-C Application
To begin an application [...]

Interface Builder is a tool used to construct an application’s user interface visually. It allows a programmer to not only build the visual representation of the interface, but allows the ability to add function to it.
History
Interface Builder was first introduced in 1988 apart of NeXTstep 0.8.  One of the first notable projects developed using [...]

A Target in Xcode is a blueprint used to create a product such as an application.  It contains build settings, rules that are applied when building, and general attributes like the version number and the product name.
Build Phases
A Build Phase, is a step executed when a Target is building a product.  Xcode comes with pre-made [...]

Tagged with , , , ,

A Framework is a software component used by applications.  They contain pre-made classes allowing developers to have a foundation to build from.
History
Most programming languages and environments contain pre-made components to work from.  These components are normally called libraries.  Brad Cox of StepStone, in the mid-80s, revolutionized modern software development by introducing software components with the programming [...]

After launching Xcode, go to the menu bar and click on File  -> New Project….  When the “New Project” window opens up, make sure that “Application” is selected in the left list, then choose a Cocoa based template to start with.  They should be located at the top; most likely you’ll just want to use the normal [...]

Tagged with , , , ,

Xcode is a suite of development software as well as an application inside the suite.  It was originally developed by NeXT as a program called Project Builder, later rewritten for Mac OS X.  Today, it is owned and maintained by Apple.  If you plan on developing native applications for Mac OS X, this is the primary choice.
iPhone [...]

Summary
Cocoa is the native development and application environment for Mac OS X. It was originally introduced in 1989 as NeXTStep, an object oriented operating system developed by NeXT.  The reason behind it, was to utilize the power of a dynamic object runtime over the traditional ways of programming.  Originally NeXTStep used kits, a [...]

OpenStep is an API specification developed in 1994 by NeXT Software and Sun Microsystems. It is based on NeXT’s object oriented application environment known as NeXTstep. This is the most popular Objective-C API and environment used today.
History
In 1996, Apple and NeXT started talking to each other. Apple needed a new operating [...]

In Objective-C, unlike other object oriented languages, objects send and receive messages rather than accessing methods directly. The reason for this is to allow dynamic features, like dynamically loaded methods. A dynamically loaded method, is one that is loaded into a class at runtime rather than at compiled time.
Another reason for using messages, [...]

When it comes to Objective-C 2.0, there is a new garbage collector feature, allowing you to automatically manage memory in applications. This is good for many reasons, but it cannot be used in all situations, so you should know how to manually handle the task.
Firstly, if you don’t know about pointers read this section: [...]