Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 47 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
47
Dung lượng
18,52 MB
Nội dung
LỜI CẢM ƠN
Trên thực tế không có sự thành công nào mà không gắn liền với những sự hỗ trợ,
giúp đỡ dù ít hay nhiều, dù trực tiếp hay gián tiếp của người khác. Trong suốt thời gian
từ khi bắt đầu học tập ở giảng đường đại học đến nay, em đã nhận được rất nhiều sự
quan tâm, giúp đỡ của quý thầy cô, gia đình và bạn bè. Nhân cơ hội này, em muốn bày
tỏ lòng biết ơn sâu sắc cửa em tới họ.
Đầu tiên, em muốn cảm ơn người hướng dẫn của em trong trường đại học Điện
Lực, thầy Lê Hoàn, vì sự hướng dẫn tận tình và khoa học. Đó là một cơ hội lớn cho em
để được nghiên cứu dưới sự hướng dẫn của thầy. Cảm ơn rất nhiều tới thầy vì sự
hướng dẫn em cách đặt ra các câu hỏi nghiên cứu và tìm hiểu các vấn đề.
Em xin gửi lời cảm ơn chân thành đến các cán bộ, giảng viên trong khoa Công
nghệ thông tin – Trường Đại học Điện Lực đã cùng với tri thức và tâm huyết của mình
để truyền đạt vốn kiến thức quý báu cho chúng em trong suốt thời gian học tập tại
trường.
Em muốn cảm ơn những thành viên lớp D6-Tin – Trường Đại học Điện Lực.
Những người bạn luôn chia sẻ và cổ vũ em trong những lúc khó khăn và em luôn ghi
nhớ điều đó.
Cuối cùng, em xin bày tỏ lòng biết ơn vô hạn đối với cha mẹ và gia đình đã luôn
ủng hộ, giúp đỡ em.
Hà Nội, ngày 6 tháng 10 năm 2015
Sinh viên thực hiện
(ký và ghi họ tên)
MỤC LỤC
DANH MỤC CÁC BẢNG
DANH MỤC CÁC HÌNH
LIỆT KÊ CHỮ VIẾT TẮT
Từ viết tắt
Tên tiếng Anh
Tên tiếng Việt
A
Từ viết tắt nhớ xếp theo abc
B
Soạn xong từ viết tắt chỉ cần chọn
AZ để được săp xếp theo ABC
C
Ấn Tab để thêm hàng mới
LỜI MỞ ĐẦU
Theo cùng với sự phát triển của công nghệ, ngày nay, nhuwxg chiếc điện thoại di
động thông minh không còn xa lạ gì với chúng ta. Những chiếc điện thoại di động
thông minh đã trở thành người bạn hữu ích đối với mỗi chúng ta trong cuộc sống hằng
ngày.
Chính vì vậy, việc xây dựng một ứng dụng giúp ích cho mọi người về lĩnh vực ăn
uống, em đã chọn đề tài “Xây dựng ứng dụng tìm kiếm quán ăn” để làm đồ án thực
tập tốt nghiệp với mục đích có thể cung cấp ứng dụng hữu ích trong việc tìm kiếm
những quán ăn tùy theo ý muốn của mọi người.
Vì vậy, trong báo cáo của em sẽ có những nội dung chính sau:
•
•
•
•
Chương 1. Tìm hiểu về hệ điều hành di động
Chương 2. Ứng dụng tìm kiếm quán ăn
Chương 3. Phân tích thiết kế
Chương 4. Xây dựng chương trình
Do có những mặt hạn chế nhất định về mặt kiến thức cũng như kinh nghiệm thực
tế nên đồ án này không thể tránh được những thiếu sót, khuyết điểm. Em rất mong
được thầy cô và các bạn giúp đỡ để kiến thức bản thân cũng như đồ án được hoàn
thiện hơn.
Chương 1. TÌM HIỂU VỀ HỆ ĐIỀU HÀNH DI ĐỘNG
1.1 Tổng quan về hệ điều hành di động
1.1.1 Sự ra đời của chiếc điện thoại đầu tiên
Ngày 10 tháng 3 năm 1986 Alexander Greham Bell người phát minh và thực hiện
cuộc gọi đầu tiên trên thế giới. Ông cùng người trợ lý của mình đã thực hiện cuộc gọi
khoảng cách 4.5m và cuộc gọi đó cũng vô cùng ngắn ngủi chỉ nội dung “Watson, anh
đến đây nhé, tôi có việc cần”.
Vào thời điểm bấy giờ, nó thực sự là bước tiến công nghệ đột phá là kết quả một
sự nỗ lực nghiên cứu tìm tòi ra một phương thức liên lạc mới thay thế cho loại máy
điện báo thô sơ thường được sử dụng trước đó. Ý tưởng về chiếc điện thoại đã được
đem ra tranh luận từ năm 1844 nhưng phải hơn 30 năm sau, người ta mới biến được
giấc mơ đó trở thành hiện thực.
Điện thoại ra đời đã thay thế cho máy điện báo thô sơ phổ biến thời bấy giờ.
Những chiếc điện thoại đầu tiên chỉ để dành cho người giàu có sử dụng và hầu hết rất
kiểu cách và cầu kì với một đầu nói và một đầu nghe.
1.1.2 Sự ra đời của điện thoại di động
Chiếc điện thoại được coi là di động đầu tiên được quảng cáo vào năm 1967 với
tên gọi là Carry Phone. Vào thời điểm đó, để sử dụng được điện thoại di động thì
người ta phải mang theo một hộp nặng đến 4.5 kg cùng với giá thành cao nên nó gần
như không được phổ biến thời bấy giờ.
Cho đến ngày 3 tháng 4 năm 1973 thì điện thoại di động thực sự được ra đời bởi
Martin Cooper, một nhà phát minh tiên phong làm việc cho Motorola tại New York.
Martin Cooper đã thực hiện cuộc gọi đến một kỹ sư khác của hãng công nghệ đối thủ,
với mục đích để khoe về thành tích mà mình và Motorola vừa đạt được. Motorola đã
giành thế chiến thắng trong việc xây dựng thành công chiếc điện thoại di động đầu tiên
trên thế giới.
Trên thực tế, nhiều người, ngay cả các nhân viên làm việc tại Motorola cũng
không tin rằng điện thoại di động có thể trở thành một sản phẩm tiêu dùng phổ biến.
Tuy nhiên Cooper và các đồng sự trong nhóm phát triển của mình không như vậy và
ông đã đúng. 10 năm sau cuộc gọi lịch sử đầu tiên, chiếc điện thoại di động của
Motorola đã được xuất hiện trên thị trường với giá bán lẻ lên đến gần 4.000 USD.
7
1.1.3 Sự ra đời và phát triển của điện thoại thông minh
Ngày nay, sau gần nửa thế kỷ tồn tại và phát triển, điện thoại di động đã trở nên
phổ biến và xuất hiện ở khắp nơi trên thế giới. Theo thống kê của Liên Hợp Quốc, hiện
có khoảng 6 tỷ thuê bao di động trên toàn cầu và ngày càng nhiều người dùng chuyển
từ các điện thoại cơ bản sang điện thoại thông minh. Ước tính hiện có khoảng 1 tỷ điện
thoại thông minh được sử dụng trên toàn thế giới.
Điện thoại thông minh không như những điện thoại thông thường khác, nó có bộ
vi xử lý, ram, bộ lưu trữ, … và sử dụng một hệ điều hành. Nó vượt xa chức năng nghe
gọi, nhắn tin, giải trí trên điện thoại thông thường. Người dùng có thể kiểm tra e-mail,
xử lý phần mềm văn phòng, vào internet, giải trí mọi lúc mọi nơi, … điện thoại thông
minh ngày nay có thể thay thế cho máy tính cá nhân đáp ứng được mọi nhu cầu của
người sử dụng.
Điện thoại thông minh đầu tiên trên thế giới có tên gọi là Simon, do IBM sản
xuất, được ra mắt tại Hội nghị không dây vào năm 1993. Máy có màn hình cảm ứng
LCD với 2 màu trắng và đen , hoạt động như một thiết bị nhận gửi email, đọc văn bản
điện tử, lịch làm việc, máy tính và sổ danh bạ.
Máy được trang bị vi xử lý tốc độ 16MHZ, 1MB bộ nhớ RAM cùng 1MB ổ cứng
lưu trữ giống như những loại điện thoại thông minh ngày nay, Simon cũng được trang
bị một màn hình cảm ứng rộng 4.5 inch, hỗ trợ viết stylus. Tuy nhiên điểm khác biệt
đó là màn hình cảm ứng trên Simon chỉ hiển thị đơn sắc và hoạt động trên hệ điều
hành là một biến thể của hệ điều hành DOS có tên gọi là ROM-DOS.
Năm 1998, NOKIA 9110 Communicator đích thực là thiết bị làm nền móng cho
điện thoại thông minh với thiết kế bàn phím QWERTY gập cùng nhiều trò chơi mới
được cập nhật, do đó đã tạo thói quen giải trí trên chiếc điện thoại cá nhân cho người
dùng. Bên cajh đó, nó có bộ xử lý Intel 24MHz và trọng lượng chỉ 317 gram. Về sau
những năm 2000 Nokia chủ yếu phát triển các dòng điện thoại thông minh sử dụng hệ
điều hành Symbian.
Cuối thập niên 90 của thế kỷ trước, nhà sản xuất Canada, Research in Motion
(RIM) được biết tới là hãng giới thiệu các thiết bị nhắn tin hai chiều với hàng triệu
người dùng trên toàn thế giới. Nhưng tới năm 2002, RIM đã tiến vào thị trường di
động với BlackBerry 5810, chiếc di động tích hợp e-mail, khả năng lướt web. Sau đó,
hãng phát triển them BlackBerry 6210 vào đầu năm 2004.
8
Trong những năm 2000 thế giới cũng đón chào những chiếc máy tính bỏ túi
(Pocket PC) sử dụng hệ điều hành Windows CE của Microsoft. Năm 2003, Pocket PC
tích hợp them chức năng của điện thoại thông thường và trở thành những chiếc điện
thoại thông minh chạy hệ điều hành Windows.
Sự phát triển của điện thoại thông minh thời đó gần như chỉ dành cho Nokia với
những chiếc điện thoại thông minh chạy hệ điều hành Symbian. Đến năm 2007 hãng
Apple giới thiệu với thế giới chiếc điện thoại thông minh với tên gọi IPhone 2G sử
dụng hệ điểu hành IOS. Chiếc IPhone 2G được coi là diện mạo hoàn toàn mới cho
điện thoại thông minh. Thế giới coi IPhone 2G là điện thoại thông minh đúng nghĩa
đầu tiên.
Cuối năm 2007 đầu năm 2008 những hệ điều hành sử dụng cho điện thoại thông
minh ngoài IOS trên IPhone 2G chủ yếu là Windows Moblie, Symbian, BlackBerry
OS. Nhưng thời điểm này Google cũng đã giới thiệu Android, một hệ điều hành mã
nguồn mở cho điện thoại thông minh. Và sau đó những chiếc điện thoại thông minh
chạy hệ điều hành Android liên tục được ra đời trên thế giới.
Năm 2010, thị trường điện thoại thông minh phát triển mạnh mẽ với sự chiếm
lĩnh những chiếc điện thoại chạy hệ điều hành Android và IOS. Microsoft nhận thấy
Windows Moblie của họ đang bị lãng quên chính vì thế vào tháng 2 năm 2010
Microsoft chính thức giới thiệu hệ điều hành Windows Phone 7 và con đường của
Microsoft là đúng đắn, cho đến nay Microsoft đã lần lượt giới thiệu những phiên bản
tiếp theo là Windows Phone 8, Windows Phone 10 và trở thành một trong ba hệ điều
hành chính cùng Android và IOS cho điện thoại thông minh.
1.1.4 Ưu nhược điểm của điện thoại thông minh
Điện thoại thông minh có tất cả những tính năng cơ bản của điện thoại di động
thông thường như nghe, gọi, nhắn tin nhưng vì sao nó được gọi là điện thoại thông
minh ? Nó là sự kết hợp của điện thoại di động thông thường với các thiết bị khác như
máy tính bỏ túi (PDA, Pocket PC), thiết bị điện tử cầm tay, máy ảnh kỹ thuật số, hệ
thống định vị GPS.
• Ưu điểm của điện thoại thông minh:
Điện thoại thông minh vượt xa mọi tính năng của điện thoại di động thông
thường nó có thể gọi video, gọi miễn phí qua mạng internet, lướt web, mạng xã hội,
kiểm tra thư điện tử, cập nhật tin tức thời tiết , xem lịch vạn niên , phong thủy, giải trí
trực tuyến, thay thế cho kim từ điển, máy đọc sách, máy ảnh kỹ thuật số … rất nhiều
9
tính năng khác. Thậm chí thay thế được máy tính cá nhân vì nó làm những việc cơ bản
của máy tính nhưng có thể kết nối mạng dữ liệu di động, nhỏ gọn và có thể mang theo
khắp mọi nơi.
Với sự hiện đại của điện thoại thông minh hệ thống lọc tạp âm trên micro thoại
cho chất lượng cuộc gọi rất tốt nhỉnh hơn đôi chút với loại điện thoại thông thường.
Hơn thế nữa điện thoại thông minh có kho dữ liệu trực tuyến, hệ thống sao lưu thông
minh nên việc mất dữ liệu như danh bạ, ảnh chụp, ghi chú … rất khó xảy ra kể cả khi
mất cả máy. Với hệ thống bảo mật cao hiện đại của điện thoại thông minh người dùng
không lo dữ liệu bị người khác biết kể cả khi thiết bị trong tay người khác.
• Nhược điểm của điện thoại thông minh:
Vì sự dụng một hệ điều hành nên điện thoại thông minh cũng khó tránh khỏi bị
những phần mềm độc hại như virut gây mất ổn định. Người dung sẽ gặp phải trường
hợp sau một thời gian sử dụng máy bị chậm đi và làm việc sai lệch. Và thời lượng sử
dụng pin của nó cũng không bằng điện thoại di dộng thông thường. Thường thì pin của
điện thoại thông minh làm việc ít khi chỉ nghe gọi như điện thoại thông thường sẽ sử
dụng được nhiều nhất ba ngày còn điện thoại thông thường có loại sử dụng được đến
hai tuần.
Điện thoại thông minh có màn hình cảm ứng, kích thước vật lý to hơn độ bền
không bằng và giá thành sẽ cao hơn nhiều so với điện thoại thông thường, đây cũng là
rào cản cho điện thoại thông minh đến tay người dùng có thu nhập thấp, mặc dù ngày
nay có rất nhiều loại điện thoại thông minh giá rẻ.
1.2 Tìm hiểu hệ điều hành IOS
1.2.1 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 trên Iphone nhưng sau đó nó được mở rộng 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, Apple Store
của Apple chứa khoản 500.000 ứng dụng IOS và được tải về tổng cộ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.
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 trên màn hình cảm
ứng của các thiết bị Apple.
10
Hệ điều hành này được tiết lộ tại Hội nghị và phát triển Macworld diễn ra vào
tháng 1 năm 2007 và được phát hành vào tháng 9 cùng năm đó. Khi đó, hệ điều hành
này chưa có một cái tên riêng nên đơn giản gọi là “Iphone OS X”. Ban đầu, ứng dụng
của 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 ứ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 được xây
dựng và họ dự định đưa nó đến “tay các nhà phát triểm và 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 hoàn toà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 của Cisco.
1.2.2 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 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ư một hệ điều hành, cụ thể như sau :
Hình 1. Phân lớp trong hệ điều hành IOS
11
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.
1.2.3 Lớp Core OS
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 các thành phần 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 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 Framwork: 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 của Iphone thông qua 30-pin dock connector hoặc
qua Bluetooth.
• Security Framwork: 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ó bao 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à
truy cập hệ thống.
1.2.4 Lớp Core Service
Là lớp 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
danh bạ.
• Core Data Framework: Được cung cấp để dex 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
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.
12
• 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 gói Objective-C xung quanh Core Foundation Framework.
• Core Location Framework: Cho phép chúng ta 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 tahi thời gian thông tin
được yêu cầu và phần cứng hỗ trợ được cung cấp bởi model Iphone cụ thể mà
ứng dụng đó chạy trê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 ra sự dễ dàng trong
việc trao đổi thông tin thương mại giữa ứng dụng của chúng ta với Apple
Store.
• SOLite 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.5 Lớp Media Service
Là lớp cung cấp về các khả năng audio, video, aninations 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 mà có thể
sử dụng được trong ứ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 theo 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 (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…
• AV Foundation Framework: Là một framework được thiết kế cho phép
phát lại, ghi âm, quản lý nội dung âm thanh.
13
• Core Audio Framework (CoreAudio Framework, Audio ToolBox và Audio
Unit Framework): Cung cấp khả năng truy cập từ 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): 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, .3gp tại một loạt các tiêu chuẩn nén, các độ phân
giải và tốc độ khung hình.
1.2.6 Lớp Cocoa Touch
Lớp này nằm ở trên cùng trong ngăn xếp của IOS và chứa những framework 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 OSX 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 gia diện lập
trình dựa trên Objective-C giàu tính năng. Chúng ta sẽ phải tốn nhiều thời
gian làm việc để tìm hieru về nó. Hầu hết các cuốn sách đều viết về UIKit
Framework.
• MapKit Framework: Cung cấp cho chúng ta một giao diện lập trình để cho
phếp chúng ta xây dựng bản đồ dựa trên các ứng dụng riêng của chúng ta.
Nó cho phép chúng ta hiển thị bản đồ có thể cuộn tới bất kì đâu, hiển thị bản
đồi tương ứng với vị trí địa lý hiện tại của thiết bị và chú thích theo nhiều
cách khác nhau.
• Push Notification Service: 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 chjay 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 ta 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 dụng để đọc them 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 bị gián
đoạn.
• Message UI Framework: Cung cấp mọi thứ mà chúng ta cần để cho phép
người sử dụng gửi e-mail từ trong ứng dụng của chúng ta. 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ỉ e-mail và nội dung tin nhắn, ngoài ra thông tin
14
này có thể xác định bên trong ứng dụng của chúng ta và sau đó được hiển
thị cho người sử dụng để chỉnh sửa và phiên duyệt trước khi gửi.
• Address Book UI Framewrok: Đưa ra các 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 chúng ta. Cho phép chúng ta 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 chúng ta.
• Game Kit Framework: Cung cấp kết nối ngang hàng (per to per) và kết
nối giọng nói giữa các thiết bị và cho phép nhiefu người sử dụng chạy cùng
một ứng dụng tương tác.
1.3 Kết luận
Qua phần giới thiệu về tổng quan về hệ điều hành di động, ta thấy được lịch sử
những phát minh, những nghiên cứu làm tiền đề cho thiết bị di động thông minh phát
triển như bây giờ.
Cho đến bây giờ dù nhiều biến động, nhiều hệ điều hành di động được ra đời và
đang phát triển nhưng IOS, Android và Windows Phone vẫn là ba hệ điều hành di
động thông minh chiếm thị phần cao nhất.
15
Chương 2. Ứng dụng tìm kiếm quán ăn
1.4 Lý do chọn đề tài
Với những người có tâm hồn ẩm thực thì rất khó khi đi du lịch đến một nơi nào
đó không rõ địa lý hay như muốn ta muốn tổ chức một bữa tiệc sinh nhật, liên hoan
bạn bè nhưng không biết chọn nơi nào hay như có một quán ăn mới mở muốn quảng
bá đến mọi người, … Vì những lý do đó, ý tưởng tạo ra một ứng dụng có thể giúp cho
chúng giải quyết những vấn đề trên.
1.5 Mô tả bài toán
Ứng dụng được thực hiện với mục đích giải quyết những vấn đề giúp cho người
dùng có thể dễ dàng tìm kiếm những địa điểm ăn uống phù hợp, tiện lợi với mình đồng
thời ứng dụng giúp quảng bá, giới thiệu thông tin về quán ăn.
1.6 Hướng giải quyết
Để giải quyết những vấn đề được mô tả ở trên thì ứng dụng thiết kế có các chức
năng chính như sau:
•
•
•
•
•
•
•
•
•
•
Người dùng có thể xem được những quán ăn nào mới mở.
Người dùng có thể xem được những quán ăn nào đang được yêu thích.
Người dùng có thể xem được những quán ăn nào đang hot nhất.
Người dùng có thể xem được những bản tin khuyến mãi của các quán ăn.
Người dùng có thể xem được những quán ăn theo từng vị trí như quận nào,
phố nào, khu vực nào.
Người dùng có thể xem được những quán ăn theo từng danh mục: món lẩu,
món nướng, …
Người dùng có thể xem được thông tin chi tiết của quán ăn bao gồm các
thông tin: tên quán, mô tả, địa chỉ, thời gian hoạt động, …
Người dùng có thể tìm kiếm quán ăn.
Người dùng có thể tìm được những quán ăn xung quang vị trí mình đang
đứng.
Người dùng có thể xem đường định vị đường đi từ chỗ mình đến quán ăn
đó.
1.7 Kết luận
Khi mà thiết bị di động thông minh không còn xa lạ gì với mọi người, nhất là
giới trẻ thì ý tưởng xây dựng ứng dụng “Tìm kiếm quán ăn” trên điện thoại thông minh
giúp ích cho mọi người về vấn đề ẩm thức một cách hiệu quả và tiện lợi.
16
Chương 3. Phân tích thiết kế hệ thống
1.8 Mô hình UseCase
1.8.1 Mô hình
Hình 3. Mô hình usecase
1.8.2 Các chức năng hệ thống
Trang chủ
Tác nhân
Người dùng
Mô tả
Trang chủ hiển thị danh sách những quán
ăn được yêu thích, những quán ăn mới
mở, tin tức khuyến mãi…
Sự kiện kích hoạt
Người dùng bật ứng dụng hoặc ấn vào
icon “Trang chủ” dưới thanh tabar.
Điều kiện tiên quyết
Có kết nối internet
Phương thức cơ bản
1.
Người dùng ấn vào nút
“Trang chủ” hoặc mở ứng dụng.
2.
Hệ thống sẽ request đến
17
server để lấy dữ liệu trả về.
3.
Hệ thống nhận dữ liệu của
server và hiển thị.
Phương thức thay thế
Kết quả
Hiển thị danh sách top những quán ăn.
Ngoại lệ
Trong hợp không có kết nối internet
không hiển thị được thông tin.
Tần suất sử dụng
Thường xuyên
Bảng 3. Bảng mô tả Use case “Trang chủ”
Tìm kiếm
Tác nhân
Người dùng
Mô tả
Khi người dùng muốn tìm kiếm tên một
quán ăn nào đó.
Sự kiện kích hoạt
Người dùng ấn nút “Tìm kiếm” ở thanh
tab dưới.
Điều kiện tiên quyết
Có kết nối internet.
Phương thức cơ bản
1.
Người dùng chọn ấn nút
“Tìm kiếm” ở thanh tab dưới.
2.
Hệ thống hiện thị giao diện
tìm kiếm.
3.
Người dùng nhập từ cần
tìm kiếm vào thanh tìm kiếm rồi
ấn nút “Tìm”.
4.
Hệ thống gửi yêu cầu lên
server để tìm trong cơ sở dữ liệu.
5.
Hệ thống nhận dữ liệu từ
server trả về rồi hiển thị kết quả.
Phương thức thay thế
Kết quả
Hiển thị kết quả cần tìm
18
Ngoại lệ
Tần suất sử dụng
Từ khóa cần tìm không có
trong cơ sở dữ liệu.
Không có kết nối internet
Bình thường
Bảng 3. Bảng mô tả Use case “Tìm kiếm”
Định vị
Tác nhân
Người dùng
Mô tả
Người dùng có thể xem được những
quán ăn xuất hiện xung quanh vị trí của
mình.
Sự kiện kích hoạt
Người dùng ấn nút “Định vị” ở thanh tab
dưới.
Điều kiện tiên quyết
Có kết nối internet.
Phương thức cơ bản
1.
Người dùng ấn nút “Định
vị” ở tab dưới.
2.
Hệ thống lấy tọa độ của
thiết bị gửi lên server.
3.
Server dùng tọa độ đó tính
toán khoảng cách với các tọa độ
của quán ăn.
4.
Hệ thống nhận dữ liệu của
server trả về rồi hiển thị kết quả.
Phương thức thay thế
Kết quả
Hiển thị danh sách các quán ăn gần vị trí
của người dùng.
Ngoại lệ
Không có kết nối internet.
Không bật dịch vụ định vị
trên hệ thống.
Tần suất sử dụng
Thường xuyên.
Bảng 3. Bảng mô tả Use case “Định Vị”
19
Xem thông tin quán ăn
Tác nhân
Người dùng
Mô tả
Người dùng xem thông tin của một quán
ăn như: tên quán, mô tả, địa chỉ, …
Sự kiện kích hoạt
Người dùng ấn chọn một trong các danh
sách hiển thị quán ăn.
Điều kiện tiên quyết
-
Có kết nối internet.
Phương thức cơ bản
1.
Người dùng chọn một
trong các kết quả hiển thị danh
sách quán ăn.
2.
Hệ thống gửi yêu cầu lên
server.
3.
Hệ thống nhận dữ liệu từ
server trả về và hiển thị kết quả.
Phương thức thay thế
Kết quả
Hiển thị thông tin chi tiết của quán ăn.
Ngoại lệ
Không có kết nối internet.
Tần suất sử dụng
Thường xuyên
Bảng 3. Bảng mô tả Use case “Xem thông tin quán ăn”
Xem danh sách quán ăn theo khu vực
Tác nhân
Người dùng
Mô tả
Người dùng có thể xem danh sách các
quan ăn theo khu vực.
Sự kiện kích hoạt
Người dùng ấn vào tên khu vực trong
danh sách các khu vực
Điều kiện tiên quyết
Có kết nối internet.
20
Phương thức cơ bản
1.
Người dùng ấn nút
“Quận”.
2.
Hệ thống hiển thị danh
sách các quận trong khu vực Hà
Nội.
3.
Người dùng chọn một
quận.
4.
Hệ thống gửi danh sách
các khu vực tương ứng với quận
đó.
5.
Người dùng chọn một khu
vực.
6.
Hệ thống hiển thị danh
sách các quán ăn nằm trong khu
vực đó.
Phương thức thay thế
Kết quả
Hiển thị danh sách các quán ăn theo khu
vực.
Ngoại lệ
Không kết nối internet.
Tần suất sử dụng
Thường xuyên.
Bảng 3. Bảng mô tả Use case “Xem danh sách quán ăn theo khu vực”
Xem danh sách quán ăn theo phố
Tác nhân
Người dùng
Mô tả
Người dùng có thể xem danh sách các
quan ăn theo phố.
Sự kiện kích hoạt
Người dùng ấn vào tên phố trong danh
sách các phố.
Điều kiện tiên quyết
Có kết nối internet.
Phương thức cơ bản
1.
Người dùng ấn nút
“Quận”.
2.
Hệ thống hiển thị danh
21
sách các quận trong khu vực Hà
Nội.
3.
Người dùng chọn một
quận.
4.
Hệ thống gửi danh sách
các phố tương ứng với quận đó.
5.
Người dùng chọn một phố.
6.
Hệ thống hiển thị danh
sách các quán ăn nằm trong phố
đó.
Phương thức thay thế
Kết quả
Hiển thị danh sách các quán ăn theo phố.
Ngoại lệ
Không kết nối internet.
Tần suất sử dụng
Thường xuyên.
Bảng 3. Bảng mô tả Use case “Xem danh sách quán ăn theo phố”
Xem danh sách quán ăn theo danh mục
Tác nhân
Người dùng
Mô tả
Người dùng có thể xem danh sách các
quan ăn theo danh mục.
Sự kiện kích hoạt
Người dùng ấn vào tên danh mục trong
danh sách các danh mục.
Điều kiện tiên quyết
Có kết nối internet.
Phương thức cơ bản
1.
Người dùng ấn nút “Danh
mục”.
2.
Người dùng chọn một danh
mục.
3.
Hệ thống hiển thị danh
sách các quán ăn nằm trong danh
mục đó.
Phương thức thay thế
22
Kết quả
Hiển thị danh sách các quán ăn theo
danh mục.
Ngoại lệ
Không kết nối internet.
Tần suất sử dụng
Thường xuyên.
Bảng 3. Bảng mô tả Use case “Xem danh sách quán ăn theo danh mục”
23
1.9 Mô hình trạng thái
1.9.1 Mô hình trạng thái chức năng “Trang chủ”
Hình 3. Mô hình trạng thái chức năng “Trang chủ”
24
1.9.2 Mô hình trạng thái chức năng “Tìm kiếm”
Hình 3. Mô hình trạng thái chức năng “Tìm kiếm”
25
1.9.3 Mô hình trạng thái chức năng “Định vị”
Hình 3. Mô hình trạng thái chức năng “Định vị”
26
1.9.4 Mô hình trạng thái chức năng “Xem thông tin quán ăn”
Hình 3. Mô hình trạng thái chức năng “Xem thông tin quán ăn”
27
1.9.5 Mô hình trạng thái chức năng “Xem quán ăn theo khu vực”
Hình 3. Mô hình trạng thái chức năng “Xem danh sách quán ăn theo khu vực”
28
1.9.6 Mô hình trạng thái chức năng “Xem quán ăn theo phố”
Hình 3. Mô hình trạng thái chức năng “Xem danh sách quán ăn theo phố”
29
1.9.7 Mô hình trạng thái chức năng “Xem danh sach quán ăn theo danh mục”
Hình 3. Mô hình trạng thái chức năng “Xem danh sách quán ăn theo danh mục”
30
1.10 Mô hình trình tự
1.10.1 Mô hình trình tự chức năng “Trang chủ”
Hình 3. Mô hình trình tự chức năng “Trang chủ”
31
1.10.2 Mô hình trình tự chức năng “Tìm kiếm”
Hình 3. Mô hình trình tự chức năng “Tìm kiếm”
32
1.10.3 Mô hình trình tự chức năng “Định vị”
Hình 3. Mô hình trình tự chức năng “Định vị”
33
1.10.4 Mô hình trình tự chức năng “Xem thông tin quán ăn”
Hình 3. Mô hình trình tự chức năng “Xem thông tin quán ăn”
34
1.10.5 Mô hình trình tự chức năng “Xem danh sách quán ăn theo khu vực”
Hình 3. Mô hình trình tự chức năng “Xem danh sách quán ăn theo khu vực”
35
1.10.6 Mô hình trình tự chức năng “Xem danh sách quán ăn theo phố”
Hình 3. Mô hình trình tự chức năng “Xem danh sách quán ăn theo phố”
36
1.10.7 Mô hình trình tự chức năng “Xem danh sách quán ăn theo danh mục”
Hình 3. Mô hình trình tự chức năng “Xem danh sách quán ăn theo danh mục”
37
1.11 Phân tích cơ sở dữ liệu
Hình 3. Cơ sở dữ liệu
38
Chương 4. Xây dựng chương trình
1.12 Chức năng trang chủ.
Hình 4. Màn hình chức năng “Trang chủ”
39
1.13 Chức năng xem danh sách quán ăn theo khu vực
Hình 4. Màn hình “Danh sách khu vực thuộc quận”
40
1.14 Chức năng xem danh sách quán ăn theo phố
Hình 4. Màn hình “Danh sách phố thuộc quận”
41
1.15 Chức năng xem danh sách quán ăn theo danh mục
Hình 4.5 Chức năng “Danh sách quán ăn theo danh mục”
42
1.16 Chức năng xem thông tin quán ăn
Hình 4.5 Màn hình “Thông tin quán ăn”
43
1.17 Chức năng tìm kiếm
Hình 4.6 Màn hình “Tìm kiếm”
44
1.18 Chức năng định vị
Hình 4.7 Chức năng “Định vị”
45
KẾT LUẬN
Nêu bật được kết luận báo cáo và kiến nghị hướng phát triển tiếp cũng như khả
năng ứng dụng và mở rộng nghiên cứu.
46
TÀI LIỆU THAM KHẢO
[2]. Chèn tài liệu vào đây đi ku
[3]. Đây nữa
47
[...]... thị phần cao nhất 15 Chương 2 Ứng dụng tìm kiếm quán ăn 1.4 Lý do chọn đề tài Với những người có tâm hồn ẩm thực thì rất khó khi đi du lịch đến một nơi nào đó không rõ địa lý hay như muốn ta muốn tổ chức một bữa tiệc sinh nhật, liên hoan bạn bè nhưng không biết chọn nơi nào hay như có một quán ăn mới mở muốn quảng bá đến mọi người, … Vì những lý do đó, ý tưởng tạo ra một ứng dụng có thể giúp cho chúng... IMA/ADPCM, Linear PCM… • AV Foundation Framework: Là một framework được thiết kế cho phép phát lại, ghi âm, quản lý nội dung âm thanh 13 • Core Audio Framework (CoreAudio Framework, Audio ToolBox và Audio Unit Framework): Cung cấp khả năng truy cập từ 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): là một công nghệ nền tảng lai tạo được sử dụng để cung cấp hiệu... số lượng mã cần phải viết để thực hiện 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 12 • 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... 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 theo 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... 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 1.2.3 Lớp Core OS 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 các thành phần sau: • CFNetWork Framework: Cung cấp một giao diện dựa trên... diện lập trình để cho phếp chúng ta xây dựng bản đồ dựa trên các ứng dụng riêng của chúng ta Nó cho phép chúng ta hiển thị bản đồ có thể cuộn tới bất kì đâu, hiển thị bản đồi tương ứng với vị trí địa lý hiện tại của thiết bị và chú thích theo nhiều cách khác nhau • Push Notification Service: 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 chjay trên... 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 Framwork: 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 của Iphone thông qua 30-pin dock connector hoặc qua Bluetooth • Security Framwork: 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... trên 1.5 Mô tả bài toán Ứng dụng được thực hiện với mục đích giải quyết những vấn đề giúp cho người dùng có thể dễ dàng tìm kiếm những địa điểm ăn uống phù hợp, tiện lợi với mình đồng thời ứng dụng giúp quảng bá, giới thiệu thông tin về quán ăn 1.6 Hướng giải quyết Để giải quyết những vấn đề được mô tả ở trên thì ứng dụng thiết kế có các chức năng chính như sau: • • • • • • • • • • Người dùng có thể xem ... việc xây dựng ứng dụng giúp ích cho người lĩnh vực ăn uống, em chọn đề tài Xây dựng ứng dụng tìm kiếm quán ăn để làm đồ án thực tập tốt nghiệp với mục đích cung cấp ứng dụng hữu ích việc tìm kiếm. .. xem quán ăn mở Người dùng xem quán ăn yêu thích Người dùng xem quán ăn hot Người dùng xem tin khuyến quán ăn Người dùng xem quán ăn theo vị trí quận nào, phố nào, khu vực Người dùng xem quán ăn. .. kiếm quán ăn tùy theo ý muốn người Vì vậy, báo cáo em có nội dung sau: • • • • Chương Tìm hiểu hệ điều hành di động Chương Ứng dụng tìm kiếm quán ăn Chương Phân tích thiết kế Chương Xây dựng