IOS Software Development Tools
learn Delegation : iOS Concept :
The iOS software Development
Kit (SDK) was released in 2008 and enables third-party developers to create and
deploy applications to iPhone, iPad and iPod touch devices. The iOS SDK was
designed so that it would not only allow application developers already
familiar with the Mac OS X platform to migrate their code to run on iOS mobile
devices but also provide low barrier for novice developers to create rich
interactive applications. For iOS software applications development there are Tools provided
to us Objective-C and XCODE to develop native apps for iOS devices, they are
Objective C is an object-oriented programming language,
which is used for developing applications for iOS, it is essentially an
additional object-oriented layer with Smalltalk-style messaging on top of the
standard C language. Hence, regular C programs can be compiled using an
Objective C compiler and many frameworks within iOS also provide C style
C works on
the models of message passing where instead of method calls, messages are
passed to the target method.
provides run-time support for reflection which allows a program to query and
modify its own internal structure and hence, behavior during execution.
important thing to note
about objective C especially for C++ programmers is that Objective C does not
support operator overloading and also does not allow multiple inheritance.
Xcode is the Integrated
Developer Environment (IDE) of Apple for writing applications for iOS and Mac
OS X.Alcatraz is a package
manager for Xcode, which allows you to install additional plugins right inside
of your IDE.
Xcode comes with a suite of
developer tools and comprehensive documentation. It utilizes a modified version
of the GNU
Compiler Collection (GCC) for
compiling Objective C programs and uses the GNU Debugger (GDB) back-end for
Xcode compiles iOS
applications to run on ARM-based processors which are used in all the iOS
One of the interesting
features of Xcode is that it allows the distribution of compiling and building
applications across multiple networked computers, a capability known as
Dedicated Network Build.
we will see about : Objective C - Overview