You are on page 1of 18

Objective C

was originally developed in the early 1980s


primary programming language you use when writing software for OS X
and iOS.
used by Apple for the OS X and iOS operating systems
respective application programming interfaces (APIs), Cocoa and Cocoa
Touch
Get the Tools
XCODE
Xcode is Apples integrated development environment (IDE)
includes a source editor, a graphical user interface editor, and many other
features
iOS SDK extends the Xcode toolset to include the tools, compilers, and
frameworks you need specifically for iOS development
You need OS X version 10.8 to download Xcode
The iOS SDK is included with Xcode.

Cocoa Touch
a UI framework framework by Apple
Used for building software programs to run on the iOS operating system
(for the iPhone, iPod Touch, and iPad).
It follows a Model-View-Controller(MVC) software architecture.

Main features
1. Core Animation
2. Multitasking
3. Gesture Recognizers

iOS technologies can be seen as a set of layers, with Cocoa Touch at the
highest level and the Core OS and iOS kernel at the bottom.
A hierarchical view of the iOS technologies can be shown as follows:
1. Cocoa Touch
2. Media / Application Services
3. Core Services
4. Core OS / iOS kernel

count.(Cocoa Touch in relation to other iOS layers)
Instruments
Track down difficult-to-reproduce problems in your code
Do performance analysis on your app
Automate testing of your app
Stress-test parts of your app
Perform general system-level troubleshooting
Gain a deeper understanding of how your app works.
Gather data about your apps memory usage, disk activity, network activity,
and graphics performance among others.
User Interface
UIKit.
The UIKit framework provides classes to create a touch-based user interface.
All iOS apps are based on UIKit.
Core Graphics.
A low-level, C-based framework.
Of course, the simplest and most efficient way to create graphics in iOS is to use prerendered
images with the standard views and controls of the UIKit framework, letting iOS do the drawing.

Core Animation.
Allows you to make advanced animations and visual effects.
UIKit provides animations that are built on top of the Core Animation technology.
If you need advanced animations beyond the capabilities of UIKit, you can use Core Animation
directly.
Data
Core Data.
The Core Data framework manages an apps data model.
With Core Data, you create model objects, known as managed objects.
Core Data takes advantage of the built-in SQLite technology to store and manage data
efficiently.

Foundation.
The Foundation framework defines a base layer of Objective-C classes.
This framework introduces several paradigms that define behaviors not covered by the
Objective-C language.
Among other things, this framework includes classes representing basic data types, such as
strings and numbers, and collection classes for storing other objects.
Socket Programming
Socket Programming
Socket and stream programming generally falls into one of the following broad
categories:
Packet-based communication Programs that operate on one packet at a time, listening for
incoming packets, then sending packets in reply.
Stream-based clients Programs that use TCP to send and receive data as two
continuous streams of bytes, one in each direction.


Socket Types
UDP (User Datagram Protocol)
TCP (Transmission Control Protocol)


Socket Programming
Choosing an API Family

POSIX C networking APIs
Use POSIX calls if cross-platform portability is required.
is discouraged because it does not activate the cellular radio or on-demand VPN

Foundation Objective-C networking APIs
For client code in Objective-C.
Foundation defines high-level classes for managing URL connections, socket streams, network
services, and other networking tasks.
It is also the primary non-UI Objective-C framework in OS X and iOS, providing routines for run
loops, string handling, collection objects, file access, and so on.

Socket Programming
Core Foundation C networking APIs
For client code in C
The Core Foundation framework and the CFNetwork framework are two of the primary C-
language frameworks in OS X and iOS.
Together they define the functions and structures upon which the Foundation networking classes
are built.

In OS X
CFNetwork is a sub framework of the Core Services framework.

In iOS
CFNetwork is a top-level framework.
Submit an iOS App to the App Store
http://code.tutsplus.com/tutorials/how-to-submit-an-ios-app-to-the-app-store--
mobile-16812

https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDis
tributionGuide/SubmittingYourApp/SubmittingYourApp.html

Reference
https://developer.apple.com
http://en.wikipedia.org/wiki/Objective-C
https://developer.apple.com/library/ios/documentation/NetworkingInternet/Conceptual/NetworkingTopic
s/Articles/UsingSocketsandSocketStreams.html
http://oreilly.com/iphone/excerpts/iphone-sdk/network-programming.html


Thank you





.....any Questions.?

You might also like