1. Trang chủ
  2. » Công Nghệ Thông Tin

Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động

98 374 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 98
Dung lượng 5,37 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nguyễn Đức Bình qua một thời gian nghiên cứu, tìm hiểu em đã hoàn thành bản báo cáo đồ án tốt nghiệp của mình.Trong giới hạn bài báo cáo đồ án tốt nghiệp này, em có tìm hiểu về các vấn

Trang 1

LỜI CẢM ƠN

Lời đầu tiên, em xin chân thành cảm ơn trường Đại học Công nghệ thông tin và truyền thông, Đại học Thái Nguyên đã tạo điều kiện thuận lợi cho phép em hoàn thành báo cáo này

Em xin chân thành cảm ơn sự giúp đỡ và đóng góp ý kiến nhiệt tình của các thầy - cô giáo trong bộ môn Mạng và Truyền thông – Khoa Công Nghệ Thông Tin - Đại học Công Nghệ Thông Tin và Truyền Thông – Đại Học Thái Nguyên

Đặc biệt em xin bày tỏ lòng cảm ơn sâu sắc nhất đến thầy giáo hướng dẫn:

Th.S Nguyễn Đức Bình, đã tận tụy giúp đỡ em trong suốt quá trình học tập và

nghiên cứu

Em xin chân thành cảm ơn !!!

Trang 2

LỜI CAM ĐOAN

Em , Giáp Văn Trường, sinh viên trường Đại Học Công Nghệ Thông Tin Thái Nguyên, xin cam đoan:

Những nội dung trong báo cáo này là do bản thân em thực hiện dưới sự

hướng dẫn trực tiếp của thầy giáo hướng dẫnThS Nguyễn Đức Bình.

Mọi tham khảo dùng trong đồ án đều được trích dẫn rõ ràng tên tác giả, tên công trình, thời gian, địa điểm công bố

Mọi sao chép không hợp lệ hoặc có bất kì thông tin sai lệch nào, em xin chịu hoàn toàn trách nhiệm trước Hội Đồng và Nhà trường

Thái nguyên, tháng 6 năm 2012

Sinh viên

Giáp Văn Trường

Trang 3

MỤC LỤC

LỜI CẢM ƠN 1

LỜI CAM ĐOAN 2

1 Sơ qua tình hình nghiên cứu trong và ngoài nước 8

2 Tính cấp thiết của đề tài 8

3 Mục tiêu của đề tài 9

4 Phương pháp và phạm vi nghiên cứu 9

CHƯƠNG 2 : NGÔN NGỮ LẬP TRÌNH OBJECTIVE C VÀ BỘ CÔNG CỤ HỖ TRỢ XCODE 20

2.4 Bộ công cụ hỗ trợ lập trình Xcode 32

2.4.3 Xcode 33

2.4.4Các mẫu ứng dụng 34

2.4.5Tổng quan về Xcode Project 35

2.4.6Thêm các Framework vào project 37

2.4.7 Iphone Simulator 38

2.4.9 Instrument 40

2.4.10 Xây dựng và cài đặt ứng dụng 41

2.5 Mô hình MVC ( Model-View-Controller ) 42

CHƯƠNG 3: ỨNG DỤNG QUẢN LÝ ĐẶT PHÒNG CHO KHÁCH SẠN INTERCONTINENTAL HANOI WESTLAKE 45

3.2Phân tích hệ thống 53

3.2.1Tác nhân 53

3.2.2Đặc tả Use Case (Trường hợp) 56

3.3 Demo 85

KẾT LUẬN 87

TÀI LIỆU THAM KHẢO 89

PHỤ LỤC 90

Trang 4

Phụ lục 1: File khai báo Booking Deluxe Westlake 90 Phụ lục 2: File thực thi form Booking Deluxe Westlake 92

Trang 5

LỜI NÓI ĐẦU

Dưới sự hướng dẫn của thầy giáo ThS Nguyễn Đức Bình qua một thời gian

nghiên cứu, tìm hiểu em đã hoàn thành bản báo cáo đồ án tốt nghiệp của mình.Trong giới hạn bài báo cáo đồ án tốt nghiệp này, em có tìm hiểu về các vấn

đề sau:

+ Iphone, Hệ điều hành IOS và các Framework hỗ trợ cho lập trình ứng dụng Iphone

+ Ngôn ngữ lập trình Objective C

+ Bộ công cụ lập trình với Objective C: Xcode

+ Phát triển ứng dụng Quản lý đặt phòng khách sạn trên Iphone

Một lần nữa, em xin chân thành cảm ơn thầy giáo ThS Nguyễn Đức Bình,

các thầy cô trong khoa CNTT - Đại Học Công Nghệ Thông Tin và Truyền Thông và các bạn đã giúp đỡ em hoàn thành báo cáo này

Thái nguyên, tháng 6 năm 2012

Sinh viên thực hiện

Giáp Văn Trường

Trang 6

DANH MỤC HÌNH ẢNH

Trang 7

CÁC CHỮ VIẾT TẮT VÀ CÁC THUẬT NGỮ ĐƯỢC SỬ DỤNG

TLS Kiểu bảo mật Transport Layer Security

OpenAL Công nghệ lai tạo âm thanh Open Audio LibrarySDK Gói phát triển phần mềm Software Development Kit

IDE Mô hình phát triển tích hợp Intergrated Development

Environment

Trang 8

TỔNG QUAN

1 Sơ qua tình hình nghiên cứu trong và ngoài nước

Trong xu thế phát triển nhanh chóng của CNTT, lập trình ứng dụng cho thiết bị di động không còn xa lạ với chúng ta Tuy nhiên lập trình ứng dụng trên

hệ điều hành IOS (hay cụ thể là cho chiếc điện thoại Iphone ) lại là một hướng

đi khá mới mẻ với những lập trình viên ở Việt Nam nói chung và trên thế giới nói riêng

Ngày 17/10/2007, Tổng Giám đốc Apple, Steve Jobs, tuyên bố hãng này sẵn sàng chào đón các hãng phần mềm thứ ba phát triển ứng dụng cho Iphone Đây là cú ngoặt lịch sử của Apple vì trước đó hãng này muốn kiểm soát những

gì người dùng có thể cài và chạy trên điện thoại Iphone Đây cũng là cánh cở mới mở rộng cho các nhà lập trình và phát triển phần mềm ứng dụng trên thiết

bị di dộng

IOS là hệ điều hành trên các thiết bị di động của Apple Ban đầu hệ điều hành này chỉ được phát triển để chạy trên Iphone, nhưng sau đó nó đã được mở rộng để chạy trên các thiết bị của Apple như iPod touch, iPad và Apple TV Ngày 31 tháng 5, 2011, App Store của Apple chứa khoảng 500.000 ứng dụng IOS, và được tải về tổng cộng khoảng 15 tỷ lần Trong quý 4 năm 2010, có khoảng 26% điện thoại thông minh chạy hệ điều hành IOS, sau hệ điều hành Android của Google và Symbian của Nokia

2 Tính cấp thiết của đề tài

Sự bùng nổ và phát triển mạnh mẽ của công nghệ đã và đang khiến con người khó có thể thiếu đi chiếc điện thoại của mình Cùng với sự phát triển đó thì những ứng dụng trên di động càng ngày càng trở nên cần thiết Đặc biệt lập trình ứng dụng trên Iphone (trên hệ điều hành IOS) là một không gian mới hay một thử thách mới với những người lập trình bởi nó hoàn toàn xa lạ và có nhiều cơ hội cho mọi người thử sức

Phiên bản Iphone đầu tiên ra đời năm 2007 Bên cạnh tính năng của một máy điện thoại thông thường (hoạt động trên băng tần GSM và EDGE), Iphone còn được trang bị màn hình cảm ứng, máy chụp hình, khả năng chơi nhạc và chiếu phim (tương tự iPod), trình duyệt web,… Phiên bản thứ hai là Iphone 3G ra

Trang 9

mắt tháng 7 năm 2008, được trang bị thêm hệ thống định vị toàn cầu (GPS), mạng 3G tốc độ cao (HSPDA).

Iphone đã thành công, nổi lên trở thành chiếc điện thoại bán chạy nhất mọi thời đại: Sau 2 năm, Iphone đã chiếm lĩnh tới 17% thị trường Smartphone,

và thậm chí có lúc bán được hơn 1 triệu chiếc chỉ trong 1 ngày Và apple đã mở cửa, tạo điều kiện để cho đội ngũ lập trình trên toàn thế giới có thể tham gia vào thị trường cung cấp những ứng dụng cho Iphone Apple sẽ chia lại cho các nhà phát triển đến 70% doanh thu Mức chia lợi nhuận này là cao nhất hiện nay trong các chợ ứng dụng Điều này lý giải một phần nguyên nhân tại sao bắt đầu có nhiều người tham gia phát triển ứng dụng cho App Store

Là sinh viên, khi thực hiện đề tài, tìm hiểu, nghiên cứu về lĩnh vực mới này, em tin sẽ học hỏi được nhiều kiến thức mới, nhiều kinh nghiệm thiết thực hơn và có thể áp dụng vào thực tế, đem lại hiệu quả trong công việc sau này

3 Mục tiêu của đề tài

Qua thời gian thực hiện đề tài, em tin rằng sẽ nắm được những điểm quan trọng trong hệ điều hành IOS, thu được nhiều kiến thức, kỹ năng và kinh nghiệm trong việc lập trình ứng dụng trên thiết bị di động Nắm được các yếu tố nền tảng và phát triển được phần mềm ứng dụng Quản lý đặt phòng khách sạn trên Iphone

4 Phương pháp và phạm vi nghiên cứu

Giờ đây hệ điều hành Mac OS đã có thể chạy trên phần cứng (intel) tuy nhiên nó là không phải là 100% chạy cho tất cả các máy tính intel Chỉ một số không nhiều các dòng máy có thể chạy thành công Mac OS Nhờ đó mà người lập trình có thể cài đặt Xcode và sử dụng object C Đó chính là cách thức tiếp cận với môi trường lập trình ứng dụng cho Iphone của em

Phạm vi nghiên cứu:

- Nghiên cứu về hệ điều hành IOS

- Nghiên cứu ngôn ngữ lập trình object C và bộ công cụ hỗ trợ Xcode

- Nghiên cứu kỹ thuật lập trình trên thiết bị di động Iphone

- Xây dựng các tính năng cơ bản cho ứng dụng: Đặt phòng khách sạn cho khách sạn Intercontinental Hanoi Westlake

Trang 10

CHƯƠNG 1: IPHONE VÀ HỆ ĐIỀU HÀNH IOS 1.1 Iphone và hệ điều hành iOS

1.1.1 Iphone

Iphone là mẫu điện thoại di động của hãng điện tử Mỹ Apple Computer.Phiên bản Iphone đầu tiên ra đời năm 2007 Bên cạnh tính năng của một máy điện thoại thông thường (hoạt động trên bốn băng tần GSM và EDGE), Iphone còn được trang bị màn hình cảm ứng, máy chụp hình, khả năng chơi nhạc và chiếu phim (tương tự iPod), trình duyệt web, Phiên bản thứ hai là Iphone 3G ra mắt tháng 7 năm 2008, được trang bị thêm hệ thống định vị toàn cầu (GPS), mạng 3G tốc độ cao (HSDPA)

Iphone 3G S, phiên bản thứ ba, được công bố vào ngày 8 tháng 6 năm

2009 Ngày 19 tháng 6, phiên bản mới này đã được phân phối tại Mỹ, Canada và một số nước châu Âu; ngày 26 tháng 6 có mặt tại Úc; sau đó, phiên bản quốc

tế của Iphone 3G S cũng được phát hành vào tháng 7 và tháng 8 năm 2009 Thay đổi đáng kể nhất là trong phiên bản điện thoại mới này là Apple đã nâng cao hiệu năng của máy (S trong 3G S là Speed - Tốc độ).Iphone 3G S được trang bịbộ vi

xử lý tốc độ 600 MHz (gấp gần 1,5 lần so với Iphone 3G), bộ nhớ trong lên đến

32 GB, máy ảnh số 3.15 Mp, tích hợp la bàn số và hàng loạt tính năng đáng giá được nâng cấp khác như tốc độ Wi-Fi, thời gian dùng pin v.v

Trước đó, ngày 17 tháng 3 năm 2009, Apple cũng đã thông báo phiên bản 3.0 của hệ điều hành cho Iphone (và iPod Touch) và đã được ra mắt chính thức vào ngày 17 tháng 6 năm 2009

Iphone 4 được thông bố ra đời tháng 6 năm 2010.Trong phiên bản này Iphone đã được thiết kế lại, vuông vắt và có khía cạnh hơn Về chức năng đáng chú ý, Iphone 4 có chức năng quay phim HD, màn hình Rétina trong và nhuyễn hơn gấp 4 so với các màn hình đời trước và chức năng FaceTime (gọi và thấy người gọi qua Wi-Fi

Kể từ khi ra đời, Iphone vẫn luôn làm điên đảo cả thế giới với thiết kế độc đáo và con đường riêng màApple đã chọn.Thành công rực rỡ mà Iphone có được

Trang 11

điều khiến cả thế giới phải ngả mũ thán phục.Điểm lại những cột mốc lịch sử của chiếc smartphone mang tính cách mạng này:

Ngày 9/1/2007: Steve Jobs vén tấm màn bí mật của Iphonephiên bản đầu tiên tại Macworld 2007

Ngày 5/9/2007: Apple quyết định ngừng sản xuất phiên bản 4GB

Ngày 5/2/2008: Phiên bản 16GB chính thức ra đời và bước vào hàng ngũ smartphone của Apple

Ngày 9/6/2008: Tại hội nghị WWĐƯợC, Apple đã giới thiệu Iphone 3G Ngày 10/7/2008: App Store chính thức mở cửa, với chỉ khoảng 500 ứng dụng Ngày 8/6/2009: Apple tung ra Iphone 3GS và giảm giá bản Iphone 3G xuống chỉ còn một nửa App Store có 50.000 ứng dụng và trên 1 tỉ lượt download

Hình ảnh 1: Iphone 3GS

Trang 12

Ngày 17/6/2009: Apple tung ra IOS 3.0.

Ngày 19/6/2009: Iphone 3GS có mặt tại Mỹ, Canada và 6 quốc gia Châu Âu Ngày 26/6/2009: Iphone 3GS có mặt tại Nhật và Úc

Ngày 4/11/2009: App Store chạm mốc 100.000 ứng dụng và trên 2 tỉ lượt download

Ngày 29/4/2010: Lượng ứng dụng tăng lên gấp đôi thành 200.000, trên 2.5

tỉ lượt download

Ngày 7/6/2010: Apple giới thiệu Iphone 4

Hình ảnh 2: Iphone 4 là một cuộc cách mạng mới trong giới công nghệ

Ngày 15/6/2010: Khách hàng có thể đặt mua Iphone 4

Ngày 24/6/2010: Iphone 4 có mặt tại các nước Mỹ, Anh, Pháp, Đức và Nhật

Trang 13

Hình ảnh 3: Biểu đồ thời gian phát triển của Iphone.

Hình ảnh 4: Lượng Iphone được bán ra trong 4 năm qua.

1.1.2 Hệ điều hành IOS

IOS là hệ điều hành trên các thiết bị di động của Apple Ban đầu hệ điều hành này chỉ được phát triển để chạy trên Iphone, nhưng sau đó nó đã được mở rộng để chạy trên các thiết bị của Apple như iPod touch,iPad và Apple TV Ngày

31 tháng 5 năm 2011, App Store của Apple chứa khoảng 500 000 ứng dụng IOS,

và được tải về tổng cộng khoảng 15 tỷ lần.Trong quý 4 năm 2010, có khoảng 26% điện thoại thông minh chạy hệ điều hành IOS, sau hệ điều hành Android của Google và Symbia của Nokia

Giao diện người dùng của IOS dựa trên cơ sở thao tác bằng tay Người dùng

có thể tương tác với hệ điều hành này thông qua rất nhiều động tác bằng tay trên màn hình cảm ứng của các thiết bị của Apple

Trang 14

Hệ điều hành này được tiết lộ tại Hội nghị và Triển lãm Macworld diễn ra vào tháng 1 năm 2007 và được phát hành vào tháng 9 năm đó Khi đó, hệ điều hành này chưa có một cái tên riêng nên chỉ đơn giản là "Iphone chạy OS X" Ban đầu, ứng dụng bên thứ ba không được hỗ trợ Steve Job đã chỉ ra rằng những nhà phát triển có thể xây dựng các ứng dụng web mà "sẽ cư xử như những ứng dụng ban đầu trên Iphone" Vào ngày 17 tháng 10 năm 2007, Apple thông báo một bộ phát triển phần mềm đang được xây dựng và họ dự định sẽ đưa nó đến "tay của các nhà phát triển vào tháng 2" Ngày 6 tháng 3 năm 2008, Apple đã phát hành bản dùng thử đầu tiên, cùng với một cái tên mới cho hệ điều hành, đó là "Iphone OS".

Tháng 6 năm 2010, Apple đổi cái tên Iphone OS thành IOS.Nhãn hiệu

"IOS" đã được Cisco dùng để đặt tên cho hệ điều hành của mình.Để tránh các vụ kiện cáo, Apple đã xin giấy phép sử dụng nhãn hiệu IOS từ Cisco.http://vi.wikipedia.org/wiki/IOS_(Apple) - cite_note-ciscosuit-7

Hình ảnh 5: Lịch sử IOS và các thiết bị được hỗ trợ bởi IOS

1.2 Môi trường phát triển ứng dụng

Trang 15

1.2.1 Cấu trúc của hệ điều hành iOS

Apple không cho phép người dùng tiếp cận trực tiếp với bất kì phần cứng nào của Iphone, mọi tương tác phần cứng phải thông qua một số lớp khác nhau của phần mềm, hoạt động như một trung gian giữa các ứng dụng và thiết bị phần cứng.Những lớp này được hiểu như là một hệ điều hành, cụ thể ở đây là hệ điều hành IOS

Mỗi lớp của hệ điều hành cung cấp một mức độ ngày càng cao của sự trừu tượng hóa với sự phức tạp của cách làm việc với phần cứng

Hình ảnh 6: Phân lớp trong hệ điều hành iOS.

Trang 16

1.2.2 Lớp Core OS( lớp nhân trong)

Là lớp dưới cùng của iOS, nó là nền tảng của hệ điều hành.Nó đảm nhiệm các nhiệm vụ như quản lý bộ nhớ, file hệ thống, liên kết mạng và một số chức năng khác, nó tác động trực tiếp tới phần cứng Lớp Core OS bao gồm một số thành phần như sau:

- CFNetwork Framework: Cung cấp một giao diện dựa trên C tới các lớp giao thức mạng TCP/IP và truy cập mức thấp tới các socket BSD Nó cho phép

mã ứng dụng được viết và làm việc với các dịch vụ HTTP, FTP và DNS, khởi tạo bảo mật và mã hóa các kết nối sử dụng Secure Sockets Layer (SSL) hoặc Transport Layer Security(TLS)

- External Accessory framework: Cung cấp khả năng kết nối với những phụ kiện kết nối vật lý mở rộng tới Iphone thông qua 30-pin dock connector hoặc qua Blutooth

- Security Framework: Cung cấp các giao diện bảo mật khi chúng ta kết nối tới mạng mở rộng bên ngoài như chứng thực, khóa công khai và khóa private, mã hóa, và xác thực sử dụng hàm băm (HMAC)

- System (LibSystem): iOS được xây dựng dựa trên nền tảng UNIX, vì thế những thành phần hệ thống của Core OS cung cấp nhiều chức năng giống với hệ điều hành UNIX Nó bào gồm nhân hệ điều hành (Mach Kernel) và các Driver của các thiết bị Nhân là nền tảng của toàn bộ iOS được xây dựng và cung cấp giao diện mức thấp cho các phần cứng lớp nằm dưới Nhân chịu trách nhiệm cấp phát bộ nhớ, quản lý chu kỳ sống của tiến trình, đầu vào/đầu ra, liên lạc đa tiến trình, quản lý luồng, kết nối mạng mức thấp quản lý luồng và truy cập hệ thống

Trang 17

1.2.3 LớpCore Services (lớp nhân dịch vụ)

Lớp Core Services cung cấp các dịch vụ dựa trên nền tảng của lớp Core OS

Nó cung cấp những truy cập cơ bản tới các dịch vụ của iOS và nó bao gồm các thành phần sau:

- AddressBook Framework: Cung cấp truy cập có thứ tự tới cơ sở dữ liệu

về danh bạ của Iphone, cho phép các ứng dụng có thể lưu trữ và sửa đổi các mục của danh bạ

- Core Data Framework: Được cung cấp để dễ dàng tạo ra các mô hình dữ liệu và lưu trữ trong các ứng dụng dựa trên Model-View-Controller(MVC) Sử dụng Framework này giảm được số lượng mã cần phải viết để thực hiện những công việc thông thường khi làm việc với cấu trúc dữ liệu trong ứng dụng

- Core Foundation Framework: Cung cấp các thứ như kiểu dữ liệu, thao tác trên chuỗi, quản lý khối dữ liệu có thứ tự, thao tác URL, các luồng và chạy các vòng lặp, thời gian, thao tác XML cơ bản, các cổng và các kết nối socket

- Foundation Framework: Là một Framework chuẩn của Objective-C Nó chứa những bao gói Objective-C xung quanh Core Foundation Framework

- Core Location Framework: Cho phép bạn lấy được thông tin về vị trí hiện thời của thiết bị và có khả năng định hướng Phương thức dùng bởi thiết bị để cung cấp tọa độ sẽ phụ thuộc trên dữ liệu có sẵn tại thời gian thông tin được yêu cầu và phần cứng hỗ trợ được cung cung cấp bởi model Iphone cụ thể mà ứng dụng chạy trên nó Nó sẽ dựa trên việc phân tích GPS, dữ liệu mạng Wifi hoặc phép đo tam giác cột thu phát sóng

- Store Kit Framework: Mục đích của phần này là tạo sự dễ dàng trong việc trao đổi thương mại giữa ứng dụng của bạn và Apple AppStore

- SQLite library: Cho phép lưu trữ cơ sở dữ liệu nhỏ, SQL dựa trên cơ sở

dữ liệu để tạo và thao tác với những cơ sở dữ liệu bên trong ứng dụng

1.2.4 LớpMedia Services (lớp liên kết)

Trang 18

Lớp Media Services của iOS cung cấp các khả năng về audio, video, animation và graphics Như các lớp khác trong ngăn xếp của iOS, lớp Media bao gồm một số các Framework cái mà có thể được sử dụng trong những ứng dụng Iphone:

- Core Graphics Framework: Cung cấp một máy dựng hai chiều nhẹ Những tính năng của Framework này bao gồm việc tạo và trình diễn những file PDF, bản vẽ dựa trên Vector, các lớp trong suốt, đường dẫn dựa trên bản vẽ, thao tác

và quản lý màu sắc

- Quartz Core Framework: Mục đích của Framework này là cung cấp khả năng hoạt hình cho Iphone Nó cung cấp nền tảng cho các hiệu ứng trực quan và hoạt hình được sử dụng bởi Framework UIKit và cung cấp một giao diện lập trình dựa trên Objective-C để tạo hoạt hình đặc biệt bên trong ứng dụng Iphone

- OpenGL ES Framework: OpenGL for Embedded System(ES) là một phiên bản nhỏ của OpenGL đầy đủ được thiết kế đặc biệt để dành cho các thiết bị nhỏ như Iphone

- Iphone Audio Support: cho phép iOS có khả năng hỗ trợ các định dạng như AAC, Apple Lossless(ALAC), A-law,IMA/ADPCM, Linear PCM, DVI/Intel IMA…

- AV Foundation Framework: Là một Framework được thiết kế cho phép phát lại, ghi âm và quản lý nội dung của âm thanh

- Core Audio Frameworks (CoreAudio.framework, Audio

Toolbox.framework và AudioUnit.framework): Cung cấp khả năng truy cập tới các thiết bị được tích hợp trong các đơn vị xử lý âm thanh

- Open Audio Library (OpenAL): OpenAL là một công nghệ nền tảng lai tạo được sử dụng để cung cấp hiệu ứng âm thanh 3D chất lượng cao

- Media Player Framework: Framework này có thể chạy các video trong các định dạng mov, mp4, m4v, 3gp tại một loạt các tiêu chuẩn nén, các độ phân giải và các tốc độ khung hình

Trang 19

1.2.5 Lớp Cocoa Touch (lớp tiếp xúc)

Lớp này nằm ở trên cùng trong ngăn xếp của iOS và chứa những Framework cái mà được sử dụng thường xuyên bởi các lập trình viên Iphone Cocoa Touch dựa trên nền tảng chuẩn của Cocoa API của MAC OS X và có phần mở rộng và sửa đổi để phù hợp với Iphone Lớp Cocoa Touch cung cấp các Framework cho việc phát triển ứng dụng Iphone như sau:

- UIKit Framework: Đây là một Framework khổng lồ và một giao diện lập trình dựa trên Objective-C giàu tính năng Bạn sẽ phải tốn nhiều thiều thời gian làm việc để tìm hiểu về nó Hầu hết các cuốn sách đều viết riêng về UIKit Framework Một số thành phần chính của UIKit là:

+Quản lý và tạo giao diện người dùng ( text fields, buttons, labels, colors, fonts…)

+Quản lý chu kỳ sống của ứng dụng

+Điều khiển sự kiện ứng dụng (như chạm vào màn hình ứng dụng)

+Các chức năng Cut, Copy, Paste

+Quản lý và trình diễn nội dung Web và văn bản

+Điều khiển dữ liệu

Trang 20

- Push Notification Services: Cho phép những ứng dụng cảnh báo người dùng về một sự kiện thậm chí khi ứng dụng hiện tại không được chạy trên thiết

bị Nó rất phổ biến được sử dụng bởi các ứng dụng dựa trên tin tức Thông thường khi có tin tức mới th́ dịch vụ sẽ tạo ra một tin nhắn trên thiết bị với tiêu

để của tin tức và cung cấp cho người dùng tùy chọn để tải các ứng dụng tin tương ứng để đọc thêm chi tiết Tính năng này lên được sử dụng tiết kiệm để tránh gây phiền hà cho người sử dụng vì thường xuyên gián đoạn

- Message UI Framework: Cung cấp mọi thứ mà bạn cần để cho phép người

sử dụng gửi email từ trong ứng dụng của bạn Trên thực tế nó còn cung cấp các thành phần giao diện thông qua đó người dùng có thể nhập các thông tin địa chỉ email và nội dung tin nhắn Ngoài ra thông tin này có thể được xác định trước bên trong ứng dụng của bạn và sau đó được hiển thị cho người sử dụng để chỉnh sửa và phê duyệt trước khi gửi

- Address Book UI Framework: Đưa ra chức năng chính cho Iphone như là một thiết bị thông tin liên lạc và trợ giúp kỹ thuật số Toàn bộ Framework là giành riêng cho việc tích hợp các dữ liệu sổ địa chỉ vào trong ứng dụng riêng của bạn Cho phép bạn bạn truy cập vào, hiển thị, chỉnh sửa và nhập thông tin liên lạc

từ sổ địa chỉ của Iphone từ bên trong ứng dụng riêng của bạn

Game Kit Framework: Cung cấp kết nối ngang hàng (peer-to-peer) và kết nối giọng nói giữa nhiều thiết bị và cho phép nhiều người sử dụng chạy cùng một ứng dụng để tương tác

CHƯƠNG 2 : NGÔN NGỮ LẬP TRÌNH OBJECTIVE C VÀ BỘ

CÔNG CỤ HỖ TRỢ XCODE

Objective-C là ngôn ngữ lập trình hướng đối tượng.Nó thêm cách gửi thông báo của ngôn ngữ Smalltalk vào ngôn ngữ C Ngày nay Objective-C được dùng như ngôn ngữ chính thức cho hệ điều hành Mac OS và iOS

Trang 21

2.1 Lịch sử ngôn ngữ Objective-C

Objective-C đã được tạo ra chủ yếu bởi Brad Cox và Tom Love đầu những năm 1980 tại Stepstone công ty nơi hai ông làm việc.Cả hai đã được giới thiệu về Smalltalk trong trung tâm công nghệ lập trình của Tổng công ty ITT năm 1981.Cox bị hấp dẫn bởi các vấn đề về sử dụng lại đúng trong thiết kế phần mềm và lập trình.Ông nhận ra rằng một ngôn ngữ như Smalltalk sẽ là vô giá trong xây dựng môi trường phát triển cho các nhà phát triển hệ thống.Cox đã bắt đầu bằng cách thay đổi các trình biên dịch C để thêm một số tính năng của Smalltalk Ông đã nhanh chóng bổ sung một mở rộng hướng đối tượng cho ngôn ngữ C

Tom Love đã được thuê bởi Schlumberger nghiên cứu vào năm 1982 và

đã có cơ hội có được phiên bản thương mại đầu tiên của Smalltalk-80, điều này thêm ảnh hưởng tới sự phát triển của đứa con tinh thần của họ

Cuối cùng Tom Love và Brad Cox hình thành một liên doanh mới (PPI),

để thương mại hóa sản phẩm của họ, mà cùng một trình biên dịch Objective-C với các lớp thư viện Năm 1986, Cox công bố bản mô tả chính của Objective-C ở dạng ban đầu của nó trong cuốn sách lập trình hướng đối tượng, một phương pháp tiến hóa.Mặc dù ông đã cẩn thận chỉ ra rằng có nhiều thứ quan trọng cho vấn đề tái sử dụng hơn so với ngôn ngữ lập trình

Sau khi Steve Jobs bị buộc ra khỏi Apple, ông bắt đầu tại công ty mới NeXT Năm 1988, NeXT được cấp phép Objective-C từ StepStone và phát hành trình biên dịch của Objective-C và thư viện của mình, theo đó người dùng sử dụng giao diện và xây dựng dựa trên nền tảng NeXTSTEP Trong khi các máy trạm NeXT không tác động lớn trên thị trường thì các công cụ đã được ca ngợi rộng rãi trong công nghiệp phần mềm.NeXT đã giảm sản xuất phần cứng và tập trung vào các công cụ phần mềm, bán NeXTSTEP (và OpenStep) như là một nền tảng cho các khách hàng lập trình

Sau khi mua lại NeXT vào năm 1996, Apple Computer sử dụng OpenStep trong hệ điều hành mới của mình, Mac OS X Điều này bao gồm Objective-C và

Trang 22

Objecive của NeXT-phát triển công cụ dựa trên C, Dự án Builder (sau này được thay thế bằng Xcode), cũng như công cụ thiết kế giao diện của nó Interface Builder Phần lớn Api Cocoa của Apple ngày nay có nền tảng là giao diện hướng đối tượng OpenStep, và là môi trường Objective-C có ý nghĩa nhất đang được sử dụng để phát triển.

Objective-C đơn giản và nhỏ gọn nhưng lại là một thành phần mở rộng rất mạnh của ngôn ngữ chuẩn ANSI C Objective-C cung cấp đầy đủ các khả năng lập trình hướng đối tượng nhưng lại được thực thi theo cách khá đơn giản và dễ dàng

Hầu hết các ngôn ngữ lập trình hướng đối tượng cung cấp:

Một thư viện các Objects

Các công cụ phát triển cần thiết

Hỗ trợ hướng đối tượng và các thư viện liên quan

Objective-C cũng cung cấp đầy đủ các thành phần trên.Bạn có thể sử dụng Objective-C để phát triển một phần mềm hoàn thiện.Apple đã chọn Objective-C làm ngôn ngữ lập trình chính cho hệ thống máy Mac và Iphone

Là ngôn ngữ hướng đối tượng nên Objective-C giải quyết các vấn đề lập trình dựa trên khái niệm các Object Nó bao gồm 3 phần:

-Interface:Interface của một lớp(class) thông thường được định nghĩa trong

file header với đuôi h Nó chính là phần khai báo của một lớp

Trang 23

- Implementation:Mã nguồn của chương trình được viết trong phần

implementation của một lớp và được định nghĩa trong một file có đuôi m Đây là

nó phần định nghĩa của lớp

- Instantiation:Sau khi khai báo và định nghĩa một lớp, chúng ta có thể thực

thể hóa lớp này bằng việc cấp phát bộ nhớ cho new object của lớp đó

Tóm lại Objective-C là:

- Thành phần mở rộng của ngôn ngữ lập trình C

- Là ngôn ngữ lập trình hướng đối tượng đơn giản nhưng mạnh mẽ

- Là ngôn ngữ được Apple sử dụng để phát triển các ứng dụng cho hệ thống máy Mac và Iphone

Tại sao lại sử dụng Objective-C

Ngôn ngữ lập trình Objective-C được chọn cho Cocoa framework vì một số

- Với ngôn ngữ này, người dùng có thể lựa chọn cả lập trình hướng đối tượng và lập trình thủ tục khi cần thiết

- Nó đơn giản và dễ học bởi cú pháp của nó khá ngắn gọn nên nó giúp cho lập trình viên đạt được hiệu quả mong muốn mà không gặp nhiều khó khăn

- Nó rất năng động nếu so sánh với các ngôn ngữ mở rộng khác dựa trên C Trình biên dịch đóng một vai trò rất quan trọng trong việc bảo vệ thông tin liên quan đến các đối tượng để sử dụng lúc run time

- Nó là một ngôn ngữ mạnh bởi vì các quyết định có thể được đưa ra lúc biên dịch sẽ được trì hoãn cho tới khi chương trình chạy

Trang 24

-Sự năng động của Objective-C có hai lợi thế đáng kể:

+ Nó hỗ trợ ràng buộc động và mở tạo ra một cấu trúc đơn giản đối với giao diện tương tác người dùng

+ Nó cho phép phát triển các công cụ phát triển phức tạp Một giao diện cho hệ thống run time tạo điều kiện cho việc tiếp cận các thông tin lúc run time giúp cho việc monitor ứng dụng viết bằng Objective-C

2.3 Các yếu tố căn bản của Objective-C

2.3.1 Phương thức

- Cách khai báo phương thức trong Objective - C

Không tham số :<(kiểu trả về)>

Có tham số: <(kiểu trả về)> :<(kiểu)> :<(kiểu)> ;

- Lời gọi phương thức:

Không trả về: [<đối tượng> ];

[<đối tượng> :<(kiểu)> ];

[<đối tượng> :<(kiểu)> :<(kiểu)> ];

Trả về kết quả: = [<đối tượng> ];

= [<đối tượng> :<(kiểu)> :<(kiểu)> ];

2.3.2 Lớp và đối tượng

Objective-C sử dụng khái niệm Interface và Implementation để phân biêt file Header và file Source của C (*.h và *.c) một lớp trong Objective-C định nghĩa là trên một giao diện (.h) còn phần thực thi trên file m các bạn chú ý là m

vì nó khác với C và C++

Trang 25

(void) setNumerator: (int) n;

(void) setDenominator: (int) d;

Trang 26

- Sử dụng #import để thay thế cho #include (đây là cơ chế thông minh hơn

#include của C/C++, chỉ phải thêm 1 lần )

Objective-C chỉ cho phép đơn kế thừa Mặc định tất cả các lớp sẽ kế thừa từ NSObject

Trang 27

2.3.3 Exception và handler (xử lý ngoại lệ)

Ngôn ngữ cũng hỗ chợ các cấu trúc try - catch - throw - finally giống như ngôn C++ @try - @catch - @throw - @finally cách thức sử dụng cũng hoàn toàn tương tự

2.3.4 Categories (quản lý danh mục)

Là đặc điểm nếu bạn muốn mở rộng lớp bằng cách thêm mới vào lớp một phương thức Khi bạn làm việc quen với OOP (Object Oriented Programming) thì bạn sẽ thấy đây là một trong những thuộc tính vô cùng hữu ích của Objective

C, kể cả ngay khi bạn không có mã nguồn của lớp nhưng bạn vẫn hoàn toàn có thể thêm phương thức cho lớp như thường thông qua thuộc tính này Đặc điểm này làm giảm đi đáng kể sự kế thừa phức tạp trong C++ khi việc kế thừa chỉ để phục vụ cho việc thêm mới một phương thức Mặt khăc việc chia mã nguồn trên nhiều files cũng giúp ích đáng kể trong việc phát triển

chú ý với Categories:

+Tên của category phải là duy nhất

+Có thể thêm bao nhiêu lần mở rộng lơp từ category là không giới hạn nhưng với tên là duy nhất

+Thông thể bổ xung biến thành phần bằng category

+Có thể sử dụng category để tạo ra các phương thức private Nếu cần

2.3.5 Properties (thuộc tính)

Thuộc tính gần như bất cứ một ngôn ngữ mới hiện đại nào cũng hỗ chợ khái niệm này, đây là một khái niệm bảo toàn tính đóng gói của tư tưởng OOP.Đối vơi ngôn ngữ Objective-C có mốt số những hỗ chợ đặc biệt hơn một chút bạn khai báo sử dụng bằng @properties cũng giống như những ngôn ngữ khác khi bạn sử dụng thuộc tính với Objective-C bạn sẽ có 2 lựa chọn là

@synthesize và @dynamic, với lựa chọn là @synthesize thì mặc nhiên trình biên

Trang 28

dịch sẽ giúp bạn sinh ra các phương thức set và get trên thuộc tính nhưng nếu bạn lựa chọn là @dynamic thì mọi việc bạn phải tự làm lấy.

2.3.6 Kiểu id

ID trong Objective-C gần tương tự như void* trong C, không cần phải biết

rõ kiểu của object khi bạn gọi phương thức trong Objective-C điều này hoàn toàn khác với C++ bơi đơn giản khi gọi phương thức cũng giống như bạn truyền thông điệp trong Objective-C Nếu đối tượngcó phương thức thì sẽ đáp lại thông điệp truyền (gọi phương thức) và phương thức được gọi

2.3.7 Ép kiểu động

những phương thức dưới đây dùng để kiểm tra kiểu

- (BOOL) isKindOfClass: classObj >> đối tượng là hậu duệ hoặc thể hiện của classObj

- (BOOL) isMemberOfClass: classObj >> là một thành phần của objClass

- (BOOL) respondsToSelector: selector >> đối tượng có phương thức bởi selector

+ (BOOL) instancesRespondToSelector: selector >> đối tượng được tạo bởi lớp có đáp ứng selector

- (id) performSelector: selector >> triệu gọi chính sách selector trên đối tượng

2.3.8 Constructors ( hàm khởi tạo )

Vấn đề là với một lớp thì hàm khởi tạo dùng để sinh đối tượng và cũng là chỗ để tư duy về hàm hủy và cách thức lưu trong bộ nhớ của đối tượng.Về vấn đề hủy đối tượng ta sẽ có một phần riêng và nó hoàn toàn khác biệt với việc viết hàm hủy trong C++ và các ngôn ngữ khác

Cú pháp:

Trang 29

-(Fraction*) initWithNumerator: (int) n denominator: (int) d {

self = [super init];

- Mặc định trong Objective-C hàm khỏi tạo là - (id) init;

- Trong Objective-C hàm khởi tạo chỉ có ý nghĩa về mặt tư duy, nó không được đối sử đặc biết giống như C++

Trang 30

2.3.9 Đa hình

Trong Objective-C không có từ khóa virtual và thực sự là không cần thiết

vì nó sẽ không tạo ra những thứ quá phức tạp giống như C++ vì việc phủ quyết hàm trong Objective-C là phủ quyết trắng chợn không liên quan gì tới sự kế thừa.nếu 2 hàm giống hệt nhau ở 2 lớp quan hệ cha con thì cũng chẳng sao cả cũng cần nói thêm là Objective-C là đơn kế thừa

Quá trình tạo mối liên hệ giữa thể hiện của Objective-C và phương thức sẽ được gọi là thời điểm run-time.Điểu này hoàn toàn có ý nghĩa nếu bạn gọi một phương thức mà bản thân đối tượng không có cũng không có lỗi gì.Lỗi chỉ xảy ra khi lời gọi đó được thực hiện Tuy nhiên ban cũng được cung cấp những cơ chế

để kiểm soát việc này đây cũng là một đặc tính Run-Time của Objective-C nếu bạn quan tâm có thể tìm kiếm thông tin từ việc chuyển tiếp thông điệp (forward) tới một đối tượng khác

Trang 31

Mặt khác tiện ích khác từ kiểu dữ liệu nil đã nói ở trên đó việc giải phóng

bộ nhớ.Trong ngữ cảnh một đối tượng là bao gồm nhiều những đối tượng khác.những đối tượng khác đó có thể đã được giải phóng hoặc chưa, như thế bạn

sẽ thực hiện lời gọi dealloc trên tập đối tượng mà bạn có, nếu con thì nó sẽ thực hiện giải phóng trong trường hợp bằng nil được vì nil cũng có thể truyền thông điệp

Mặt khác Objective-C cũng cung cấp một cớ chế thông minh trong việc gọi và sử dụng đối tượng mà không phải quan tâm đến việc cấp phát và giải phóng bộ nhớ đó là cơ chế NSAutoreleasePool Để dùng được cơ chế này bạn chỉ việc nhớ kẹp đoạn code mà bạn muốn kiểm soát vào trong giữa NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init] và [pool release]

Trang 32

Để tải Iphone SDK, bạn có thể truy cập Apple Developer Connection tại website http://developer.apple.com/Iphone.

+Cài đặt Iphone SDK

Sau khi tải xong click đúp vào file dmg để thực hiện cài đặt SDK

- Chạy file dmg để bắt đầu quá trình cài đặt

- Chờ cho đến khi quá trình cài đặt hoàn tất

Hình ảnh 7: Quá trình cài đặt thành công

2.4.2 Các thành phần của Iphone SDK

Trang 33

Iphone SDK bao gồm nhiều công cụ phát triển để giúp tạo các ứng dụng cho Iphone, iPod Touch và iPad Nó gồm những thành phần sau:

- Xcode: Môi trường phát triển được tích hợp (IDE), nó cho phép quản lý, sửa đổi và debug các Project

- Dashcode: Môi trường phát triển được tích hợp, nó cho phép phát triển các ứng dụng Iphone, iPad dựa trên nền Web và các Widgets Dashboard

- Iphone Simulator: Cung cấp một phần mềm mô phỏng để mô phỏng một Iphone hoặc iPad trên máy Mac

- Interface Builder: Một công cụ biên tập trực quan để thiết kế một giao diện cho ứng dụng Iphone và iPad

- Instruments: Công cụ phân tích để giúp tối ưu hóa ứng dụng và quản lý bộ nhớ trong thời gian thực

2.4.3 Xcode

Hình ảnh 8: Giao diện khi vào Xcode

Để tạo một project mới, đầu tiên phải khởi động Xcode bằng cách click đúp

và biểu tượng Xcode.Sau đó chọn File -> New project.Xcode cung cấp một số

Trang 34

khung mẫu cho việc thực hiện các kiến trúc MVC trong ứng dụng Các mẫu sau đây được sử dụng phổ biến nhất:

Hình ảnh 9: Các mẫu ứng dụng trong Xcode

- Navigation-based application

Navigation-based là lý tưởng cho các ứng dụng mà đi qua nhiều View và yêu cầu một phương tiện để điều hướng giữa chúng Nếu bạn có thể hình dung ứng dụng của bạn có những màn hình với nút "Back" trong đó, rất có thể là bạn nên sử dụng mẫu này Một bộ điều khiển chuyển hướng xử lý tất cả các công

Trang 35

việc nội bộ trong việc thiết lập nút điều hướng và chuyển đổi giữa các "stack" của các View.Mẫu này cung cấp một điều khiển chuyển hướng cơ bản và một (tầng cơ sở) bộ điều khiển View gốc để hiển thị thông tin.

- Utility application

Lý tưởng cho các loại ứng dụng widget một ứng dụng có một View chính

mà bạn có thể "lật" xung quanh như một widget trong Leopard Các ứng dụng thời tiết và chứng khoán của Iphone là những ví dụ tốt của ứng dụng tiện ích Mẫu này cũng bao gồm một nút thông tin nhằm làm cho View lật xung quanh để hiển thị mặt lật của ứng dụng, cái mà thường được sử dụng để thay đổi cài đặt hoặc thông tin hiển thị

- OpenGL ES application

Nếu bạn đang tạo ra các trò chơi hoặc đồ họa 3D, nên sử dụng mẫu này.Nó tạo ra một View được cấu hình để biểu diễn một cảnh GL và cung cấp một bộ đếm thời gian mẫu để làm cử động nó

- Tab Bar application

Cung cấp một bộ điều khiển đặc biệt hiển thị một thanh nút dọc theo phía dưới của màn hình Mẫu này là lý tưởng cho các ứng dụng của iPod hoặc các ứng dụng điện thoại di động, nơi mà một hàng của các tab dọc theo phía dưới cung cấp một loạt các phím tắt tới chức năng cốt lõi của ứng dụng

- Window-based application

Nếu không có mẫu nào trong số năm mẫu trên phù hợp với nhu cầu của bạn, đây là mẫu rất cơ bảncung cấp một ứng dụng đơn giản với một cửa sổ.Đây

là Framework tối thiểu bạn sẽ cần để bắt đầu ứng dụng của riêng bạn

2.4.5 Tổng quan về Xcode Project

Trong một Xcode project bao gồm nhiều thành phần khác nhau,dưới đây là giới thiệu về các phần đó:

Trang 36

Hình ảnh 10: Các thành phần trong một Project

- Classes

Các tập tin có chứa các lớp Objective-C mà các ứng dụng của bạn sử dụng Chúng bao gồm đối tượng ủy quyền ứng dụng, Bộ điều khiển View, và các đối tượng khác mà bạn tạo Khi bạn thêm các tập tin lớp mới cho ứng dụng của bạn, chúng sẽ xuất hiện trong nhóm này

- Other Source

Các nguồn khác được biên dịch vào ứng dụng của bạn.Theo mặc định, phần này bao gồm các tiêu đề được biên dịch trước và hàm Main của ứng dụng của bạn, nó thể hiện đối tượng ứng dụng Cocoa Nếu ứng dụng của bạn kết hợp bổ sung các Hàm C hoặc các lớp C + + thì sẽ thêm vào ở đây

Trang 37

- Framework:

Các framework mà chương trình của bạn liên kết tới Các thư viện chia sẻ này được liên kết lúc xây dựng chương trình để thêm chức năng Ví dụ, một trò chơi 3D sẽ liên kết với các Framework OpenGLES, trong đó có các thủ tục để dựng đồ họa 3D Nhiều ứng dụng âm thanh có thể sẽ tận dụng lợi thế của hộp công cụ Audio hoặc Framework AVFoundation, có chứa các thủ tục chạy và trộn các loại âm thanh khác nhau

- Product :

Chứa ứng dụng của bạn sau khi hoàn thành Đây là nơi lưu trữ cuối cùng sản phẩm của bạn trước khi nó được đem ra chạy trên máy thật, hoặc được đưa lên AppleStore

2.4.6 Thêm các Framework vào project

Những lớp và phương thức cần thiết để cung cấp cho ứng dụng của bạn được nhóm vào trong một Framework.Ví dụ, Framework Core Location cung cấp mọi chức năng cần thiết để thực hiện định vị toàn cầu, hoặc UIKit Famework cung cấp mọi chức năng cân thiết để thực thi giao diện người dùng Bạn cần liên kết tới những Framework để sử dụng chức năng mà chúng cung cấp.Chúng được đặt trong các phần khác nhau của iOS và cho phép ứng dụng của bạn chỉ liên kết tới những thành phần cần thiết

- Để thêm một Framework vào ứng dụng thì hãy làm theo những bước sau:

- Click phải chuột vào thư mục Framework trong Xcode Project

- Chọn Add, sau đó chọn Existing Framework

- Chọn đúng thư mục Framework cần thiết sau đó click nút Add

- Sau đó bạn sẽ nhìn thấy framework mới xuất hiện trong thư mục Framework của bạn và điều này sẽ liên kết framework với ứng dụng của bạn

Trang 38

Hình ảnh 11: Thêm Framework vào project

2.4.7 Iphone Simulator

Iphone Simulator là một nền tảng mục tiêu mà bạn có thể sử dụng triển khai

và thử nghiệm các ứng dụng Iphone trên máy tính để bàn Mô phỏng này cung cấp một môi trường giống như Iphone với các tùy chọn trình đơn để mô phỏng các khóa, quay màn hình, và các sự kiện Iphone cơ bản khác Tuy nhiên, nó còn rất nhiều hạn chế, bởi vì máy tính của bạn thiếu các phần cứng cần thiết để thực hiện một số nhiệm vụ nhất định Sử dụng giả lập,bạn sẽ có được một "cảm nhận" thông thường cho các ứng dụng của bạn xem chúng có thể hoạt động như thế nào, nhưng bạn cũng sẽ bị mất một số chức năng quan trọng:

- Core Location API sẽ không thể cung cấp tọa độ GPS của bạn, nhưng có thể cung cấp cho bạn dữ liệu mẫu hoặc các thông tin dựa trên vị trí rộng, như là

có sẵn cho mạng của bạn

- API gia tốc sẽ không có sẵn cho các ứng dụng

- Mô phỏng được giới hạn chỉ có một số cử chỉ, và sẽ không hỗ trợ hơn hai ngón tay hoặc cảm ứng đa chạm

- Các ứng dụng không thể khởi tạo các cuộc gọi điện thoại

Trang 39

- Các mạng EDGE/3G sẽ không thể được truy cập, nhưng truy vấn mạng sẽ

sử dụng kết nối Internet của bạn

- Máy ảnh và các microphone API có thể không hoạt động Nếu ứng dụng của bạn cho phép các tính năng này

- Chỉ có một số ứng dụng Iphone được cài đặt sẵn Chúng bao gồm các ứng dụng Contacts, Safari, Photos, và Setting

- Bạn sẽ không thể xem bất kỳ bộ phận nào của ứng dụng của bạn có thể chiếm tài nguyên CPU hoặc bộ nhớ của Iphone, bởi vì máy tính để bàn của bạn

sẽ có tài nguyên lớn hơn dành để chạy ứng dụng của bạn Đồ họa chậm hoặc các vấn đề khác có thể không được chú ý cho đến khi nó được thử nghiệm trên một chiếc Iphone thực tế

Trang 40

2.4.8 Interface Builder

Hình ảnh 12: Interface Builder

Interface Builder là một công cụ trực quan cho phép bạn thiết kế giao diện người dùng cho những ứng dụng Iphone/iPad của bạn Sử dụng Interface Builder bạn có thể kéo thả các View trên cửa sổ và sau đó kết nối nhiều View khác nhau với các outlet và các action vì thế bạn có thể lập trình tương tác với mã của bạn

2.4.9 Instrument

Ứng dụng Instrument cho phép bạn kiểm tra tự động mô tả hiệu năng của các ứng dụng của bạn

Ngày đăng: 23/04/2017, 10:13

HÌNH ẢNH LIÊN QUAN

Hình ảnh 2: Iphone 4 là một cuộc cách mạng mới trong giới công nghệ - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 2: Iphone 4 là một cuộc cách mạng mới trong giới công nghệ (Trang 12)
Hình ảnh 7: Quá trình cài đặt thành công - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 7: Quá trình cài đặt thành công (Trang 32)
Hình ảnh 10: Các thành phần trong một Project - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 10: Các thành phần trong một Project (Trang 36)
Hình ảnh 11: Thêm Framework vào project - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 11: Thêm Framework vào project (Trang 38)
Hình ảnh 12: Interface Builder - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 12: Interface Builder (Trang 40)
Hình ảnh 13: Instrument - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 13: Instrument (Trang 41)
Hình ảnh 15: Khách sạn Intercontinental Hanoi Westlake - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 15: Khách sạn Intercontinental Hanoi Westlake (Trang 46)
Hình ảnh 19: Phiếu thanh toán - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 19: Phiếu thanh toán (Trang 49)
Hình ảnh 25: Biểu đồ cộng tác Use Case Infor. - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 25: Biểu đồ cộng tác Use Case Infor (Trang 59)
Hình ảnh 26: Biểu đồ trình tự Use Case Feedback. - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 26: Biểu đồ trình tự Use Case Feedback (Trang 61)
Hình ảnh 27: Biểu đồ cộng tác Use Case Feedback. - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 27: Biểu đồ cộng tác Use Case Feedback (Trang 62)
Hình ảnh 29: Biểu đồ cộng tác Use Case Booking. - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 29: Biểu đồ cộng tác Use Case Booking (Trang 67)
Hình ảnh 32: Biểu đồ trình tự Use Case Services. - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 32: Biểu đồ trình tự Use Case Services (Trang 71)
Hình ảnh 33: Biểu đồ cộng tác Use Case Services. - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 33: Biểu đồ cộng tác Use Case Services (Trang 72)
Hình ảnh 34: Biểu đồ trình tự Use Case Server. - Xây dựng chương trình đặt phòng cho khách sạn intercontinental hanoiwestlake trên điện thoại di động
nh ảnh 34: Biểu đồ trình tự Use Case Server (Trang 74)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w