1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng ứng dụng học tiếng anh trên nền tảng iOS

70 348 1

Đ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 70
Dung lượng 15,94 MB

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

Nội dung

Yêu cầu chức năng Ứng dụng học tiếng Anh Bilo gồm có phần chính là phần ứng dụng được càiđặt trên thiết bị iOS và đảm bảo thực hiện được các chức năng dưới đây: 3.1.2.1 Chức năng xem dan

Trang 1

MỤC LỤC LỜI CẢM ƠN I LỜI CAM ĐOAN II NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN III PHIẾU DUYỆT ĐỒ ÁN TỐT NGHIỆP IV

MỤC LỤC 3

DANH MỤC HÌNH ẢNH 5

DANH MỤC BẢNG 6

MỞ ĐẦU 7

CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI 8

1.1 Giới thiệu đề tài 8

1.2 Mục đích và ý nghĩa 8

1.2.1 Mục đích 8

1.2.2 Ý nghĩa 8

1.3 Phương pháp giải quyết 9

1.3.1 Khảo sát thực tế 9

1.3.2 Tìm hiểu lý thuyết 10

1.3.3 Thực nghiệm 10

1.4 Phạm vi 10

1.5 Bố cục luận văn 11

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 12

2.1 Hệ điều hành iOS 12

2.1.1 Hệ điều hành iOS 12

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

2.2 NGÔN NGỮ LẬP TRÌNH OBJECTIVE – C 18

2.2.1 Lịch sử phát triển của ngôn ngữ lập trình Objective – C 18

2.2.2 Một số thuật ngữ thông dụng trong Objective – C 20

2.2.3 Nguyên tắc đặt tên biến, hằng… trong Objective – C 21

2.2.4 Class (lớp) trong Objective – C 22

2.2.5 Phạm vi truy xuất biến 22

2.2.6 Các phương thức trong Objective – C 22

CHƯƠNG 3 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 24

3.1 Phân tích yêu cầu 24

3.1.1 Đối tượng sử dụng 24

3.1.2 Yêu cầu chức năng 24

3.1.3 Yêu cầu phi chức năng 26

3.2 Phân tích thiết kế hệ thống 27

3.2.1 Biểu đồ ca sử dụng: 27

3.2.2 Biểu đồ tuần tự 40

3.2.3 Biểu đồ hoạt động: 44

3.2.4 Biểu đồ lớp 49

Trang 2

3.2.5 Thiết kế cơ sở dữ liệu 49

CHƯƠNG 4 TRIỂN KHAI VÀ THỰC NGHIỆM CHƯƠNG TRÌNH 52

4.1 Triển khai chương trình 52

4.2 Các thuật toán được sử dụng 52

4.2.1 Thuật toán tạo bộ câu hỏi ở chế độ chơi True or False 52

4.2.2 Thuật toán tạo bộ câu hỏi ở chế độ chơi Photo Touch và Reader 54

4.2.3 Thuật toán tạo bộ câu hỏi ở chế độ chơi Memory 55

4.2.4 Thuật toán tạo bộ câu hỏi ở chế độ chơi Word Bilder 56

4.3 THỰC NGHIỆM CHƯƠNG TRÌNH 57

4.3.1 Khởi tạo bộ từ vựng mồi 57

4.3.2 Cài đặt và thực thi ứng dụng 58

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 70

I Kết luận 70

1 Kết quả đạt được 70

2 Hạn chế 71

II Hướng phát triển 71

TÀI LIỆU THAM KHẢO 72

danh mục hình ản

2

Trang 3

Hình 1: Danh sách tất cả các bài học 1

Hình 2: Danh sách các màn chơi 2

Hình 3: Tìm kiếm bài học 2

Hình 4: Cấu trúc hệ điều hành iOS 13

Hình 5: Ngôn ngữ lập trình Objective - C 18

Hình 6: Biểu đồ ca sử dụng tổng thể 27

Hình 7: Biểu đồ ca sử dụng thực hiện màn chơi 27

Hình 8: Biểu đồ tuần tự - Xem danh sách bài học 40

Hình 9: Biểu đồ tuần tự - Thực hiện màn chơi Surfer 40

Hình 10: Biểu đồ tuần tự - Thực hiện màn chơi TapTap 41

Hình 11: Biểu đồ tuần tự - Thực hiện màn chơi True or False 41

Hình 12: Biểu đồ tuần từ - Thực hiện màn chơi Photo Touch 42

Hình 13: Biểu đồ tuần từ - Thực hiện màn chơi Reader 42

Hình 14: Biểu đồ tuần tự - Thực hiện màn chơi Memory 43

Hình 15: Biểu đồ tuần từ - Thực hiện màn chơi Word builder 43

Hình 16: Biểu đồ hoạt động – Thực hiện màn chơi 44

Hình 17: Biểu đồ hoạt động – Thực hiện màn chơi True or False 45

Hình 18: Biểu đồ hoạt động – Thực hiện màn chơi Photo Touch và Reader 46

Hình 19: Biểu đồ hoạt động – Thực hiện màn chơi Memory 47

Hình 20: Biểu đồ hoạt động – Thực hiện màn chơi Word builder 48

Hình 21: Biểu đồ lớp 49

Hình 22: Mô hình cơ sở dữ liệu quan hệ 49

Hình 23: Sơ đồ triển khai chương trình 52

Hình 24: Trình tự tạo câu hỏi cho chế độ chơi True or False 53

Hình 25: Trình tự tạo câu hỏi cho chế độ chơi Photo Touch và Reader 54

Hình 26: Trình tự tạo câu hỏi cho chế độ chơi Memory 55

Hình 27: Trình tự tạo câu hỏi cho chế độ chơi Word Builder 56

Hình 28: Khởi tạo bộ từ vựng mồi cho ứng dụng 57

Hình 29: Màn hình khởi động 58

Hình 30: Màn hình hiển thị danh sách các bài đang học 59

Hình 31: Xoá bài đang học 60

Hình 32: Màn hình quản lý bài học 61

Hình 33: Xem danh sách bạn màn chơi 62

Hình 34: Màn chơi Surfer 63

Hình 35: Màn chơi TapTap 64

Hình 36: Màn chơi True or False 65

Hình 37: Màn Chơi Reader và Photo Touch 66

Hình 38: Màn Chơi Memory 67

Hình 39: Màn Chơi Word Bilder 68

Hình 40: Màn hình kết quả các màn chơi 69

Trang 4

DANH MỤC BẢNG

Bảng 1: Ca sử dụng xem danh sách tất cả các bài học đang học 28

Bảng 2: Ca sử dụng xem danh sách tất cả các bài học 29

Bảng 3: Ca sử dụng xem danh sách các màn chơi 30

Bảng 4: Ca sử dụng thực hiện màn chơi Surfer 31

Bảng 5: Ca sử dụng thực hiện màn chơi TapTap 32

Bảng 6: Ca sử dụng thực hiện màn chơi True or False 33

Bảng 7: Ca sử dụng thực hiện màn chơi PhotoTouch 35

Bảng 8: Ca sử dụng thực hiện màn chơi Reader 36

Bảng 9: Ca sử dụng thực hiện màn chơi Memory 37

Bảng 10: Ca sử dụng thực hiện màn chơi Word builder 38

Bảng 11: Ca sử dụng tìm kiếm bài học 39

Bảng 12: Bảng cơ sở dữ liệu – Topics (lưu thông tin của bài học) 50

Bảng 13: Bảng cơ sở dữ liệu - Words (lưu thông tin của từ vựng) 50

Bảng 14: Bảng cơ sở dữ liệu - Topic – Word (lưu thông tin của từ vựng) 51

4

Trang 5

MỞ ĐẦU

Từ khi ra đời cho đến nay, các dòng điện thoại thông minh, máy tính bảngphát triển với tốc độ rất nhanh Con người thường xuyên sử dụng chúng cho cácmục đích giao tiếp, học tập, giải trí… Trong đó nhu cầu sử dụng các sản phẩm tròchơi để giải trí luôn là cao nhất Hơn thế nữa, hiện nay tiếng Anh được sử dụng ởhầu hết mọi lĩnh vực trong cuộc sống, mọi người luôn cố gắng tìm kiếm mộtphương pháp hiệu quả để có thể cải thiện và nâng cao trình độ tiếng Anh của mình

Có rất nhiều phương pháp học tiếng Anh để lựa chọn, mỗi phương pháp đều

có những ưu và nhược điểm của nó Nhưng đa phần đều dễ gây nhàm chán chongười học Vậy nếu mang việc học tiếng Anh kết hợp với với một trò chơi giải tríthì sao?

Từ câu hỏi trên, em đã tìm hiểu và đưa ra ý tưởng về một ứng dụng giúpngười học tiếng Anh có thể dễ dàng tiếp thu, trao dồi khả năng qua các trò chơi giảitrí nhẹ nhàng, đơn giản và có thể học được tiếng Anh mọi lúc, mọi nơi

Trang 6

CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI

1.1 GIỚI THIỆU ĐỀ TÀI

Đề tài “Xây dựng ứng dụng học tiếng Anh trên nền tảng iOS”

Xuất phát từ đề tài “Xây dựng ứng dụng học từ vựng tiếng Anh trên nền tảngAndroid” của anh Cao Quảng Bình, sinh viên khóa 09, khoa Công nghệ thông tin,trường đại học Bách khoa Đà nẵng, em đã phát triển ứng dụng này trên nền tảngiOS, với mục đích tạo cơ hội cho người dùng có thể sử dụng ứng dụng trên hai nềntảng phổ biến này

Ứng dụng vừa là một công cụ giúp học từ vựng tiếng Anh trên thiết bị diđộng, vừa là một trò chơi giải trí Cụ thể hơn, đó là một ứng dụng trò chơi cho phépngười dùng chơi các màn chơi liên quan tới chủ đề học tiếng Anh như: từ vựng, ngữpháp, phát âm, cách dùng từ… Các trò chơi này có cách chơi đơn giản, mọi đốitượng đều có thể sử dụng

1.2 MỤC ĐÍCH VÀ Ý NGHĨA

1.2.1 Mục đích

Với đề tài luận văn: “Xây dựng ứng dụng học tiếng Anh trên nền tảng iOS”,

em xác định cho mình các mục đích cần đạt được cho quá trình thực hiện luận vănnhư sau:

 Hiểu biết về hệ điều hành iOS, cách thức xây dựng một phần mềm trên hệđiều hành iOS, cùng các lý thuyết liên quan khác

 Hiểu biết về ngôn ngữ lập trình Objective – c

 Nắm bắt cách thức cũng như chu trình để xây dựng và phát triển một sảnphẩm phần mềm

Xây dựng được một sản phẩm hoàn thiện, có khả năng ứng dụng vào thực tế

1.2.2 Ý nghĩa

Ứng dụng học từ vựng tiếng Anh này được xây dựng với mong muốn tạo ramột phương pháp lý tưởng giúp người dùng có thể cải thiện khả năng tiếng Anh củamình, chú trọng vào việc được chơi, được rèn luyện các kỹ năng, giảm sự nhàmchán thường thấy trong việc học tiếng Anh

Và với một lập trình viên, việc ứng dụng có thể thu hút được người dùng, nó

sẽ tạo ra hiệu quả kinh tế Khi ứng dụng được đưa vào sử dụng qua các cửa hàng,

6

Trang 7

nó sẽ tạo ra thu nhập bằng các hình thức quảng cáo, mua bán trong ứng dụng đượccác hệ điều hành di động hỗ trợ.

1.3 PHƯƠNG PHÁP GIẢI QUYẾT

Để thực hiện đề tài luận văn, em đã xác định và chuẩn bị kế hoạch để thựchiện các công việc cần thiết sau:

1.3.1 Khảo sát thực tế

Đề tài tập trung vào một ứng dụng trò chơi, do đó việc cần làm đầu tiên làtìm hiểu nhu cầu của người dùng để xây dựng nên ý tưởng cho các màn chơi Quakhảo sát, những người học tiếng Anh đa phần quan tâm đến việc nâng cao vốn từvựng trước khi có thể sử dụng ngữ pháp và rèn luyện kỹ năng nghe đọc Từ vựngcũng là chủ đề có thể dễ dàng tạo ra các câu hỏi mà không cần một một cơ sở dữliệu quá lớn Để có thể trình bày về một từ vựng, ta chỉ cần hình ảnh và âm thanhphát âm của từ đó là đủ để giúp người dùng tiếp thu được Ngoài ra có thể cần cóthêm phiên âm cũng như ví dụ về cách dùng từ Dựa vào bộ từ vựng, ta có thể tạo racác màn chơi đơn giản nhưng vẫn đủ sức hấp dẫn như: hình ảnh và âm thanh cóphải là của một từ nào đó hay không, từ một số nhiều các hình ảnh chọn ra một hìnhảnh liên quan một từ vựng, phân biệt các từ có cách phát âm gần giống nhau…

Qua khảo sát cũng cho thấy, ở Việt Nam trong thời điểm hiện tại, số lượnghọc sinh, sinh viên đang tìm kiếm phương pháp học tiếng Anh, đến các trung tâmdạy tiếng Anh là rất lớn, các trường cao đẳng, đại học đều yêu cầu khả năng tiếngAnh của sinh viên, và số lượng sinh viên có đủ vốn từ vựng để đáp ứng được nhucầu trong công việc còn rất hạn chế Do đó, giúp cho người dùng bổ sung vốn từvựng và rèn luyện các kỹ năng: nghe, nói, đọc, viết là mục đích cuối cùng trong quátrình xây dựng của đề tài

Trang 8

Ứng dụng này cần một bộ dữ liệu mẫu để xây dựng các câu hỏi cho mànchơi Với phạm vi hướng tới việc học từ vựng, việc thu thập dữ liệu sẽ dễ dàng hơn.Các dữ liệu này có thể sưu tầm từ nhiều nguồn và có thể dễ dàng tránh khỏi các vấn

đề về bản quyền

1.4 PHẠM VI

Từ ý tưởng của đề tài kết hợp với kết quả khảo sát, đồng thời dựa trên khảnăng và các hiểu biết của bạn thân cùng sự đồng ý của giáo viên hướng dẫn, emđăng ký đề tài “Xây dựng ứng dụng học tiếng Anh trên nền tảng iOS” cho luận văntốt nghiệp với các mục tiêu như nhau:

 Ứng dụng trò chơi được phát triển cho điện thoại thông minh sử dụng hệđiều hành iOS phiên bản 7.0 trở lên

 Các màn chơi được xây dựng với mục đích rèn luyện tiếng Anh, với chủ

đề về từ vựng, bao gồm các thành phần: từ ngữ, nghĩa của từ, hình ảnh

mô tả và phát âm

Trong quá trình thực hiện đề tài, em có sử dụng một số thư viện mã nguồn

mở, cùng các thư viện của công ty TNHH phần mềm Nikme để xây dựng ứng dụng.Các thư viện này không chỉ giúp đỡ xây dựng ứng dụng dễ dàng và nhanh chóng

8

Trang 9

hơn mà còn giúp em xây dựng ứng dụng trên bộ khung có quy chuẩn, phù hợp vớiyêu cầu công ty nhằm múc đích dễ dàng phát triển ứng dụng thành một sản phẩmcủa công ty sau này.

1.5 BỐ CỤC LUẬN VĂN

Bố cục của luận văn bao gồm:

 Chương 1: Tổng quan đề tài

Nội dung chủ yếu của chương này là giới thiệu khái quát về đề tài cần thựchiện Các mục tiêu, ý nghĩa mà đề tài hướng tới Đề ra các phương pháp giải quyết

đi từ khảo sát thực tế, tìm hiểu lý thuyết đến cách thức thực nghiệm Phần cuối củachương là giới hạn phạm vi thực hiện đề tài trong thời gian của luận văn tốt nghiệp

 Chương 2: Cơ sở lý thuyết

Nội dung nghiên cứu lý thuyết liên quan đến quá trình thực hiện đề tài baogồm: lý thuyết về hệ điều hành iOS, ngôn ngữ lập trình Objective – c, công cụ lậptrình Xcode và Coredata framword

 Chương 3: Phân tích và thiết kế hệ thống

Nội dung chương Phân tích, thiết kế hệ thống tập trung vào việc hình thành ýtưởng trò chơi, xây dựng kịch bản, phân tích yêu cầu sau đó tiến hành các bướcphân tích thiết kế hệ thống bao gồm: xác định tác nhân, đặc tả các ca sử dụng, xâydựng biểu đồ tuần tự, biểu đồ hoạt động, biểu đồ lớp, thiết kế cơ sở dữ liệu

 Chương 4: Triển khai và thực nghiệm

Chương này trình bày quá trình thực hiện đề tài, các công cụ và phần mềm

sử dụng, các thuật toán cần có Kết thúc phần là hình ảnh sản phẩm mẫu khi đưavào thực nghiệm

Trang 10

CHƯƠNG 2 CƠ SỞ LÝ THUYẾT

2.1 HỆ ĐIỀU HÀNH IOS

2.1.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ềuhành này chỉ được phát triền để chạy trên Iphone, nhưng sau đó nó đã 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, Apple Sotre 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ạithô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ênmàn hình cảm ứng của các thiết bị của Apple

Hệ điều hành này được tiết lộ tại Hội nghị và Triển lãm Macworld diễn ravà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ànhnà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 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 các ứng dụng web mà “sẽ cư xử như những ứng dụngban đầ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 đáng được xây dựng và họ dự định sẽ đưa nó đến “tay 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ùngthử đầ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

10

Trang 11

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

2.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ứngnà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ủaphầ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ể ở đâ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ừutượ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 1: Cấu trúc hệ điều hành iOS

2.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ệmcác nhiệm vụ như quản lí bộ nhớ, file hệ thống, kiên kết mạng và một số chức năngkhá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ầnsau:

 CFNetwork Framework: Cung cấp một giao diện dựa trên C tới các lớpgiao thức mạng TCP/IP và truy cập mức thấp tới socket BSD Nó chophép mã ứngdụ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 SocketsLayer (SSL) hoặc Transport Layer Security (TLS)

Trang 12

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

 Security framework: Cung cấp các giao diện bảo mật khi chúng ta kết nốitới mạng mở rộng bên ngoài như chứng thực, khóa công khai và khóaprivate, 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ốngvớ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âydự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ếntrình, đầu vào/ đầu ra, kiên lạc đa tiến trình, quản lý luồng, kết nối mạngmức thấp quản lý luồng và truy cập hệ thống

2.1.2.3 Lớp Core Service (lớp nhân dịch vụ)

Lớp Core Service 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ácthành phần sau:

 AddressBook frameword: 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 đổicác mục 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 frameword 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ệutrong ứng dụng

 Core Foundation Framework: Cung cấp các thứ như kiểu dữ liệu, thao táctrê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ếtnối socket

12

Trang 13

 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ùngbởi thiết bị để cung cấp tọa độ sẽ phụ thuộc trên dữ liệu có sẵn tại thờigian thông tin được yêu cầu và phần cứng hỗ trợ được cung cấp bởimodel Iphone cụ thể mà ứng dụng chạy trên đó Nó sẽ dựa trên việc phântí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ệctrao đổi thương mại giữa uwngsd ụng của chúng ta và Apple Store

 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

2.1.2.4 Lớp Media Services (lớp liên kết)

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

 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ễnnhững file PDF, bản vẽ dựa trên Vector, các lớp trong suốt, đường dẫndự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ựcquan và hoạt hình được sử dụng bởi Framework UIKit và cung cấp mộtgiao diện lập trình dựa trên Objective-C để tạo hoạt hình đặc biệt bêntrong ứng dụng Iphone

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

Trang 14

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

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

 Core Audio Frameworks (CoreAudio.Framework, AudioToolbox.framework và AudioUnit.framework): Cung cấp khả năng truycậ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à 1 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 trongcá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

2.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 Frameworkcái mà được sử dụng thường xuyên bởi các lập trình viên Iphone Cocoa Touch dựatrê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áttriển ứng dụng Iphone như sau:

 UIKit Framework: Đây là một Framework khổng lồ và một giao diện lậptrình dựa trên Objective-C giàu tính năng Chúng ta sẽ phải tốn nhiều thờigian 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à tình diễn nội dung Web và văn bản

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

 Tích hợp nhiều ứng dụng

14

Trang 15

 Đưa ra thông báo

 Bộ gia tốc, pin, cảm biến khoảng cách, camera và tương tác với thưviện hình ảnh

 Map Kit 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ủachúng ta Nó cho phép chúng ta hiển thị bản đồ có thể cuộn tới bất kì vịtrí nào, hiển thị bản đồ 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ườidùng về một sự kiện thậm chí khi ứng dụng hiện tại không được chạy trênthiế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ênthiế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àicá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ươngxuyên gián đoạn

 Message UI Framework: Cung cấp mọi thứ mà chúng ta cần để cho phépngười sử dụng gửi email 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ỉ email và nội dung tin nhắn ngoài ra thông tinnày có thể xác định trước 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à phên duyệt trước khigửi

 Address Book UI Framework: Đưa ra các chức năng chính cho IPhonenhư 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àotrong ứng dụng riêng của chúng ta Cho phép chúng ta truy cập vào, hiểnthị, chỉnh sửa và nhập thông tin liên lạc từ sổ địa chỉ của IPhone từ bêntrong ứng dụng riêng của chúng ta

Trang 16

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

2.2 NGÔN NGỮ LẬP TRÌNH OBJECTIVE – C

2.2.1 Lịch sử phát triển của ngôn ngữ lập trình Objective – C

Vào đầu các năm 1980, Brad J Cox đã thiết kế ra ngôn ngữ Objective-C dựatrên ngôn ngữ SmallTalk-80 Có thể hình dung rằng Objective-C là một ngôn ngữlập trình được đặt ở lớp trên của ngôn ngữ lập trình C truyền thống, điều này cónghĩa là ngôn ngữ C được bổ sung thêm những thành phần mở rộng (hay còn gọi làcác extensions) để hình thành nên 1 ngôn ngữ lập trình mới đó là Objective-C.Ngôn ngữ Objective-C này cho phép chúng ta tạo và quản lý những đối tượng(Objects)

Hình 2: Ngôn ngữ lập trình Objective - C

Từ năm 1988, Công ty NeXT Software đã nắm giữ bản quyền sở hữu ngônngữ Objective-C này Họ đã phát triển thêm những bộ thư viện và cả môi trườngphát triển cho nó có tên là NEXTSTEP

Vào năm 1994, NeXT Computer đã phối hợp với công ty Sun Microsystemschuẩn hóa lại NEXTSTEP trong bản đặc tả tên là OPENSTEP Bản hiện thực của

16

Trang 17

OPENSTEP chính là GNUStep 1 hệ thống bao gồm cả Linux kenel và môi trườngphát triển GNUStep lúc đó được gọi là LinuxSTEP.

Đến cuối tháng 12 năm 1996, hãng Apple đã mua lại công ty NeXT Software

và môi trường NEXTSTEP/OPENSTEP đã trở thành thành phần cốt lõi của hệ điềuhành OS X mà Apple đã giới thiệu sau này Phiên bản chính thức của môi trườngphát triển này do chính Apple giới thiệu ban đầu có tên là Cocoa Bằng việc hỗ trợsẵn ngôn ngữ Objective-C, đồng thời tích hợp 1 số các công cụ phát triển khác nhưProject Builder (tiền thân của Xcode) và Interface Builder, Apple đã tạo ra 1 môitrường mạnh mẽ để phát triển ứng dụng trên MAC OS X

Tới năm 2007, Apple đã tung ra bản nâng cấp cho ngôn ngữ Objective-C vàgọi đó là Objective-C 2.0 Cho tới khi Apple chính thức giới thiệu iPhone vào năm

2007, có rất rất nhiều developers mong muốn được tham gia phát triển ứng dụngtrên thiết bị mang tính đột phá về công nghệ này Ban đầu, Apple không khuyếnkhích việc tham gia phát triển ứng dụng từ bên thứ 3 này mà chỉ cho phép nhữngứng dụng chạy trên nền web được chạy thông qua ứng dụng dạng trình duyệt Safari

mà họ đã cài sẵn trong iPhone Điều này làm cho những ứng dụng khi muốn chạyphải yêu cầu kết nối đến máy chủ web host ứng dụng của các developers tham giaphát triển Rõ ràng động tác này của Apple không thể đáp ứng được nhu cầu của cácdevelopers cho có rất nhiều hạn chế trong việc phát triển ứng dụng web-based nhưthế Ngay sau đó, Apple đã trấn an giới phát triển ứng dụng bằng việc chính thứcthông báo rằng các developers sẽ có thể phát triển các ứng dụng thuần iPhone Tức

là các ứng dụng nằm trong iPhone và chạy trên hệ điều hành của iPhone giống nhưcác ứng dụng có sẵn của Apple như Contacts, Stocks, Weather,… chạy trên thiết bịđặc biệt này

Tới năm 2010, với việc chính thức giới thiệu thêm các thiết bị iPad, Applechuyển sang sử dụng thuật ngữ tổng quát hơn đó chính là “iOS” để chỉ dùng hệ điềuhành này trên các thiết bị di động có sự khác biệt về kích thước vật lý và độ phângiải như iPhone, iPod, iPad và những phiên bản khác nhau của chúng Giờ đây iOSSDK sẽ cho phép các developers phát triển được ứng dụng này trên bất cứ các thiết

bị iOS nào IOS 8 chính là phiên bản hiện tại của hệ điều hành đầy thú vị này

2.2.2 Một số thuật ngữ thông dụng trong Objective – C

Trang 18

2.2.2.1 Các Directives được sử dụng để khai báo, định nghĩa các classes,

categories, protocols.

 @interface: Sử dụng để khai báo một class

 @implementation: Dùng để định nghĩa một class hay một category

 @protocol: Sử dụng để khai báo một thủ tục hình thức (formal protocol)

 @end : Kết thúc khai báo, định nghĩa category hoặc protocol

2.2.2.2 Các Directive được sử dụng để xác định khả năng truy cập của các thực

thể (Mặc định là @protected).

 @private: Giới hạn phạm vi truy cập của một biến thực thể chỉ trong lớp

mà nó được khai báo

 @protected: Giới hạn phạm vi truy cập một biến thực thể trong lớp khaibáo nó và các lớp khác kế thừa lớp này

 @public: Không giới hạn phạm vi truy cập của biến này

2.2.2.3 Các Directives liên quan đến việc xử lý ngoại lệ (Exception handling).

 @try: Định nghĩa một khối mã lệnh mà trong khối này có thể phát sinhngoại lệ

 @throw: Tung ra một ngoại lệ

 @catch: Bắt (khối lệnh được thực thi nếu ngoại lệ phát sinh) ngoại lệ bêntrong khối mã lệnh @try ngay trước nó

 @finally: Một khối mã lệnh sẽ được thực thi không cần biết có ngoại lệxảy ra trong @try hay không

2.2.2.4 Các Directive sử dụng cho từng mục đích cụ thể.

 @class: Khai báo tên của một lớp được định nghĩa ở đâu đó

 @selector(method_name): Trả về selector đã được biên dịch xác địnhphương thức có tên là tham số trong dấu ngoặc

 @protocol(protocol_name): Trả về protocol( thực thể của một Protocolclass) có tên trong dấu ngoặc @protocol(không có tham số) cũng hợp lệkhi khai báo chuyển tiếp(forward declarations)

 @encode(type_spec): Cho ta chuỗi đã được encode của tham sốtype_spec

 @”string”: Định nghĩa một hằng chuỗi NSString object và khởi tạo chuỗivới 7-bit chuẩn ASCII-encoded

18

Trang 19

 @”string1″ @”string2″ …@”stringN”: Định nghĩa một hằng chuỗiNSString object Chuỗi được tạo ra là kết quả của việc nối các chuỗi xácđịnh trong các directives.

 @synchronized(): Định nghĩa một khối mã lệnh mà chỉ được chạy(execute) bằng một thread tại mỗi thời điểm

2.2.3 Nguyên tắc đặt tên biến, hằng… trong Objective – C

2.2.3.1 Class.

Khi đặt tên class bắt đầu bằng ký tự hoa

Vd: khởi tạo 1 class

-( void) myMethod {//code

}

Trang 20

2.2.4 Class (lớp) trong Objective – C

2.2.4.1 Định nghĩa lớp

Lớp(class) trong objective-c được định nghĩa thành 2 phần tương tự nhưC/C++ Một filw *.h dùng để khai báo trước các biến, phương thức , file*.m sửdụng định nghĩa phần thực thi các thành phần biến, phương thức đã được định nghĩatrong file*.h

2.2.5 Phạm vi truy xuất biến

 @private: giới hạn phạm vi trong lớp mà biến thể hiện được khai báo

 @Protected (mặc định): giới hạn phạm vi trong lớp và lớp con kế thừa

mà biến được khai báo

 @public: không giới hạn pham vi truy xuất

2.2.6 Các phương thức trong Objective – C

Trong objective-c có 2 loại phương thức (Class method và instance method)

[Object newMethod];

Trang 22

CHƯƠNG 3 PHÂN TÍCH THIẾT KẾ HỆ THỐNG

3.1 PHÂN TÍCH YÊU CẦU

Chương 1 của luận văn đã đề cập đến ý tưởng cũng như các nội dung trọngyếu của đề tài “Xây dựng ứng dụng học tiếng Anh trên nền tảng iOS” Phần này sẽ

mô tả chi tiết về các yêu cầu cùng các nội dung cần thực hiện của bài toán

3.1.1 Đối tượng sử dụng

Ứng dụng học tiếng Anh Bilo được phát triển cho người sử dụng điện thoạithông minh và máy tính bảng sử dụng các hệ điều hành Android, iOS hay WindowsPhone Trong phạm vi đồ án tốt nghiệp, ứng dụng được phát triển cho điện thoạithông minh sử dụng hệ điều hành iOS

Ứng dụng cũng hướng tới những người có nhu cầu rèn luyện, tăng cường khảnăng sử dụng tiếng Anh với 4 kĩ năng: nghe, nói, đọc và viết

3.1.2 Yêu cầu chức năng

Ứng dụng học tiếng Anh Bilo gồm có phần chính là phần ứng dụng được càiđặt trên thiết bị iOS và đảm bảo thực hiện được các chức năng dưới đây:

3.1.2.1 Chức năng xem danh sách tất cả các bài học

Ứng dụng học tiếng Anh Bilo cung cấp cho người học tổng cộng 98 bài họcvới các thể loại khác nhau, ở chức năng này, hệ thống sẽ hiển thị toàn bộ thông tincủa 98 bài học và cho phép người dùng chọn các bài học

3.1.2.2 Chức năng thực hiện màn chơi ở chế độ chơi Surfer

Chế độ chơi Surfer là cách đầu tiên để học từ vựng, ở chế độ chơi này ngườichơi sẽ lướt sang trái hoặc phải để học, mỗi màn hình sẽ chứa hình ảnh mô tả từ ởtrung tâm, hệ thống cho phép người dùng tap vào hình ảnh để phát âm từ đó và cóthể phát lại nhiều lần khi được tap vào, chức năng này giúp người dùng luyện khảnăng nghe một cách hiệu quả, trong hình ảnh có một nút có thể nhấn vào đó để biếtnghĩa tiếng việt của từ, bên cạnh đó phía dưới hình ảnh còn có chế độ ghi âm giọngphát âm và phát lại để người dùng so sánh với bản gốc, chức năng này giúp chongười dùng bước đầu hiểu được nghĩa của từ, cách phát âm, và cách viết của từ

3.1.2.3 Chức năng thực hiện màn chơi ở chế độ chơi TapTap

Sau khi học xong ở chế độ chơi Surfer, người dùng có thể kiểm tra lại kiếnthức của mình thông qua chế độ chơi TapTap ở chế độ này, hệ thống sẽ liệt kê tất

cả các từ vựng có trong bài học và hiển thị lên màn hình, người dùng có thể xem chi

22

Trang 23

tiết bằng cách tap vào hình ảnh cần xem, hệ thống sẽ hiển thị một hình ảnh lớn hơn,tương tự như chế độ chơi Surfer, người dùng có thể tap nhiều lần để nghe âm phát

âm của từ và nhấn nút hiển thị nghĩa để hiển thị nghĩa tiếng việt

3.1.2.4 Chức năng thực hiện màn chơi ở chế độ True or False

Sau khi người dùng học xong ở hai chế độ Surfer và TapTap, chế độ chơiTrue or False là màn chơi giúp người dùng kiểm tra kiến thức của họ, ở màn chơinày hệ thống sẽ hiển thị một chuỗi kí tự kèm theo âm thanh phát âm của từ và mộthình ảnh gợi ý, ở phía dưới màn hình có hai nút đúng/ sai, người dùng có nhiệm vụkiểm tra hình ảnh, chuỗi kí tự và âm thanh phát âm đó có đúng là một từ hay khôngbằng cách chọn đúng hoặc sai, nếu người dùng trả lời đúng hệ thống sẽ cộng 10điểm, nếu sai sẽ trừ 10 điểm, người dùng có thể nhấn nút hiển thị nghĩa để xemnghĩa tiếng việt của từ Màn chơi này sẽ giúp người học luyện khả năng nghe

3.1.2.5 Chức năng thực hiện màn chơi ở chế độ chơi Photo Touch

Sau khi người dùng hoàn thành xong màn chơi True or False, để tăng độ khóthì hệ thống sẽ chọn ngầu nhiên từ 3-5 hình ảnh để hiển thị, người dùng sẽ chọnhình ảnh nào đúng với từ sẽ được cộng điểm và chuyển sang từ tiếp theo, nếu sai sẽ

bị trừ điểm và hình ảnh đó sẽ được ẩn đi, qua mỗi từ hệ thống từ động phát âm phát

âm của từ

3.1.2.6 Chức năng thực hiện màn chơi ở chế độ chơi Reader

Tương tự ở chế độ chơi Photo Touch, nhưng ở màn chơi này, qua mỗi từ hệthống sẽ không tự động phát âm âm thanh của từ nữa, người dùng muốn nghe âmphát âm phải nhất nút phát âm ở phía dưới hình ảnh, chức năng này sẽ rèn luyện kỹnăng phát âm cho người dùng

Trang 24

3.1.2.7 Chức năng thực hiện màn chơi ở chế độ chơi Memory

Để giúp người dùng tập luyện khả năng ghi nhớ và kĩ năng nghe của mình,

hệ thống cung cấp cho người dùng màn chơi Memory, ở chế độ chơi này, hệ thống

sẽ hiển thị 3 cặp hình ảnh ứng với 3 cặp từ khác nhau và được sắp xếp ngẫu nhiên,người dùng có nhiệm vụ tìm hai hình giống nhau bằng cách tap vào hình ảnh, mỗimột cặp từ sau khi được tìm giống nhau sẽ được ẩn đi Hệ thống sẽ chuyển sang 3cặp từ tiếp theo khi người chơi tìm đủ 3 cặp từ ở màn hình này

3.1.2.8 Chức năng thực hiện màn chơi ở chế độ chơi Word Builder

Ở màn chơi này, hệ thống sẽ tách từ ra thành các kí tự và sắp xếp ngẫu nhiênkèm với hình ảnh mô tả từ vụng và âm thanh phát âm của nó, người dùng có nhiệm

vụ kéo thả các kí tự lại với nhau để được một từ hoàn chỉnh và đúng chính tả, nếuđúng sẽ chuyển sang từ tiếp theo, sai thì các kí tự sẽ về vị trí ban đầu Ở màn chơinày người dùng sẽ luyện được kĩ năng nghe, ghi nhớ và đặc biệt là kĩ năng viết

3.1.2.9 Chức năng xem danh sách các bài đang học

Sau khi mở ứng dụng, hệ thống sẽ lấy danh sách các bài học đang học đểhiển thị cho người dùng tiếp tục học, nếu lần đầu tiên khi người dùng khởi độngứng dụng, hệ thống sẽ mặc định bài đang học là bài cuối cùng trong danh sách tất cảbài học, và cho phép người dùng có thể thay đổi

3.1.2.10 Chức năng tìm kiếm bài học

Chức năng này hỗ trợ người dùng tìm kiếm bài học một cách nhanh chóng vàhiệu quả, cho phép người dùng nhập vào tên của bài học, từ vựng hay nghĩa của từvựng, hệ thống sẽ ưu tiên tên của bài học sẽ được hiển thị lên đầu, tiếp sau đó là từvựng và nghĩa của từ vựng

3.1.3 Yêu cầu phi chức năng

Ứng dụng được phát triển trên hệ điều hành iOS với yêu cầu phiên bản từ 7.0trở lên Ứng dụng phải hoạt động tốt trên tất cả các thiết bị đạt yêu cầu

Giao diện ứng dụng cần được thiết kế thân thiện, trình bày khoa học, hợp lý,

dễ dàng sử dụng với mọi người dùng, đặc biệt là những người mới bắt đầu học tiếngAnh

24

Trang 26

3.2.1.2 Chi tiết các ca sử dụng

Bảng 1: Ca sử dụng xem danh sách tất cả các bài học đang học

Điều kiện trước:

Ứng dụng kết thúc việc hiển thị màn hình Welcome

Điều kiện sau:

Nếu ca sử dụng thành công, người sử dụng sẽ xem danh sách bài học đang học,chọn bài học và bắt đầu học

Luồng sự kiện chính:

- Người dùng muốn xem danh sách các bài học

- Hệ thống kết nối cơ sở dữ liệu, lấy tất cả các bài đang học và hiển thị lên màn hình

+ Hình ảnh là thumbnail của bài học

+ Chuỗi kí tự là tên của bài học

- Người dùng trượt lên/xuống

- Hệ thống hiển thị các bài học trước/sau trong danh sách

Các luồng khác:

- Lấy danh sách bị lỗi: hiển thị thông báo lỗi

- Lấy thumbnail lỗi: hiển thị hình ảnh mặc định

Bảng 2: Ca sử dụng xem danh sách tất cả các bài học

26

Trang 27

Điều kiện trước:

Hệ thống đang hiển thị màn hình danh sách các bài đang học

Điều kiện sau:

Nếu ca sử dụng thành công, người dùng chọn cho mình các bài học, danh sách

sẽ hiển thị ở màn hình đang học

Luồng sự kiện chính:

- Người dùng muốn xem danh sách các bài học

- Hệ thống kết nối cơ sở dữ liệu, lấy tất cả các bài học và hiển thị lên màn

hình

+ Hình ảnh là thumbnail của bài học

+ Chuỗi kí tự là tên của bài học

- Người dùng trượt lên/xuống

- Hệ thống hiển thị các bài học trước/sau trong danh sách

Các luồng khác:

- Lấy danh sách bị lỗi: hiển thị thông báo lỗi

- Lấy thumbnail lỗi: hiển thị hình ảnh mặc định

Bảng 3: Ca sử dụng xem danh sách các màn chơi

Tác nhân:

Người dùng

Mô tả:

Trang 28

Ca sử dụng này mô tả cách thức người dùng xem danh sách màn chơi

Điều kiện trước:

Hệ thống đang hiển thị màn hình danh sách bài đang học

Điều kiện sau:

Nếu ca sử dụng thành công, người dùng có thể bắt đầu học hoặc chơi

Luồng sự kiện chính:

- Người dùng có thể chọn bất cứ bài học nào

- Hệ thống sẽ hiển thị danh sách các màn chơi

+ Hình ảnh: hình ảnh của màn chơi+ Chuỗi kí tự: tên của màn chơi

- Người dùng chọn màn chơi bằng cách chọn bài hình ảnh của màn chơi

- Hệ thống chuyển qua màn hình học/ chơi ứng với màn chơi mà ngườidùng chọn

Luồng sự kiện phụ:

- Người dùng nhấn nút “Back”

- Hệ thống quay lại màn hình xem danh sách các bài học đang học

Các luồng khác:

- Hệ thống quay lại màn hình danh sách các bài đang học

Bảng 4: Ca sử dụng thực hiện màn chơi Surfer

Tác nhân:

Người dùng

Mô tả:

Ca sử dụng này mô tả cách thức người dùng thực hiện màn chơi Surfer

Điều kiện trước:

28

Trang 29

Hệ thống đang hiển thị màn hình danh sách các màn chơi

Điều kiện sau:

Luồng sự kiện chính:

- Người dùng tap vào hình ảnh của màn chơi Surfer

- Hệ thống sẽ hiển thị hình ảnh của từ đầu tiền và phát âm từ đó, màn hình

sẽ có các nội dung sau:

+ Hình ảnh: hình ảnh của từ+ Chuỗi kí tự: tên của từ+ nút hiển thị nghĩa+ nút ghi âm

+ nút phát âm của người dùng

- Người dùng nhấn nút hiển thị nghĩa

- Hệ thống sẽ hiển thị nghĩa của từ

- Người dùng nhấn nút ghi âm

- Hệ thống cho phép người dùng ghi âm giọng phát âm của từ

- Hệ thống quay lại màn hình xem danh sách các màn chơi

- Người dùng tap vào hình ảnh

- Hệ thống sẽ phát âm từ đó

- Người dùng lướt sang trái/phải

- Hệ thống sẽ hiển thị từ trước/sau (nếu tồn tại từ )

Các luồng khác:

- Hệ thống quay lại màn hình danh sách các màn chơi

Bảng 5: Ca sử dụng thực hiện màn chơi TapTap

Trang 30

Tác nhân:

Người dùng

Mô tả:

Ca sử dụng này mô tả cách thức người dùng thực hiện màn chơi Taptap

Điều kiện trước:

Hệ thống đang hiển thị màn hình danh sách các màn chơi

Điều kiện sau:

Luồng sự kiện chính:

- Người dùng tap vào hình ảnh của màn chơi Taptap

- Hệ thống sẽ hiển tất cả thumbnail của các từ thuộc bài học đó, màn hình

sẽ có các nội dung sau:

+ Hình ảnh: hình ảnh của từ

- Người dùng tap vào hình ảnh của từ

- Hệ thống sẽ hiển thị màn hình chi tiết từ, chứa các nội dung sau:

+ Hình ảnh: hình ảnh của từ+ Chuỗi kí tự: tên của từ+ nút hiển thị nghĩa

- Người dùng nhấn nút hiển thị nghĩa

- Hệ thống sẽ hiển thị nghĩa của từ

- Người dùng tap vào hình ảnh

- Hệ thống sẽ phát âm từ đó

Luồng sự kiện phụ:

- Người dùng nhấn nút “Back”

- Hệ thống quay lại màn hình xem danh sách các màn chơi

- Người dùng tap vào phái ngoài hình ảnh của màn hình chi tiết

- Hệ thống sẽ quay về màn hình chính của Taptap

- Người dùng lướt lên trên/xuống dưới

- Hệ thống sẽ hiển thị từ trước/sau (nếu tồn tại từ )

30

Trang 31

Các luồng khác:

- Hệ thống quay lại màn hình danh sách các màn chơi

Bảng 6: Ca sử dụng thực hiện màn chơi True or False

6 THỰC HIỆN MÀN CHƠI TRUE OR FALSE

Tác nhân:

Người dùng

Mô tả:

Ca sử dụng này mô tả cách thức người dùng thực hiện màn chơi True or False

Điều kiện trước:

Hệ thống đang hiển thị màn hình danh sách các màn chơi

Điều kiện sau:

Nếu ca sử dụng thành công, hệ thống sẽ hiển thị điểm của màn chơi

+ nút chọn đúng+ nút chọn sai

- Người dùng nhấn nút hiển thị nghĩa

- Hệ thống sẽ hiển thị nghĩa của từ

- Người dùng tap vào hình ảnh

Trang 32

- Hệ thống quay lại màn hình xem danh sách các màn chơi

Các luồng khác:

- Hệ thống quay lại màn hình danh sách các màn chơi

32

Trang 33

Bảng 7: Ca sử dụng thực hiện màn chơi PhotoTouch

Tác nhân:

Người dùng

Mô tả:

Ca sử dụng này mô tả cách thức người dùng thực hiện màn chơi PhotoTouch

Điều kiện trước:

Hệ thống đang hiển thị màn hình danh sách các màn chơi

Điều kiện sau:

Nếu ca sử dụng thành công, hệ thống sẽ hiển thị điểm của màn chơi

Luồng sự kiện chính:

- Người dùng tap vào hình ảnh của màn chơi PhotoTouch

- Hệ thống sẽ thị ngẩu nhiên từ 3 - 5 hình ảnh của từ vựng và phát âm 1 từvựng chính, màn hình sẽ có các nội dung sau:

+ Hình ảnh: hình ảnh của từ+ Chuỗi kí tự: tên của từ nào đó

- Người dùng tap vào hình ảnh

- Hệ thống sẽ phát âm từ vựng chính, kiểm tra từ vựng đó có đúng không,nếu đúng hệ thống sẽ cộng điểm và chuyển sang từ kế tiếp, ngược lại hệthống sẽ trù điểm và ẩn hình ảnh từ đó đi

Trang 34

Bảng 8: Ca sử dụng thực hiện màn chơi Reader

Tác nhân:

Người dùng

Mô tả:

Ca sử dụng này mô tả cách thức người dùng thực hiện màn chơi Reader

Điều kiện trước:

Hệ thống đang hiển thị màn hình danh sách các màn chơi

Điều kiện sau:

Nếu ca sử dụng thành công, hệ thống sẽ hiển thị điểm của màn chơi

Luồng sự kiện chính:

- Người dùng tap vào hình ảnh của màn chơi Reader

- Hệ thống sẽ thị ngẩu nhiên từ 3 - 5 hình ảnh của từ vựng, màn hình

sẽ có các nội dung sau:

+ Hình ảnh: hình ảnh của từ+ Chuỗi kí tự: tên của từ nào đó+ Nút phát âm

- Người dùng tap vào hình ảnh

- Hệ thống sẽ phát âm từ vựng chính, kiểm tra từ vựng đó có đúng

không, nếu đúng hệ thống sẽ cộng điểm và chuyển sang từ kế tiếp,ngược lại hệ thống sẽ trù điểm và ẩn hình ảnh từ đó đi

- Hệ thống quay lại màn hình danh sách các màn chơi

Bảng 9: Ca sử dụng thực hiện màn chơi Memory

Tác nhân:

34

Trang 35

Người dùng

Mô tả:

Ca sử dụng này mô tả cách thức người dùng thực hiện màn chơi Memory

Điều kiện trước:

Hệ thống đang hiển thị màn hình danh sách các màn chơi

Điều kiện sau:

Nếu ca sử dụng thành công, hệ thống sẽ hiển thị điểm của màn chơi

Luồng sự kiện chính:

- Người dùng tap vào hình ảnh của màn chơi Memory

- Hệ thống sẽ thị ngẩu nhiên 6 hình ảnh của từ vựng, và úp các hình ảnhlại, màn hình sẽ có các nội dung sau:

+ Hình ảnh: hình ảnh của từ khi ngửa, ảnh mặc định khi úp

- Người dùng tap vào hình ảnh

- Hệ thống sẽ phát âm từ vựng đó và lật ngửa hình ảnh đó ra, kiểm tra nếu

đã lật 2 hình ảnh, hệ thống sẽ kiểm tra tính giống nhau của 2 hình ảnh

đó, nếu giống, sẽ cộng điểm và ẩn hai hình đó đi, nếu không giống sẽ trừđiểm và úp hai hình lại, nếu đã ẩn hết 6 hình ảnh, hệ thống sẽ chuyểnsang từ kế tiếp

Luồng sự kiện phụ:

- Người dùng nhấn nút “Back”

- Hệ thống quay lại màn hình xem danh sách các màn chơi

Các luồng khác:

- Hệ thống quay lại màn hình danh sách các màn chơi

Bảng 10: Ca sử dụng thực hiện màn chơi Word builder

10 THỰC HIỆN MÀN CHƠI WORD BUILDER

Tác nhân:

Người dùng

Mô tả:

Ngày đăng: 28/05/2016, 19:14

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[3] Cao Quảng Bình. Luận văn tốt nghiệp kỹ sư. 2014 [4] Trang web: http://stackoverflow.com Link
[5] Trang web: http://developer.apple.com Link
[1] Nguyễn Thế Linh. Slide bài giảng lập trình iOS. 2009 Khác
[2] Nguyễn Đức Vĩnh. Luận văn tốt nghiệp kỹ sư. 2014 Khác
[6] Các tài liệu khác từ bạn bè và internet Khác

HÌNH ẢNH LIÊN QUAN

Hình 1: Cấu trúc hệ điều hành iOS - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 1 Cấu trúc hệ điều hành iOS (Trang 10)
Hình 2: Ngôn ngữ lập trình Objective - C - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 2 Ngôn ngữ lập trình Objective - C (Trang 15)
Hình 3: Biểu đồ ca sử dụng tổng thể - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 3 Biểu đồ ca sử dụng tổng thể (Trang 24)
Hình 5: Biểu đồ tuần tự - Xem danh sách bài học - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 5 Biểu đồ tuần tự - Xem danh sách bài học (Trang 37)
Hình 7: Biểu đồ tuần tự - Thực hiện màn chơi TapTap - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 7 Biểu đồ tuần tự - Thực hiện màn chơi TapTap (Trang 38)
Hình 8: Biểu đồ tuần tự - Thực hiện màn chơi True or False - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 8 Biểu đồ tuần tự - Thực hiện màn chơi True or False (Trang 38)
Hình 9: Biểu đồ tuần từ - Thực hiện màn chơi Photo Touch - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 9 Biểu đồ tuần từ - Thực hiện màn chơi Photo Touch (Trang 39)
Hình 11: Biểu đồ tuần tự - Thực hiện màn chơi Memory - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 11 Biểu đồ tuần tự - Thực hiện màn chơi Memory (Trang 40)
Hình 13: Biểu đồ hoạt động – Thực hiện màn chơi - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 13 Biểu đồ hoạt động – Thực hiện màn chơi (Trang 41)
Hình 14: Biểu đồ hoạt động – Thực hiện màn chơi True or False - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 14 Biểu đồ hoạt động – Thực hiện màn chơi True or False (Trang 42)
Hình 16: Biểu đồ hoạt động – Thực hiện màn chơi Memory - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 16 Biểu đồ hoạt động – Thực hiện màn chơi Memory (Trang 44)
Hình 19: Mô hình cơ sở dữ liệu quan hệ - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 19 Mô hình cơ sở dữ liệu quan hệ (Trang 46)
Hình 21: Trình tự tạo câu hỏi cho chế độ chơi True or False - Xây dựng ứng dụng học tiếng anh trên nền tảng iOS
Hình 21 Trình tự tạo câu hỏi cho chế độ chơi True or False (Trang 50)

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