Information Technology Reference
In-Depth Information
If you are used to developing in a different environment, you may feel that Xcode works in ways that don't match
your requirements. If you plan to create windowed applications with official Apple UI elements, building
Objective-C and Cocoa code in Xcode is likely to be your most efficient choice. If you prefer to create UNIX ap-
plications with command line or X11 features, you may prefer an alternative. Although OS X is based on Darwin/
POSIX rather than Linux, it's relatively easy to create a cross-platform application core that can be extended with
platform-specific features.
It's possible to use Xcode from the command line in Terminal with your own make files (build management and
configuration files). If you're used to GCC and GDB on other platforms, you can run them directly from the com-
mand line, bypassing most of Xcode's features.
Java and C/C++ developers may prefer the free Eclipse IDE available at www.eclipse.org . Eclipse can be extended
with a C/C++ IDE. Cocoa isn't supported, but Java and mixed development are.
For multi-platform support, Mono remains a popular choice. Mono compiles C# rather than Objective-C or C++,
but is designed to support cross-platform output, running similar code on Windows, OS X, iPhone, Android, and
Linux platforms. Mono also supports ASP.NET web projects.
MonoMac and MonoTouch versions include bindings to key OS X and iOS APIs. A version for Android is also
available. The main IDE is called MonoDevelop and is available at monodevelop.com . Although Mono has obvi-
ous advantages, Apple's support for the competing platform isn't reliably enthusiastic. At times, Apple has barred
from the App Store apps developed in languages other than C, Objective-C, and C++. But some MonoTouch ap-
plications have been approved for sale. Mono may be a better choice for developers coming from a C# and Win-
dows background who don't want to learn a completely new language.
On the iPhone, Flash developers can package Flash projects as iPhone applications with Adobe's Packager for
iPhone. Originally included in various versions of Adobe CS5, Packager was withdrawn when Apple restricted
iPhone applications to native Objective-C and C++ code. Apple subsequently lifted the restrictions later in 2010
and at the time of writing Packager is available as a free beta project from the Adobe Labs site at labs.adobe.com .
Future production versions are likely to have their own URL and product pages.
iPhone game developers may also want to consider Ansca's Corona, which is a simplified scripted development
environment for iOS and Android available from anscamobile.com/corona . Corona currently costs $349 per
year, but claims faster development times than are possible with Xcode and native Objective-C.
Understanding Xcode 4's Key Features
For developers who are beginning Xcode, Xcode 4 includes the following features:
A project navigator that lists and groups related project files.
File and project templates for both OS X and iOS projects.
A code editor that includes static code checking, code completion, and dynamic hints and tips.
A visual UI design tool called Interface Builder, also known as IB, which can prototype visual interfaces,
but can also be used to manage and preload other application objects .
 
Search WWH ::




Custom Search