Tải bản đầy đủ (.pptx) (28 trang)

Nghiên cứu real time, phonegap xây dựng game đối kháng trực tuyến trên đa nền tảng

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.25 MB, 28 trang )

NGHIÊN CỨU REAL TIME, PHONEGAP.
XÂY DỰNG G AME ĐỐI KHÁNG
TRỰC TUYẾN TRÊN ĐA NỀN TẢNG.
GVHD: NGUYỄN PHÚC HƯNG
ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH
Nội dung thuyết trình
1. Tổng quan ứng dụng thời gian thực
2. Giới thiệu NodeJS, SocketIO
3. Tổng quan đa nền tảng
4. Giới thiệu Phonegap
5. Xây dựng ứng dụng
6. Kết quả đạt được
1.Tổng quan ứng dụng thời gian thực
Thời kì Web 1.0
Thời kì Web 2.0
-
Xuất hiện công nghệ AJAX, Websoket…
-
Đi kèm thư viện hỗ trợ: jQuery, Prototype,…
Thời kì Web hiện đại
-
Sử dụng công nghệ NodeJS, Socket.IO, AngularJS…
1.Tổng quan ứng dụng thời gian thực
Mô hình ứng dụng thời gian thực
Nội dung thuyết trình
1. Tổng quan ứng dụng thời gian thực
2. Giới thiệu NodeJS, SocketIO
3. Tổng quan đa nền tảng
4. Giới thiệu Phonegap
5. Xây dựng ứng dụng
6. Kết quả đạt được


2. Giới thiệu NodeJS, SocketIO
NodeJS
-
Xây dựng từ bộ thư viện Javascript V8 (by Google)
-
Sử dụng Javascript để lập trình cho cả Client và Server
-
Mô hình Non-Blocking IO
-
Xử lý theo hướng dự kiện (event-driven)
-
Nhiều thư viện hỗ trợ thông qua npm
2. Giới thiệu NodeJS, SocketIO
SocketIO
-
Là một mô hình websocket được đóng gói để chạy với NodeJS
-
Giữ cho Client và Server luôn ở trạng thái "keep-alive“
-
Khả năng phản hồi nhanh với các yêu cầu
-
Hỗ trợ các ứng dụng chạy thời gian thực
2. Giới thiệu NodeJS, SocketIO
- Ở mô hình Non-Blocking, ứng dụng
vẫn có thể tiếp tục chạy mà không bị
khóa
- Điều này giúp ứng dụng cải thiện
được thời gian xử lý cũng như tương tác
nhiều hơn với người dùng
Nội dung thuyết trình

1. Tổng quan ứng dụng thời gian thực
2. Giới thiệu NodeJS, SocketIO
3. Tổng quan đa nền tảng
4. Giới thiệu Phonegap
5. Xây dựng ứng dụng
6. Kết quả đạt được
3.Tổng quan đa nền tảng
Trên phương diện WEB
-
Ứng dụng có thể chạy trên các trình duyệt khác nhau
Ví dụ: Trình duyệt: Chrome, Firefox, Safari, IE,…
Trên phương diện rộng:
-
Ứng dụng chạy được trên các hệ điều hành và thiết bị khác nhau
Ví dụ:
Hệ điều hành: Windows, iOS, Android,
Thiết bị: PC, Mobile, Wearable,…
3.Tổng quan đa nền tảng
Native Application:
-
Là những ứng dụng được xây bằng ngôn ngữ lập trình tương ứng với nền tảng
Ví dụ: iOS (Object-C), Android (Java), WindowsPhone (C#)
Web Application:
-
Là các ứng dụng được xây dựng trên nền tảng Web (điển hình là HTML5
Hybird Application:
-
Là ứng dụng lai giữa 2 khái niệm Native App và Web App trên.
Ví dụ: Ứng dụng Native mở một WebView nằm bên trong ứng dụng
3.Tổng quan đa nền tảng

- Đòi hỏi phải tốn nhiều thời gian và
công sức
- Xây dựng ứng dụng đa nền tảng là
thách thức lớn đối với các nhà phát
triển
Nội dung thuyết trình
1. Tổng quan ứng dụng thời gian thực
2. Giới thiệu NodeJS
3. Tổng quan đa nền tảng
4. Giới thiệu Phonegap
5. Xây dựng ứng dụng
6. Kết quả đạt được
4.Giới thiệu Phonegap
-
Được Adobe mua lại từ Nitobi (nhà phát triển ban đầu) vào 10/2011
-
Là công cụ hỗ trợ phát triển ứng dụng đa nền tảng
-
Ví dụ: iOS, Android, WindowsPhone, Bada, WebOS…
-
Sử dụng HTML, CSS và JavaScript xây dựng ứng dụng
-
Hoàn toàn miễn phí
4.Giới thiệu Phonegap
- Sử dụng Cordova dể tương tác với các
thành phần bên dưới của ứng dụng
- Giúp ứng dụng sử dụng được các tài
nguyên thiết bị mà không cần thông qua
native code
Bảng tính năng Phongap hỗ trợ

-
Đa số các tài nguyên trên 2 hệ
điều hành có thị trường lớn nhất
hiện nay là iOS và Android đều
được hỗ trợ đây đủ
-
Những tính năng trên các nền tảng
khác vẫn đang được phát triển
theo từng ngày
4.Giới thiệu Phonegap
Ứng dụng được đóng gói và đưa sang các nền tảng khác nhờ Phonegap
Nội dung thuyết trình
1. Tổng quan ứng dụng thời gian thực
2. Giới thiệu NodeJS
3. Tổng quan đa nền tảng
4. Giới thiệu Phonegap
5. Xây dựng ứng dụng
6. Kết quả đạt được
5.Xây dựng ứng dụng
-
Kết hợp NodeJS và Phonegap để xây dựng một game đối kháng theo thời
gian thực và trên đa nền tảng với yêu cầu sau:
-
Khả năng tương tác và phản hồi nhanh (real time) khi người chơi thực
hiện thao tác trên hệ thống
-
Chạy được trên các nền tảng khác nhau (cross platform) ở môi trường
Web cũng như là những thiết bị động phổ thông (Mobile, Tablet…)
5.Xây dựng ứng dụng
Chức năng chính của hệ thống:


Đăng nhập / đăng ký người chơi mới

Hệ thống phòng chia theo từng cấp độ

Game đối kháng đua xe
Chức năng thống kê:
 Thống kế số trận đấu của những người tham gia game

Thống kê số lượt người dùng truy cập trong ngày

Thống kê số lượt người dùng đang trực tuyến
5.Xây dựng ứng dụng
Game: Lưu trữ thông tin các game
Room: Lưu trữ danh sách phòng
Racer_Result: Lưu trữ các kết
quả của người chơi
Racer_Text: Lưu trữ các đoạn text
User: Lưu trữ thông tin của người
dùng
5.Xây dựng ứng dụng
Mô hình Usecase
-
Người dùng phải đăng nhập để có thể sử dụng hệ
thống nếu chưa có tài khoản phải đăng ký mới.
-
Sau khi đăng nhập người dùng có thể chọn bàn
phù hợp để bắt đầu chơi
-
Các kết quả chơi được của người dùng được lưu

lại để người dùng có theo dõi những lần kế tiếp
5.Xây dựng ứng dụng
Sơ đồ Class
-
Ở mô hình client-server này với mỗi hàm ở phía client
sẽ có 1 hàm xử lý bên phía server tương ứng (theo
hướng sự kiện)
-
Cấu trúc truyền nhận dữ liệu giữa 2 bên client –
server phải được thống nhất để tránh thất thoát và sai
lệch dữ liệu khi truyền nhận
-
Lớp liên quang đến quản lý người dùng được tách biệt
với các lớp xử lý chức năng
Nội dung thuyết trình
1. Tổng quan ứng dụng thời gian thực
2. Giới thiệu NodeJS
3. Tổng quang đa nền tảng
4. Giới thiệu Phonegap
5. Xây dựng ứng dụng
6. Kết quả đạt được
6. Kết quả đạt được
Ưu điểm
-
Ứng dụng được xây dựng gọn và nhẹ được quản lý bởi socket.io.
-
Cho phép nhiều người cùng tham gia và tương tác thời gian thực
-
Cách chơi mới lạ và độc đáo kích thích sự ganh đua
-

Được tích hợp trên nhiều nền tảng nên rất dễ dàng để tiếp cận với nhiều
người dùng (Web hoặc thiết bị di động).

×