Đối tượng Text field thường được sử dụng để người dùng nhập dữ liệu đầu vào cho ứng dụng. Chẳng hạn như bạn viết chương trình tính tổng hai số, thì bạn sẽ dùng Text field để người dùng nhập vào hai số cần tính tổng, và bạn sẽ sử dụng giá trị nhập
Hình 2.62 Text Field
Text field cho phép tùy chỉnh canh lề trái/giữa/phải, tùy chỉnh font chữ và kích thước chữ trong Text field. Hơn nữa, bạn có thể tùy chỉnh hình dạng của Text field, cũng như định dạng nội dung gợi ý cho người dùng (placeholder).
số người thậm chí không đưa được con chim trong trò chơi bay nổi qua lỗ đầu tiên. Trò này khó đến nỗi khiến người chơi vừa bực mình lại vừa buồn cười, vừa thấy khó chơi nhưng lại vô cùng thú vị. Những bình luận trong App Store cho thấy, người chơi vừa ghét lại cũng rất thích Flappy Bird. Và đây có lẽ chính là lý do hàng đầu cho thành công của trò chơi…”
Tình cờ biết đến game Flappy Bird trên mạng của anh Nguyễn Hà Đông, ngay từ lần đầu em đã có ý định tìm hiểu lập trình IOS, với sự đam mê của mình, sau một thời gian suy nghĩ, em quyết định nghiên cứu và tạo ra trò chơi này.
3.2 Mô hình hóa yêu cầu
3.2.1 Xác định các tác nhân
Vì phần mềm dùng trên điện thoại nên chỉ có một tác nhân là người dùng.
3.2.2 Xác định các trường hợp sử dụng (Use case)
3.2.2.1 Liệt kê các trường hợp sử dụng
- Khởi động ứng dụng - Xem hướng dẫn - Nhập tên người chơi - Chơi game
- Đóng ứng dụng
3.2.2.2 Đặc tả các trường hợp sử dụng
Khởi động ứng dụng: - Tác nhân: Người dùng.
- Mô tả: Khi bắt đầu chơi game thì người dùng cần phải khởi động ứng dụng. Tùy chọn xem hướng dẫn.
-Tác nhân: Người dùng.
Nhập tên người chơi: - Tác nhân: Người dùng
- Mô tả: Người dùng nhập tên của mình vào ô Tên của bạn để bắt đầu chơi. Chơi game:
-Tác nhân: Người dùng
-Mô tả: Khi chọn mục Play thì người chơi sẽ bắt đầu chơi game. Đóng ứng dụng:
- Tác nhân: Người dùng.
- Mô tả: Khi chơi xong người dùng sẽ đóng ứng dụng.
3.2.2.3 Biểu đồ trường hợp sử dụng
Biểu đồ trường hợp sử dụng Người dùng
Mo_Ung_Dung Dong_Ung_Dung
Choi_Game
Nhap_Ten_Nguoi_Choi Nguoi_Choi
Xem_Huong_Dan
: FrmKhoiDongUngDung : FrmDongUngDung : FrmChoiGame
: FrmNhapTenNguoiChoi : FrmXemHuongDan
Hình 3.2 Các lớp biên
3.3.2 Các lớp điều khiển
Lớp điều khiển là lớp làm nhiệm vụ điều khiển mọi hoạt động của các lớp khác. Tương ứng với mỗi Use Case có thể sẽ có một lớp điều khiển làm nhiệm vụ gửi thông điệp cho các lớp liên quan.
Ứng dụng Game có những lớp điều khiển sau:
: CtlKhoiDongUngDung : CtlDongUngDung : CtlChoiGame
: CtlNhapTenNguoiChoi : CtlXemHuongDan
3.4. Biểu đồ hoạt động Play Xem Huong Dan Choi Game Hình 3.4 Biểu đồ hoạt động
Trò chơi được trình bày theo phong cách side-scroller (phong cách game với các đối tượng được nhìn thấy ở mặt bên (side-view) và di chuyển từ cạnh trái sang cạnh phải của màn hình), trong đó người chơi điều khiển một chú chim, cố gắng vượt qua các hàng ống màu xanh lá cây mà không chạm vào chúng.
Đặc điểm nổi bật - Thực sự rất khó
Tất nhiên, đây là điều đầu tiên mọi người nhận thấy khi chơi Flappy Bird. Một số nhóm nghiên cứu công nghệ ở châu Á thậm chí còn không bay qua được ống đầu tiên. Nó khó khăn dẫn đến sự bực bội, khó chịu nhưng lạ là nó cũng khiến người dùng cảm thấy dễ chịu và thích thú.
Và điều này có lẽ là lý do lớn nhất cho sự thành công của nó. Người thích tự “tra tấn” bản thân, người muốn chia sẻ về nó. Sự khó khăn của trò chơi được tạo ra là để mọi người truyền miệng nhau.
- Quá dễ để hiểu cách chơi
Flappy Bird hầu như không có bất kì điều lệ khó hiểu khi bắt đầu chơi. Angry Birds, Clash of Clans và những trò chơi di động khác phải mất đến vài phút để hiểu làm thế nào để chơi. Trong khi đó, trong vòng 1 giây, một người lạ sẽ biết chơi Flappy Bird như thế nào. Điều đó có nghĩa là ai cũng có thể chơi và nó dường như hoàn toàn cân bằng với những khó khăn của trò chơi. Thật dễ dàng tìm hiểu nhưng lại gần như không thể làm chủ trò chơi này. Flappy Bird hay là ở chỗ đó.
- Tạo cảm giác có thể chiến thắng
Điều tệ nhất cũng là tốt nhất là Flappy Bird luôn mang lại cảm giác bạn có thể làm tốt hơn lần trước. Với Angry Bird, nhiều người dễ dàng hài lòng khi chỉ nhận được 2 ngôi sao ở một cấp độ, gọi là cảm giác “ít nhất tôi cũng vượt qua được màn
này”. Nhưng với Flappy Bird thì không có cái cảm giác tạm bợ như thế, nó chỉ có một cấp độ mà thôi, điểm số mới là vấn đề.
Khi không thể vượt qua, người chơi bị “chìm” trong cảm giác thất bại mà chỉ muốn đánh bại. Khi đã đạt điểm tương đối cao, bạn sẽ lên trên mạng tự hào: “Tôi được 20 điểm!” nhưng sự thật là luôn có người khác cao điểm hơn. Và bạn sẽ cố gắng vượt qua, đúng chứ?
- Giao diện đơn giản
Giao diện Game rất đơn giản, chỉ có là một con chim và một vài ống nước. Hoạt cảnh được xây dựng khá đơn giản.
4.2 Giao diện ứng dụng Game Flappy Bird
Hình 4.2 Giao diện ứng dụng Game
Từ màn hình Giới thiệu, chọn Hƣớng dẫn.
Chức năng của Hƣớng dẫn là giới thiệu cách chơi và nhiệm vụ của người chơi. Ngoài ra người chơi có thể chọn nút Play để bắt đầu ngay mà không cần phải sang màn hình hướng dẫn.
Hình 4.3 Giao diện ứng dụng Game
Màn hình chính của Game:
Chọn Play Now!
Chạm vào màn hình để giữ cho con chim không chạm đất, từ từ vượt qua các ống nước để nhận điểm.
Điểm sẽ được hiển thị phía trên, màu đen.
Hình 4.4 Giao diện ứng dụng Game
thua và nhận được thông báo Play again!
Có thể chĐiểm lượt chơi đó sẽ được hiển thị ọn Play again! để chơi lại. phía trên màu đỏ.
KẾT LUẬN
Tuy Flappy Bird là một game đơn giản, nhưng để chinh phục được nó là cả một quá trình dài. Sau một thời gian tìm hiểu và áp dụng, bước đầu em đã có những hiểu biết cơ bản về hệ điều hành iOS và ngôn ngữ lập trình iOS Swift. Biết và nắm vững quá trình tạo một file Project trong lập trình trên nền iOS.
Xây dựng được ứng dụng thực tế cho điện thoại di động trên hệ điều hành iOS, hiểu và sử dụng được các đối tượng, phương thức hỗ trợ lập trình trên nền hệ điều hành iOS. Ngoài ra còn hiểu biết về phần thiết kế giao diện hiển thị cho điện thoại di động iOS, các cú pháp và xử dụng thành thạo hệ điều hành Mac OS X trên máy Macbook và iOS chạy trên điện thoại iPhone.
Do thời gian ngắn cùng với kiến thức của bản thân còn hạn chế nên chưa tìm hiểu sâu về các kiến thức liên quan tới hệ điều hành IOS và ngôn ngữ lập trình Swift, em chắc rằng điều đó sẽ được củng cố trong tương lai.
những thiếu sót đó em đã tích lũy được một số kinh nghiệm, nâng cao khả năng về lập trình đặc biệt là với hệ điều hành IOS.
TÀI LIỆU THAM KHẢO
[1] ThS. Lê Viết Trƣơng (2012), “Giáo trình Phân tích, thiết kế hướng đối tượng”. Nhà xuất bản Thông tin và Truyền thông.
[2] Trang thông tin https://wikipedia.org
[3] Trang https://developer.apple.com [4] Trang https://swift.org/ [5] Trang https://github.com/apple/swift [6] Trang https://khoapham.vn [7] Trang https://osx.vn [8] Trang https://swift.freevnn.com [9] Trang https://laptrinhswift.com [10] Trang https://hocswift.com
... ... ... ... ... ... Đà Nẵng, ngày tháng năm 2016 Giảng viên
NHẬN XÉT CỦA GIẢNG VIÊN PHẢN BIỆN ... ... ... ... ... ... ... ... ... ... ... Đà Nẵng, ngày tháng năm 2016 Giảng viên