SlideShare ist ein Scribd-Unternehmen logo
1 von 8
Downloaden Sie, um offline zu lesen
Chương trình đào tạo “iOS 7 Application Development”
Giới thiệu
Những năm gần đây, iPhone hay iPad đã trở thành chiếc những thiết bị di động rất phổ biến                                     
với các bạn trẻ đặc biệt là các bạn đam mê CNTT. Hầu hết mọi người dùng iPhone đều có                                       
một cảm nhận giống nhau, đó là sự hoàn hảo của chiếc điện thoại đó từ thiết kế đến các                                       
phần mềm hay game. Cùng với sự tăng trưởng chóng mặt của iPhone là sự bùng nổ các                                   
ứng dụng trên nền tảng iOS và cơ hội kiếm tiền của rất nhiều Doanh nghiệp Phần mềm cũng                                     
như Lập trình viên Di động.
Hệ thống đào tạo Lập trình viên Quốc tế FPT­Aptech trân trọng giới thiệu chương trình đào                                 
tạo “iOS 7 Application Development” từ cơ bản đến nâng cao. Với tiêu chí “học thật ra                                 
sản phẩm thật”, bạn sẽ được huấn luyện cách phát triển 1 ứng dụng iOS hoàn chỉnh dựa                                   
trên mô hình dự án thật, phương pháp phát triển phần mềm linh hoạt Agile, và biết cách kiếm                                     
tiền từ những sản phẩm do chính mình sáng tạo nên.
Kết thúc khoá học, bạn có thể:
● Áp dụng được quy trình phát triển phần mềm linh động Agile trong các dự án phần 
mềm trên nền tảng iOS 7
● Xây dựng được 1 ứng dụng iOS hoàn chỉnh từ khâu thiết kế đến đưa sản phẩm lên 
App Store
● Hiểu biết sâu sắc về iOS 7 và những công nghệ mới nhất của Apple
Ai nên tham gia chương trình đào tạo iOS 7 Application Development?
● Lập trình viên đang đi làm tại các doanh nghiệp 
● Những bạn trẻ yêu thích lập trình iOS
● Các bạn sinh viên ngành IT muốn có một nghề hot với lương bổng hấp dẫn
Yêu cầu
● Sinh viên có kiến thức lập trình căn bản 
● Sinh viên có kiến thức lập trình OOP là một lợi thế
● Sinh viên có kiến thức cơ bản về XML
Thời gian học
● Tổng số buổi: 30
● Ngày học: 2 buổi / tuần
● Thời gian: 2 giờ / buổi
Tham gia chương trình đào tạo iOS 7 Application Development, các bạn được:
● Phát triển toàn diện kỹ năng thiết kế giao diện đồ hoạ Mobile (UI/UX)
● Học trên quy trình phát triển phần mềm linh hoạt Agile
● Thực hành trên những thiết bị và nền tảng lập trình iOS mới nhất
● Hỗ trợ đưa sản phẩm cuối khoá lên App Store
● Hướng dẫn cách kiếm tiền từ những sản phẩm do chính mình tạo ra
1
Môi trường và thiết bị thực hành
● Macbook core i5, 4GB Ram, có cài đặt Mac OS X 10.9, iOS 7 SDK (laptop khác thì                                   
thấp nhất 8GB Ram)
● Thực hành 50% trên simulator, 50% học trên thiết bị di động iOS (iPhone, iPad)
● Công cụ và tài nguyên
○ Công cụ: Xcode 5, UXPin, Sketch, PaintCoder, Unity 3D
○ Tài nguyên: 
■ Tài liệu tham khảo:
➢ https://developer.apple.com
➢ https://developer.apple.com/devcenter/ios/index.action
➢ http://www.appcoda.com
➢ http://laptrinhios7.wordpress.com
■ Tài nguyên khoá học:
➢ Lab guide và tài liệu tham khảo: 
○ http://slideshare.com
○ Google Docs
➢ Demo và video: 
○ https://github.com/laptrinhios7/iad­course
○ http://www.youtube.com/laptrinhios7
■ iOS open source: 
➢ https://www.cocoacontrols.co
■ Protyping tool (UI/UX):
➢ http://bohemiancoding.com/sketch/
➢ https://proto.io
➢ https://www.flinto.com
Học phí cho khoá học
● 2 ­ 3 thành viên / nhóm
● 5M / thành viên
Chi phí thực tế:
● Macbook Pro: 25M
● iPhone: 10M
● Tài khoản Apple ID: 2M / năm
● Học phí: 5M / khoá
Phương pháp đào tạo
Phương pháp đào tạo hiện đại dựa trên mô hình dự án thật của các công ty hàng đầu về                                       
phát triển phần mềm như FPT Software, Tinh Vân, CMC... Ngay từ buổi thứ 2, các bạn sinh                                   
viên sẽ được giới thiệu về quy trình phát triển phần mềm Agile và sau đó phân nhóm (mỗi                                     
nhóm từ 2 đến 4 người). Các thành viên trong nhóm sẽ cộng tác chặt chẽ với nhau trong                                     
2
từng buổi học và được giảng viên hướng dẫn, hỗ trợ nhiệt tình để cuối khoá có thể báo cáo                                       
sản phẩm hoàn thiện của nhóm.
Nội dung chương trình đào tạo
Session Subject Project
1
Introduction to iOS 7 and SDK
● Overview of course
● Why you are here?
● Introduction to Mac OSX, iOS and iOS SDK
● New features in iOS 7
● Installing Xcode 5 and iOS 7 SDK
● iOS 7 architecture and SDK frameworks
● Objective­C introduction
● Overview of Xcode 5 IDE
● Building the first iPhone App: Hello FPT
○ Creating Single View project in Xcode
○ Designing View, UI using Storyboard
○ Running Hello FPT Application on iOS 7 Simulator
2
Objective­C Basics 
● Objective­C introduction
● Variables, data types and pointer
● Basic statements
○ Conditions (if, switch)
○ Loops (for, while, do... while)
● Array
● Functions
● Exceptions
Lab 1: Objective­C 
Basics
3
Object Oriented Programming (OOP) with 
Objective­C (Part 1)
● Concepts of OOP
● Classes and objects
● Properties
● Methods
Lab 2: OOP
4
Object Oriented Programming (OOP) with 
Objective­C (Part 2)
● Customizing existing Classes by inheritance, 
category, extension
● Working with blocks
● Working with protocols
5
Foundation Framework
● Introduction to Foundation Framework
3
● NSNumber, NSDecimalNumber
● NSString, NSMutableString
● NSSet, NSMutableSet 
● NSArray, NSMutableArray
● NSDictionary, NSMutableDictionary
6
Overview of Agile process in Mobile Application 
Development
● Introduction to Agile Process
● Explain the details of each step in Agile process
● Integrating Xcode 5 with Git 
● Source code management using GitHub
Project #1: 
Building team and 
choose project 
subject
7
Overview of the iOS 7 Application Development             
Architecture
● Start Developing iOS Apps Today
● Fundamental iOS design patterns and techniques 
○ Model­View­Controller
○ Delegation
○ Target­Action
○ Block objects
○ Sandboxing
● Overview of View Controller
8
Xcode 5 and Interface Builder for iOS 7 Application
● Exploring Single View Application project in Xcode 5
● Setting Project info (target device, platform, testing,..)
● Introduction to Interface Builder for iOS 7 App             
(Storyboard, Sence, Segue,...)
● Overview of UIControls in iOS 7
● Understanding View, Window and View Hierachy
● Working with AutoLayout in OS 7
● Handling basic interaction in iOS 7
● Demo: Completing Hello FPT Application 
● Assignment: Converting F to C Application
9 ­ 10
UI/UX Design for iOS 7 Application
● What is UI/UX?
● Design thinking
● Lean UX design process 
● iPhone app and device overview
● iOS 7 UI design basics
● Icon and image design
● UI/UX design strategies
● Practicing UX design
11 Project Review 1 Project #2: Project 
4
Submit UI/UX design of each group review
12
Overview of Multitouch, Taps and Gestures 
● Introduction to the Responder Chain
● Introduction to Gestures, Taps and Touches
● Getting and analyzing the coordinates of a Touch
● Using iOS Gesture Recognizers (Tap, Touch, Long 
Touch, Swipe, Pan, Pinch, Rotate)
● Developing iOS Gesture Recognition Application
○ Creating the Gesture Recognition Project
○ Designing the User Interface
○ Implementing the Action methods
○ Testing the Gesture Recognition Application
13
Working with Navigation and Tab Bar
● iOS 7 app anatomy
● Navigation controllers introduction
● Understanding application data flow
● Working with navigation bar
● Working with toolbar
● Tab bar controllers introduction
● Customizing tab bar appearance
● Working with tab bar
● Combining navigation and tab bar controllers
● Demo: NavBar, Toolbar, MoreTabBar Application
14
Working with Table View and Search Bar
● Introduction to Table View 
● Customizing the table view appearance
● Navigating a data hierarchy with table views
● Table view manipulation
● Introduction to search bar
● Customizing search bar appearance 
● Working with search bar in table view
● Demo: Mail App, Products Management App, Library 
Management App,...
5
15
Working with Image, Scroll, Collection, Picker, and 
Web View 
● Introduction to image view
● Working with scroll view
● Zooming image with scroll view
● Working with collection view
● Building photo album using image and collection view
● Introduction to picker view
● Displaying date, time and country list using 
UIPickerView – UIDatePicker
● Introduction to Web view
● Building iOS application to view Web and PDF
16
Designing Universal Interface which used for iPad             
and iPhone 
● Overview of all screen sizes for iPhone and iPad
● Checking iOS device functions and version of iOS
● Using UISplitViewController – UIPopOverController
● Process User Interface of iOS devices for Portrait – 
Landscape Orientation
17
Working with Core Graphic, Core Image and Core 
Animation
● Creating shapes and drawing in iOS
● Accessing photos from Photo Album or in Camera
● The basics of Image Filter
● Changing the Image Filter value
● Saving Images after editing to Photo Album
18
Audio – Video Programming
● Playback processing, playing music – video and 
changing the volume
● Sound recording and get thumbnail in video
16
Core Motion Programming
● Reading data from accelerometer (cảm biến gia tốc)             
and gyroscope (cảm biến con quay hồi chuyển)
● Recognition saking the iOS devices
● Demo: Core Motion Application
19
Map and Location Service in iOS 7 (MapKit)
● Introduction to UIMapKit – MapKitAnnotation – 
MKOverlay
● Display map and location information
● Detecting the coordinates of user
● Following the movement coordinates ­ Changing the 
address information and coordinates by GeoCoder
6
● Demo: Map Integrated Application
20
Working with MessageUI and Address Book 
● Composing mail and SMS in iPhone app
● Searching and Displaying all contacts or by filter
● Creating a new contact or a group in Address Book
● Editing and Deleting information, image of the contact
21
Concurrency Programming
● Concepts of concurrency – synchronous – 
asynchronous
● Multithreading programming using NSThread and 
Locking 
● Working with Timer, Grand Central Dispatch and 
NSOperation
22
Core Data Programming 
● Introduction to ORM architecture
● Working with Core Data components in iOS: 
ManagedObjectContext, PersistenceStoreCoordinator
● Adding, Editing, Deleting and Searching the records 
using Core Data
23
SQLite Programming
● Overview of  FMDB library wrapping SQLite
● Using Lita SQLite Administration or SQLiteManager 
Firefox addon to manage SQLite data file
● Using SQL statements: SELECT, INSERT, UPDATE, 
DELETE, JOIN
24
Data Sharing Programming with iCloud 
● Connecting to iCloud
● Saving, Synchronizing and Searching files and 
directories on iCloud
26
Network Programming and Social Network 
Integrating
● Network Programing
○ Concepts of Network
○ Overview of NSURLConnection, NSURLRequest, 
NSURLDownload
● Working with Web services
○ XML
○ JSON
○ HTTPStreaming
○ Restful
● Integrating iOS Application with Social Network
7
○ Facebook
○ Twitter
27
Debuging, Testing and Optimizing iOS Applicaiton 
● Executing Unit Test for iOS Application
● Register Apple Developer Account
● Using Apple Developer Provisioning Portal and add 
your device to test iOS Application
● Code Signing for your application and Deploying your 
Application on your device
● Publish your application on AppStore
28
Game Development on iOS 7
● Building Game using UIKit and Core Graphic
● Developing iOS 7 Game based on SpriteKit 
framework
● Working with Game Center
● Overview of 3D Game Development using Unity 3D
29
Business Strategies & Marketing for iOS Application
● Introduction to AppStore
● Final touches of an iOS Applicaton (icons and launch               
images)
● Using tools to report your iOS Applicaton
● Business strategies for your iOS Applicaton
○ Free
○ Paid
○ Free and Paid
○ Free and iAD
○ in­App purchase
● Marketing for iOS Application
○ Video trailer for your Application
○ Creating website and virtual company
○ Press­release and PR
○ Social Network Ad
30
Project Review 2
Review the projects of students
Project #3: Final 
review
31
Project Submission
Students present and demonstrate their games
Project #4: Project 
evaluation 
8

Weitere ähnliche Inhalte

Ähnlich wie iOS 7 Application Development Course

Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh GiảnTạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh GiảnNgoc Tu
 
Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?babyjessica0803
 
Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...
Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...
Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...jackjohn45
 
Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?babyjessica0803
 
Lập trình tinh giản
Lập trình tinh giảnLập trình tinh giản
Lập trình tinh giảnDieu Le Hoang
 
Tai sao chon java hoc lap trinh java o dau tot
Tai sao chon java   hoc lap trinh java o dau totTai sao chon java   hoc lap trinh java o dau tot
Tai sao chon java hoc lap trinh java o dau totnhatlectv
 
Tìm đường trên di động (PhoneGap)
Tìm đường trên di động (PhoneGap)Tìm đường trên di động (PhoneGap)
Tìm đường trên di động (PhoneGap)Lương Bá Hợp
 
FunTek LEOex STEAM products
FunTek LEOex STEAM productsFunTek LEOex STEAM products
FunTek LEOex STEAM productsAnh Dung
 
Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...
Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...
Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...DIVE INTO CODE Corp.
 
Khóa học Lập trình Android
Khóa học Lập trình AndroidKhóa học Lập trình Android
Khóa học Lập trình AndroidĐào tạo Seo
 
Open office & Microsoft office
Open office & Microsoft officeOpen office & Microsoft office
Open office & Microsoft officeA Dài
 
Lap trinh android_co_ban_eclip
Lap trinh android_co_ban_eclipLap trinh android_co_ban_eclip
Lap trinh android_co_ban_eclipktvinh
 
Lập trình với microsoft visual basic 6.0
Lập trình với microsoft visual basic 6.0Lập trình với microsoft visual basic 6.0
Lập trình với microsoft visual basic 6.0Học Huỳnh Bá
 
Visualbasic6lythuyet 121025092821-phpapp01
Visualbasic6lythuyet 121025092821-phpapp01Visualbasic6lythuyet 121025092821-phpapp01
Visualbasic6lythuyet 121025092821-phpapp01hatrungkhien
 
Đồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền android
Đồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền androidĐồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền android
Đồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền androidlaonap166
 
iphone vominhtri
iphone  vominhtriiphone  vominhtri
iphone vominhtriTri Vo
 
Hướng nghiệp Lập trình Web
Hướng nghiệp Lập trình WebHướng nghiệp Lập trình Web
Hướng nghiệp Lập trình WebVKhang Yang
 
Visual basic 6 ly thuyet
Visual basic 6 ly thuyetVisual basic 6 ly thuyet
Visual basic 6 ly thuyetphongchitien
 
Vận dụng kiến thức lập trình web vào môi trường thực tế
Vận dụng kiến thức lập trình web vào môi trường thực tếVận dụng kiến thức lập trình web vào môi trường thực tế
Vận dụng kiến thức lập trình web vào môi trường thực tếVKhang Yang
 

Ähnlich wie iOS 7 Application Development Course (20)

Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh GiảnTạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
Tạp chí lập trình VOL.2 Tháng 4/2013 Tinh Giản
 
Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?
 
School@net 15 năm
School@net 15 nămSchool@net 15 năm
School@net 15 năm
 
Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...
Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...
Sáng kiến kinh nghiệm hướng dẫn học sinh lập trình ứng dụng học tập cho thiết...
 
Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?Nên học lập trình Android hay iOS?
Nên học lập trình Android hay iOS?
 
Lập trình tinh giản
Lập trình tinh giảnLập trình tinh giản
Lập trình tinh giản
 
Tai sao chon java hoc lap trinh java o dau tot
Tai sao chon java   hoc lap trinh java o dau totTai sao chon java   hoc lap trinh java o dau tot
Tai sao chon java hoc lap trinh java o dau tot
 
Tìm đường trên di động (PhoneGap)
Tìm đường trên di động (PhoneGap)Tìm đường trên di động (PhoneGap)
Tìm đường trên di động (PhoneGap)
 
FunTek LEOex STEAM products
FunTek LEOex STEAM productsFunTek LEOex STEAM products
FunTek LEOex STEAM products
 
Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...
Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...
Khu00f3a hu1ecdc public application trong 3 tiu1ebfnguff01 lu1eadp tru00ecnh ...
 
Khóa học Lập trình Android
Khóa học Lập trình AndroidKhóa học Lập trình Android
Khóa học Lập trình Android
 
Open office & Microsoft office
Open office & Microsoft officeOpen office & Microsoft office
Open office & Microsoft office
 
Lap trinh android_co_ban_eclip
Lap trinh android_co_ban_eclipLap trinh android_co_ban_eclip
Lap trinh android_co_ban_eclip
 
Lập trình với microsoft visual basic 6.0
Lập trình với microsoft visual basic 6.0Lập trình với microsoft visual basic 6.0
Lập trình với microsoft visual basic 6.0
 
Visualbasic6lythuyet 121025092821-phpapp01
Visualbasic6lythuyet 121025092821-phpapp01Visualbasic6lythuyet 121025092821-phpapp01
Visualbasic6lythuyet 121025092821-phpapp01
 
Đồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền android
Đồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền androidĐồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền android
Đồ án tốt nghiệp Xây dựng ứng dụng fastfood trên nền android
 
iphone vominhtri
iphone  vominhtriiphone  vominhtri
iphone vominhtri
 
Hướng nghiệp Lập trình Web
Hướng nghiệp Lập trình WebHướng nghiệp Lập trình Web
Hướng nghiệp Lập trình Web
 
Visual basic 6 ly thuyet
Visual basic 6 ly thuyetVisual basic 6 ly thuyet
Visual basic 6 ly thuyet
 
Vận dụng kiến thức lập trình web vào môi trường thực tế
Vận dụng kiến thức lập trình web vào môi trường thực tếVận dụng kiến thức lập trình web vào môi trường thực tế
Vận dụng kiến thức lập trình web vào môi trường thực tế
 

Mehr von Vu Tran Lam

Session 12 - Overview of taps, multitouch, and gestures
Session 12 - Overview of taps, multitouch, and gestures Session 12 - Overview of taps, multitouch, and gestures
Session 12 - Overview of taps, multitouch, and gestures Vu Tran Lam
 
Session 14 - Working with table view and search bar
Session 14 - Working with table view and search barSession 14 - Working with table view and search bar
Session 14 - Working with table view and search barVu Tran Lam
 
Session 9-10 - UI/UX design for iOS 7 application
Session 9-10 - UI/UX design for iOS 7 applicationSession 9-10 - UI/UX design for iOS 7 application
Session 9-10 - UI/UX design for iOS 7 applicationVu Tran Lam
 
Session 8 - Xcode 5 and interface builder for iOS 7 application
Session 8 - Xcode 5 and interface builder for iOS 7 applicationSession 8 - Xcode 5 and interface builder for iOS 7 application
Session 8 - Xcode 5 and interface builder for iOS 7 applicationVu Tran Lam
 
Session 5 - Foundation framework
Session 5 - Foundation frameworkSession 5 - Foundation framework
Session 5 - Foundation frameworkVu Tran Lam
 
Session 4 - Object oriented programming with Objective-C (part 2)
Session 4  - Object oriented programming with Objective-C (part 2)Session 4  - Object oriented programming with Objective-C (part 2)
Session 4 - Object oriented programming with Objective-C (part 2)Vu Tran Lam
 
Session 3 - Object oriented programming with Objective-C (part 1)
Session 3 - Object oriented programming with Objective-C (part 1)Session 3 - Object oriented programming with Objective-C (part 1)
Session 3 - Object oriented programming with Objective-C (part 1)Vu Tran Lam
 
Session 2 - Objective-C basics
Session 2 - Objective-C basicsSession 2 - Objective-C basics
Session 2 - Objective-C basicsVu Tran Lam
 
Session 16 - Designing universal interface which used for iPad and iPhone
Session 16  -  Designing universal interface which used for iPad and iPhoneSession 16  -  Designing universal interface which used for iPad and iPhone
Session 16 - Designing universal interface which used for iPad and iPhoneVu Tran Lam
 
Session 15 - Working with Image, Scroll, Collection, Picker, and Web View
Session 15  - Working with Image, Scroll, Collection, Picker, and Web ViewSession 15  - Working with Image, Scroll, Collection, Picker, and Web View
Session 15 - Working with Image, Scroll, Collection, Picker, and Web ViewVu Tran Lam
 
Session 1 - Introduction to iOS 7 and SDK
Session 1 -  Introduction to iOS 7 and SDKSession 1 -  Introduction to iOS 7 and SDK
Session 1 - Introduction to iOS 7 and SDKVu Tran Lam
 
Succeed in Mobile career
Succeed in Mobile careerSucceed in Mobile career
Succeed in Mobile careerVu Tran Lam
 
Android Application Development Course
Android Application Development Course Android Application Development Course
Android Application Development Course Vu Tran Lam
 
Your Second iPhone App - Code Listings
Your Second iPhone App - Code ListingsYour Second iPhone App - Code Listings
Your Second iPhone App - Code ListingsVu Tran Lam
 
Introduction to MVC in iPhone Development
Introduction to MVC in iPhone DevelopmentIntroduction to MVC in iPhone Development
Introduction to MVC in iPhone DevelopmentVu Tran Lam
 
Building a Completed iPhone App
Building a Completed iPhone AppBuilding a Completed iPhone App
Building a Completed iPhone AppVu Tran Lam
 
Introduction to iPhone Programming
Introduction to iPhone Programming Introduction to iPhone Programming
Introduction to iPhone Programming Vu Tran Lam
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web DesignVu Tran Lam
 
HTML5 Web Standards
HTML5 Web StandardsHTML5 Web Standards
HTML5 Web StandardsVu Tran Lam
 
3D & Animation Effects Using CSS3 & jQuery
3D & Animation Effects Using CSS3 & jQuery3D & Animation Effects Using CSS3 & jQuery
3D & Animation Effects Using CSS3 & jQueryVu Tran Lam
 

Mehr von Vu Tran Lam (20)

Session 12 - Overview of taps, multitouch, and gestures
Session 12 - Overview of taps, multitouch, and gestures Session 12 - Overview of taps, multitouch, and gestures
Session 12 - Overview of taps, multitouch, and gestures
 
Session 14 - Working with table view and search bar
Session 14 - Working with table view and search barSession 14 - Working with table view and search bar
Session 14 - Working with table view and search bar
 
Session 9-10 - UI/UX design for iOS 7 application
Session 9-10 - UI/UX design for iOS 7 applicationSession 9-10 - UI/UX design for iOS 7 application
Session 9-10 - UI/UX design for iOS 7 application
 
Session 8 - Xcode 5 and interface builder for iOS 7 application
Session 8 - Xcode 5 and interface builder for iOS 7 applicationSession 8 - Xcode 5 and interface builder for iOS 7 application
Session 8 - Xcode 5 and interface builder for iOS 7 application
 
Session 5 - Foundation framework
Session 5 - Foundation frameworkSession 5 - Foundation framework
Session 5 - Foundation framework
 
Session 4 - Object oriented programming with Objective-C (part 2)
Session 4  - Object oriented programming with Objective-C (part 2)Session 4  - Object oriented programming with Objective-C (part 2)
Session 4 - Object oriented programming with Objective-C (part 2)
 
Session 3 - Object oriented programming with Objective-C (part 1)
Session 3 - Object oriented programming with Objective-C (part 1)Session 3 - Object oriented programming with Objective-C (part 1)
Session 3 - Object oriented programming with Objective-C (part 1)
 
Session 2 - Objective-C basics
Session 2 - Objective-C basicsSession 2 - Objective-C basics
Session 2 - Objective-C basics
 
Session 16 - Designing universal interface which used for iPad and iPhone
Session 16  -  Designing universal interface which used for iPad and iPhoneSession 16  -  Designing universal interface which used for iPad and iPhone
Session 16 - Designing universal interface which used for iPad and iPhone
 
Session 15 - Working with Image, Scroll, Collection, Picker, and Web View
Session 15  - Working with Image, Scroll, Collection, Picker, and Web ViewSession 15  - Working with Image, Scroll, Collection, Picker, and Web View
Session 15 - Working with Image, Scroll, Collection, Picker, and Web View
 
Session 1 - Introduction to iOS 7 and SDK
Session 1 -  Introduction to iOS 7 and SDKSession 1 -  Introduction to iOS 7 and SDK
Session 1 - Introduction to iOS 7 and SDK
 
Succeed in Mobile career
Succeed in Mobile careerSucceed in Mobile career
Succeed in Mobile career
 
Android Application Development Course
Android Application Development Course Android Application Development Course
Android Application Development Course
 
Your Second iPhone App - Code Listings
Your Second iPhone App - Code ListingsYour Second iPhone App - Code Listings
Your Second iPhone App - Code Listings
 
Introduction to MVC in iPhone Development
Introduction to MVC in iPhone DevelopmentIntroduction to MVC in iPhone Development
Introduction to MVC in iPhone Development
 
Building a Completed iPhone App
Building a Completed iPhone AppBuilding a Completed iPhone App
Building a Completed iPhone App
 
Introduction to iPhone Programming
Introduction to iPhone Programming Introduction to iPhone Programming
Introduction to iPhone Programming
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
HTML5 Web Standards
HTML5 Web StandardsHTML5 Web Standards
HTML5 Web Standards
 
3D & Animation Effects Using CSS3 & jQuery
3D & Animation Effects Using CSS3 & jQuery3D & Animation Effects Using CSS3 & jQuery
3D & Animation Effects Using CSS3 & jQuery
 

iOS 7 Application Development Course

  • 1. Chương trình đào tạo “iOS 7 Application Development” Giới thiệu Những năm gần đây, iPhone hay iPad đã trở thành chiếc những thiết bị di động rất phổ biến                                      với các bạn trẻ đặc biệt là các bạn đam mê CNTT. Hầu hết mọi người dùng iPhone đều có                                        một cảm nhận giống nhau, đó là sự hoàn hảo của chiếc điện thoại đó từ thiết kế đến các                                        phần mềm hay game. Cùng với sự tăng trưởng chóng mặt của iPhone là sự bùng nổ các                                    ứng dụng trên nền tảng iOS và cơ hội kiếm tiền của rất nhiều Doanh nghiệp Phần mềm cũng                                      như Lập trình viên Di động. Hệ thống đào tạo Lập trình viên Quốc tế FPT­Aptech trân trọng giới thiệu chương trình đào                                  tạo “iOS 7 Application Development” từ cơ bản đến nâng cao. Với tiêu chí “học thật ra                                  sản phẩm thật”, bạn sẽ được huấn luyện cách phát triển 1 ứng dụng iOS hoàn chỉnh dựa                                    trên mô hình dự án thật, phương pháp phát triển phần mềm linh hoạt Agile, và biết cách kiếm                                      tiền từ những sản phẩm do chính mình sáng tạo nên. Kết thúc khoá học, bạn có thể: ● Áp dụng được quy trình phát triển phần mềm linh động Agile trong các dự án phần  mềm trên nền tảng iOS 7 ● Xây dựng được 1 ứng dụng iOS hoàn chỉnh từ khâu thiết kế đến đưa sản phẩm lên  App Store ● Hiểu biết sâu sắc về iOS 7 và những công nghệ mới nhất của Apple Ai nên tham gia chương trình đào tạo iOS 7 Application Development? ● Lập trình viên đang đi làm tại các doanh nghiệp  ● Những bạn trẻ yêu thích lập trình iOS ● Các bạn sinh viên ngành IT muốn có một nghề hot với lương bổng hấp dẫn Yêu cầu ● Sinh viên có kiến thức lập trình căn bản  ● Sinh viên có kiến thức lập trình OOP là một lợi thế ● Sinh viên có kiến thức cơ bản về XML Thời gian học ● Tổng số buổi: 30 ● Ngày học: 2 buổi / tuần ● Thời gian: 2 giờ / buổi Tham gia chương trình đào tạo iOS 7 Application Development, các bạn được: ● Phát triển toàn diện kỹ năng thiết kế giao diện đồ hoạ Mobile (UI/UX) ● Học trên quy trình phát triển phần mềm linh hoạt Agile ● Thực hành trên những thiết bị và nền tảng lập trình iOS mới nhất ● Hỗ trợ đưa sản phẩm cuối khoá lên App Store ● Hướng dẫn cách kiếm tiền từ những sản phẩm do chính mình tạo ra 1
  • 2. Môi trường và thiết bị thực hành ● Macbook core i5, 4GB Ram, có cài đặt Mac OS X 10.9, iOS 7 SDK (laptop khác thì                                    thấp nhất 8GB Ram) ● Thực hành 50% trên simulator, 50% học trên thiết bị di động iOS (iPhone, iPad) ● Công cụ và tài nguyên ○ Công cụ: Xcode 5, UXPin, Sketch, PaintCoder, Unity 3D ○ Tài nguyên:  ■ Tài liệu tham khảo: ➢ https://developer.apple.com ➢ https://developer.apple.com/devcenter/ios/index.action ➢ http://www.appcoda.com ➢ http://laptrinhios7.wordpress.com ■ Tài nguyên khoá học: ➢ Lab guide và tài liệu tham khảo:  ○ http://slideshare.com ○ Google Docs ➢ Demo và video:  ○ https://github.com/laptrinhios7/iad­course ○ http://www.youtube.com/laptrinhios7 ■ iOS open source:  ➢ https://www.cocoacontrols.co ■ Protyping tool (UI/UX): ➢ http://bohemiancoding.com/sketch/ ➢ https://proto.io ➢ https://www.flinto.com Học phí cho khoá học ● 2 ­ 3 thành viên / nhóm ● 5M / thành viên Chi phí thực tế: ● Macbook Pro: 25M ● iPhone: 10M ● Tài khoản Apple ID: 2M / năm ● Học phí: 5M / khoá Phương pháp đào tạo Phương pháp đào tạo hiện đại dựa trên mô hình dự án thật của các công ty hàng đầu về                                        phát triển phần mềm như FPT Software, Tinh Vân, CMC... Ngay từ buổi thứ 2, các bạn sinh                                    viên sẽ được giới thiệu về quy trình phát triển phần mềm Agile và sau đó phân nhóm (mỗi                                      nhóm từ 2 đến 4 người). Các thành viên trong nhóm sẽ cộng tác chặt chẽ với nhau trong                                      2
  • 3. từng buổi học và được giảng viên hướng dẫn, hỗ trợ nhiệt tình để cuối khoá có thể báo cáo                                        sản phẩm hoàn thiện của nhóm. Nội dung chương trình đào tạo Session Subject Project 1 Introduction to iOS 7 and SDK ● Overview of course ● Why you are here? ● Introduction to Mac OSX, iOS and iOS SDK ● New features in iOS 7 ● Installing Xcode 5 and iOS 7 SDK ● iOS 7 architecture and SDK frameworks ● Objective­C introduction ● Overview of Xcode 5 IDE ● Building the first iPhone App: Hello FPT ○ Creating Single View project in Xcode ○ Designing View, UI using Storyboard ○ Running Hello FPT Application on iOS 7 Simulator 2 Objective­C Basics  ● Objective­C introduction ● Variables, data types and pointer ● Basic statements ○ Conditions (if, switch) ○ Loops (for, while, do... while) ● Array ● Functions ● Exceptions Lab 1: Objective­C  Basics 3 Object Oriented Programming (OOP) with  Objective­C (Part 1) ● Concepts of OOP ● Classes and objects ● Properties ● Methods Lab 2: OOP 4 Object Oriented Programming (OOP) with  Objective­C (Part 2) ● Customizing existing Classes by inheritance,  category, extension ● Working with blocks ● Working with protocols 5 Foundation Framework ● Introduction to Foundation Framework 3
  • 4. ● NSNumber, NSDecimalNumber ● NSString, NSMutableString ● NSSet, NSMutableSet  ● NSArray, NSMutableArray ● NSDictionary, NSMutableDictionary 6 Overview of Agile process in Mobile Application  Development ● Introduction to Agile Process ● Explain the details of each step in Agile process ● Integrating Xcode 5 with Git  ● Source code management using GitHub Project #1:  Building team and  choose project  subject 7 Overview of the iOS 7 Application Development              Architecture ● Start Developing iOS Apps Today ● Fundamental iOS design patterns and techniques  ○ Model­View­Controller ○ Delegation ○ Target­Action ○ Block objects ○ Sandboxing ● Overview of View Controller 8 Xcode 5 and Interface Builder for iOS 7 Application ● Exploring Single View Application project in Xcode 5 ● Setting Project info (target device, platform, testing,..) ● Introduction to Interface Builder for iOS 7 App              (Storyboard, Sence, Segue,...) ● Overview of UIControls in iOS 7 ● Understanding View, Window and View Hierachy ● Working with AutoLayout in OS 7 ● Handling basic interaction in iOS 7 ● Demo: Completing Hello FPT Application  ● Assignment: Converting F to C Application 9 ­ 10 UI/UX Design for iOS 7 Application ● What is UI/UX? ● Design thinking ● Lean UX design process  ● iPhone app and device overview ● iOS 7 UI design basics ● Icon and image design ● UI/UX design strategies ● Practicing UX design 11 Project Review 1 Project #2: Project  4
  • 5. Submit UI/UX design of each group review 12 Overview of Multitouch, Taps and Gestures  ● Introduction to the Responder Chain ● Introduction to Gestures, Taps and Touches ● Getting and analyzing the coordinates of a Touch ● Using iOS Gesture Recognizers (Tap, Touch, Long  Touch, Swipe, Pan, Pinch, Rotate) ● Developing iOS Gesture Recognition Application ○ Creating the Gesture Recognition Project ○ Designing the User Interface ○ Implementing the Action methods ○ Testing the Gesture Recognition Application 13 Working with Navigation and Tab Bar ● iOS 7 app anatomy ● Navigation controllers introduction ● Understanding application data flow ● Working with navigation bar ● Working with toolbar ● Tab bar controllers introduction ● Customizing tab bar appearance ● Working with tab bar ● Combining navigation and tab bar controllers ● Demo: NavBar, Toolbar, MoreTabBar Application 14 Working with Table View and Search Bar ● Introduction to Table View  ● Customizing the table view appearance ● Navigating a data hierarchy with table views ● Table view manipulation ● Introduction to search bar ● Customizing search bar appearance  ● Working with search bar in table view ● Demo: Mail App, Products Management App, Library  Management App,... 5
  • 6. 15 Working with Image, Scroll, Collection, Picker, and  Web View  ● Introduction to image view ● Working with scroll view ● Zooming image with scroll view ● Working with collection view ● Building photo album using image and collection view ● Introduction to picker view ● Displaying date, time and country list using  UIPickerView – UIDatePicker ● Introduction to Web view ● Building iOS application to view Web and PDF 16 Designing Universal Interface which used for iPad              and iPhone  ● Overview of all screen sizes for iPhone and iPad ● Checking iOS device functions and version of iOS ● Using UISplitViewController – UIPopOverController ● Process User Interface of iOS devices for Portrait –  Landscape Orientation 17 Working with Core Graphic, Core Image and Core  Animation ● Creating shapes and drawing in iOS ● Accessing photos from Photo Album or in Camera ● The basics of Image Filter ● Changing the Image Filter value ● Saving Images after editing to Photo Album 18 Audio – Video Programming ● Playback processing, playing music – video and  changing the volume ● Sound recording and get thumbnail in video 16 Core Motion Programming ● Reading data from accelerometer (cảm biến gia tốc)              and gyroscope (cảm biến con quay hồi chuyển) ● Recognition saking the iOS devices ● Demo: Core Motion Application 19 Map and Location Service in iOS 7 (MapKit) ● Introduction to UIMapKit – MapKitAnnotation –  MKOverlay ● Display map and location information ● Detecting the coordinates of user ● Following the movement coordinates ­ Changing the  address information and coordinates by GeoCoder 6
  • 7. ● Demo: Map Integrated Application 20 Working with MessageUI and Address Book  ● Composing mail and SMS in iPhone app ● Searching and Displaying all contacts or by filter ● Creating a new contact or a group in Address Book ● Editing and Deleting information, image of the contact 21 Concurrency Programming ● Concepts of concurrency – synchronous –  asynchronous ● Multithreading programming using NSThread and  Locking  ● Working with Timer, Grand Central Dispatch and  NSOperation 22 Core Data Programming  ● Introduction to ORM architecture ● Working with Core Data components in iOS:  ManagedObjectContext, PersistenceStoreCoordinator ● Adding, Editing, Deleting and Searching the records  using Core Data 23 SQLite Programming ● Overview of  FMDB library wrapping SQLite ● Using Lita SQLite Administration or SQLiteManager  Firefox addon to manage SQLite data file ● Using SQL statements: SELECT, INSERT, UPDATE,  DELETE, JOIN 24 Data Sharing Programming with iCloud  ● Connecting to iCloud ● Saving, Synchronizing and Searching files and  directories on iCloud 26 Network Programming and Social Network  Integrating ● Network Programing ○ Concepts of Network ○ Overview of NSURLConnection, NSURLRequest,  NSURLDownload ● Working with Web services ○ XML ○ JSON ○ HTTPStreaming ○ Restful ● Integrating iOS Application with Social Network 7
  • 8. ○ Facebook ○ Twitter 27 Debuging, Testing and Optimizing iOS Applicaiton  ● Executing Unit Test for iOS Application ● Register Apple Developer Account ● Using Apple Developer Provisioning Portal and add  your device to test iOS Application ● Code Signing for your application and Deploying your  Application on your device ● Publish your application on AppStore 28 Game Development on iOS 7 ● Building Game using UIKit and Core Graphic ● Developing iOS 7 Game based on SpriteKit  framework ● Working with Game Center ● Overview of 3D Game Development using Unity 3D 29 Business Strategies & Marketing for iOS Application ● Introduction to AppStore ● Final touches of an iOS Applicaton (icons and launch                images) ● Using tools to report your iOS Applicaton ● Business strategies for your iOS Applicaton ○ Free ○ Paid ○ Free and Paid ○ Free and iAD ○ in­App purchase ● Marketing for iOS Application ○ Video trailer for your Application ○ Creating website and virtual company ○ Press­release and PR ○ Social Network Ad 30 Project Review 2 Review the projects of students Project #3: Final  review 31 Project Submission Students present and demonstrate their games Project #4: Project  evaluation  8