iPhone
Syllabus
iPhone Course Overview
Our iOS training classes can help you get off to a running start in iPhone, iPod, and iPad app development. Learn from expert Objective-C developers with years of experience in Apple’s iPhone SDK and Mac OS X development tools and frameworks. You’ll be creating working iPhone and iPad Apps in class within a few, fast-paced days. You will Understand the entire iPhone Apps Development Cycle from start to end
iPhone Course Prerequisite
- Prior ‘ANSI-C’ programming Language experience
- Basic object-oriented languages like C++, Java, C#.Net is recommended
- Knowing Basic SQL queries can be Advantage
iPhone Training Course Objective
- Our iOS (iPhone/iPad/iPod) training offerings feature smaller class sizes, more intensive hands-on lab exercises,deeper explanations, and the very best instructors
- Our focus on—and let’s face it, love of—Objective-C, Xcode, cocoa and Apple’s iOS development frameworks ensures you’ll get the very best iOS training available
- Our goal is to not only get you coding quickly—we’ll also help you get a solid understanding of how things work under the covers so you can continue learning on your own
- You’ll come away with practical, hands-on skills in designing and implementing well-engineered iPhone iPad and iPod apps, plus a level of insight that’s essential to resolving bugs, memory leaks, and other development issues
iPhone Training Course Duration
- 45 Working days, daily 2 Hours
Hardware and Software Requirements
- 32 bit “Mac OS X” system with 2/++ GB RAM (minimum)
- OS X v10.6 (Snow Leopard ) or other higher version
- Xcode IDE-4.3 or other Higher Version
iPhone Training Course Overview
Intro to Objective-C
- Objective-C and Smalltalk
- Objective-C, C , C++ and Mac OS X
- Objective-C and iPhone/iPad/iOS
Introduction iOS and SDK
- iOS SDK: iPhone, iPod Touch
- Xcode
- Interface Builder
- iPhone Simulator
- Debugger
Xcode
- Xcode IDE
- Editing
- Building
- Running
- Console
Objective-C 2.0
- Programming in Objective-C
- The Preprocessor
Classes, Objects, Methods and Properties
- id
- null
- @interface
- @end
- @implementation
- Archiving
- @property
- @synthesizee
- @dynamic
- Data Types
- control flow statement
- More about Classes
- More about Variables and Data Types
- Inheritance
- Polymorphism, Dynamic Typing, and Dynamic Binding
Categories and Protocols
- About Categories
- @catagory
- About Protocols
- @protocol
Foundation Framework
- Introduction to the Foundation Framework
Collections
- NSArray
- Enumeration
- NSMutableArray
- NSDictionary
- NSMutableDictionary
- Scalar Data Types
- NSObject and NSString
- NSData and NSDate
Files
- NSFileManager
- NSFileHandle
- NSUserDefaults
- NSHomeDirectory(), etc.
- Resource Files
- Read/Write Text Files
- Copying Objects
- Archiving
Memory Management
- Allocate
- Release
- Auto Releasing
- Reference Counting
- Static Analyzer
- Garbage Collection
Cocoa and Touch
- What is Cocoa?
- Cocoa Framework and Cocoa Classes
- Subclassing
- Xcode
- Simulator
- Interface Builder
- Nib files
- File’s Owner
- Outlet Connections
- Action Connections
- Inspector
Controls Part-1
- Controls
- Labels
- IBOutlet
- Buttons
- IBAction
- Event Handling
- UIEvent
- Toolbars
- Toolbar items
- Status bar
- Navigation bar and items
Controls Part-2
- Activity Indicator
- Network Activity Indicator
- Page Indicator
- Progress View
- Refresh Control
- Scope Bar
- Search Bar
- Segmented Control
- Slider
- Stepper
- Switch
- Detail Disclosure Button
- Info Button
Text Controls
- Text Field and Delegate
- Text View and Delegate
View
- What is View?
- UIViews and UIViewControllers
- UIView Class
- UIView Subclasses
- Types of Views
- UIApplication
Window Based Application
- Application
- Application Delegate
- View Controller
- Window & Views
- Device Info
- Screen
- CGRect, CGPoint, CGSize
- CGRectMake(), CGRectZero
- Static Device Info
- Dynamic Device Info
- Orientation Info
- The iPhone Accelerometer
- Detecting shakes
- Determining orientation
- Responding to the accelerometer
Tab Bar Application
- Tab Bar Controllers
- Tab Bars
- First View Controller
- Second View Controller
- Third View Controller
- Creating New Classes
- Classes and Interface Builder
Navigation Based Application
- Root View Controller
- Navigation Controller, Bars and Items
- Button Bar Items
- Push/Pop Views
Picker View
- UIPickerView
- UIPickerViewDelegate
- UIPickerViewDataSource
- Date and Time Picker
- UIDatePicker
- NSTimer
Table View
- Table View and Controller
- Table View Cellz
- Data Source
- Table View Delegate
Popover (iPad Only)
Split View (iPad Only)
Browser View
Alerting Users
- Alert View
- Alert View Delegate
- Action Sheet
- Action Sheet Delegate
Media and Images
- UIImageView
- UI image
- animationImages
- Highlighted Animation Images
- UITouch
- UIGestureRecognize
- UIPinchGestureRecognizer
- Panning
- Zooming
- Rotating Image
- Playing Audio
- Responding to audio events.
- Playing audio in background
- Recording Audio
- Playing Video
- Photo Library
- UIImagePickerController
- Taking Pictures And Movies
Processes and Threads
- NSProcessInfo
- NSThread
- PerformInBackground
- GCD (Grand Central Dispatch)
- Synchronization
Networking
- NSURL
- NSURLRequest
- NSURLConnection
- XMLParser
- SCNetwork
- CFHTTP
- CFFTP
- CFSocket
- Web Server
Working with SQLite
- What Is SQLite?
- The SQLite Library
- Building a Simple Database
- Designing the Database
- Creating the Database
- Populating the Database
- Creating Records with the INSERT Command
Working with Core Data
- Introducing Core Data
- SQLite and Core Data
- Modeling Data in Xcode
- Building a Core Data Application
- Core Data-Related Cocoa Features
- Core Data Migration and Performance
- Application Integration using Web Services
Location and Mapping
- About Core Location
- Handling location updates
- About Map Kit
- Map Overlays
- Adding annotations
Social Networks Integration
- Flickr integration
- Twitter integration
- Facebook integration
- Youtube integration
Real-Time Working Scenario
- What is mercurial and repository?
- What is IPA file?
- How to make an ipa file, upload a build to TestFlight? and upload app to app store?