Transcript
Page 1: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved. © SpringPeople Software Private Limited, All Rights Reserved.

Introduction to iOS Apps Development

Page 2: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Tracking The Past

Steve Jobs started Apple Computers in 1980s.

John Sculley acquired control – NeXT Computers emerged in 1985

Closed in 1993, renamed to NeXT Software Inc.

Brad Cox invented Objective-C in 1983

Steve Jobs licensed Objective-C in 1998

Development tools commercial version – NeXTSTEP

OS and Dev Tools based on UNIX

Apple acquired NeXTSTEP in 1996 – renamed NeXTSTEP to COCOA.

Page 3: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

The Success Song

Apple produced its first innovation iMAC machine 1998.

2001 – produced the portable masterpiece iPOD

June 29, 2007 rocked the mobile market with its Smartphone – iPhone

Apple Stores recorded 2,70,000 units sale in two days

iPhone topped a million units in a month and a half.

July 11, 2008 Apple released iPhone 3G and its public deployment of iPhone SDK.

iPhone SDK and Cocoa downloadable free by developers

Page 4: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

iPhone Specifications

Core Specifications: Specs for both the 2007 and 2008 3G release

4.7 or 4.8 ounce computing devices

620 MHz ARM CPU under-clocked to improve battery performance and reduce heat.

128 MB Dynamic RAM (DRAM)

4-16 GB Flash Memory

Built-on Apple’s OS X

Page 5: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Development Environment • Most Object-Oriented Development Environments consist of:

An Object-oriented Programming Language

• Objective-C

A library of Objects

• Cocoa Frameworks

A Suite of Development Tools

• Xcode and Interface Builder

A Runtime Environment

• Acts as a Kind of Operating system for Objective-C.

• Typically, you don’t need to interact with runtime

• directly

Page 6: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Frameworks

Frameworks – classes compiled together into a reusable library of code.

Built in frameworks - /System/Library/Frameworks

Cocoa is made up of:

Foundation: Standard values, collection, utility classes. Strings, dates, lists, threads, timers.

AppKit: User Interface Frameworks. Windows, buttons, text fields, events, drawing classes

Core Data: Core data is a persistence frameworks. Makes it easy to save and reload files.

Page 7: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

IOS Architecture

iOS can be considered as architected into Layers Cocoa Touch at the Developer interface level Abstracts from the more Core layers

Page 8: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Core Operating System

The Core OS System offers :

Threading (POSIX Threads)

Networking (BSD sockets)

File-System Access

Standard I/O

Bonjour and DNS services

Locale Information

Memory Allocation

Math Computations

Page 9: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Core OS Features

Accelerate Framework

DSP, Linear Algebra, Image Processing

Core Bluetooth (Objective-C)

Connect to Bluetooth devices

External Accessories Framework (Objective-C)

Communicate Through 30-pin connector

Security Framework

Manage Certificates, Keys and Policies

Page 10: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Core Services CFNetwork

Low Level Networking

Core Data Framework (Objective –C)

Persistence Storage in SQLite Database

Core Foundation Framework

Collections, Date/Time, Threading

Objective-C Wrapper: Foundation

Core Location Framework (Objectvive-C)

GPS, Cell, Wi-Fi Locations

Core Telephony Framework (Objective-C)

Cell Provider Info, Receive Call Events

Store Kit Framework (Objective –C)

In-App Purchase

Page 11: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Media Layer

Core Graphics

2D Vector and Raster Graphics

Core Animation

View Animation

Core Image (Objective-C)

Image and Video Manipulation, Filters

Open GL ES and GLKit

Hardware-accelerated 3D graphics

Core Text

Text layout and Rendering

Image I/O

Assets Library

Access User Photos and videos

Page 12: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Media Audio/Video

Media Player Frameworks (Objective-C)

Access iTunes Library and Simple Playback

AV Foundation Frameworks (Objective-C)

Audio and Video Capture and Playback

Open AL

Positional Audio

Core Audio Framework

Advanced Audio Playback

Core Video Framework

Advanced Video Playback

AirPlay (Objective-C)

Stream Audio and Video to Other Devices

Page 13: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Media Layer Hierarchy

AV Foundation

Page 14: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

COCOA Touch

Story Boards (iOS5)

Gesture Recognition

Documents

Multi Tasking

Printing

Data Protection

File Sharing

Local Notifications

Push Notifications

Peer-peer Services

External Display Support

System View Controllers

Page 15: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

COCOA Touch Frameworks Address Book

Contacts

Event UI Kit

Calender

Map Kit

Maps

Message UI

Email and SMS

Game Kit

Multiplayer Games

iAd

Advertisements

Twitter

Tweets

UIKit

Everything Else

Page 16: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Objective - C

Objective-C is a superset of C, which enables sophisticated Object oriented programming mostly based on SmallTalk.

Designed to give C full OOPS support.

Objective-C code is compiled by gcc, the GNU C compiler. It enables to freely mix C, C++ and Objective-C code in a single file.

Objective-C is the foundation of Cocoa – a whole lot of utility functions.

Thousands of classes/libraries are wrapped into the Foundation Frameworks.

Cocoa also contains interface classes – UIKit and other classes like the MapKit, Address Book UI all wrapped into Cocoa Touch.

Page 17: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Say “HI” To Objective - C

#import <Cocoa/Cocoa.h>

#import “AppDevegate.h”

NSLog(@”Getting the first message”);

The Important typedef

The Code sense

Everything is Pointer*

The iOS Autorelease Pool

Page 18: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Start Developing your own iOS Apps In 3 Days Flat

Attend the 3-Days “iOS (iPhone & iPad) Workshop”

View Complete Details

Page 19: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Who will benefit?

Professionals who have been working with any object-oriented programming

language (Java, C++, C, C# etc)

View Complete Details

Page 20: SpringPeople Introduction to iOS Apps Development

© SpringPeople Software Private Limited, All Rights Reserved.

Q & A

[email protected] +91 80 65679700

www.springpeople.com

A SpringSource & MuleSoft Certified Partner and

VMware Authorized Training Center


Top Related