Các biểu đồ lớp chi tiết

Một phần của tài liệu xây dựng ứng dụng client cho hệ thống thông tin giao thông (Trang 34 - 41)

5.2.2.1. Biểu đồ lớp cho gói SMS.data:

Các lớp nằm trong gói data được thiết kế để lưu trữ những thông tin về tuyến đường, khu vực dựa trên hệ thống quản lý bản ghi RMS của J2ME

28

Hình 14: Biểu đồ lớp Location

Lớp Location chứa các trường thông tin về địa điểm, gồm có tên địa điểm, mã địa điểm và mã khu vực chứa địa điểm đó.

Ngoài hàm khởi tạo chứa các tham số tương ứng với các thuộc tính, lớp Location cũng có một hàm khởi tạo nhận tham số là một mảng kiểu byte. Hàm này sẽ được dùng khi dữ liệu về địa điểm được lấy từ cơ sở dữ liệu RMS, nó là một mảng kiểu byte.

Phương thức toByteArray() trả về một luồng byte dùng để lưu đối tượng Location vào RMS.

-Biểu đồ lớp Zone

Hình 15: Biểu đồ lớp Zone

Lớp Zone chứa các thông tin về khu vực bao gồm tên, mã và một danh sách lưu mã các địa điểm nằm trong khu vực. Danh sách này được cài đặt bằng kiểu Vector được hỗ trợ trong Java

Trong lớp Zone cũng có hàm khởi tạo và phương thức cho phép ghi và đọc trực tiếp lên cơ sở dữ liệu RMS.

29

Hình 16: Biểu đồ lớp DataRMS

5.2.2.2 Biểu đồ lớp cho gói SMS.gui

Gói SMS.gui chứa các lớp xây dựng nên các Form giao diện người dùng. Để đơn giản, trong ứng dụng demo này, em chỉ dùng các thành phần giao diện mức cao thuộc lớp con Screen của lớp Displayable

-Lớp DisplayManager

30

Đối với các ứng dụng di động trong J2ME, tại một thời điểm, trên màn hình thiết bị chỉ hiển thị một thể hiện Displayable. Lớp DisplayManager dùng để quản lý việc điều hướng giữa các khung giao diện một cách logic. Lớp DisplayManager đơn giản sử dụng cấu trúc dữ liệu ngăn xếp để lưu trữ tham chiếu đến các đối tượng form khác. Mỗi khi người dùng chọn một chức năng điều hướng (lệnh “chọn” hay “quay lại”), mỗi đối tượng Displayable tương ứng sẽ được đẩy vào ngăn xếp. Và lớp GiaoThongMIDlet sẽ thực hiện công việc lấy phần tử đầu tiên trong ngăn xếp và hiển thị lên màn hình. Khi người dùng muốn quay lại màn hình trước đó (khi người dùng chọn chức năng “quay lại”) thì đối tượng DisplayManager sẽ đẩy phần tử đầu tiên ra khỏi ngăn xếp.

Hình 18: Cơ chế hoạt động của Stack

-Lớp BaseForm

31

BaseForm là một lớp trừu tượng thừa kế từ lớp List. Nó khai báo các thuộc tính dùng chung đối với các Form dạng danh sách trong ứng dụng. Phương thức trừu tượng builForm() sẽ do các Form kế thừa nó cài đặt.

Hình 20: Các lớp kế thừa từ BaseForm

Các lớp SearchForm, ZoneForm, LocationInZoneForm đều kế thừa từ lớp BaseForm, chúng hiển thị lên màn hình một danh sách các địa điểm hoặc khu vực. Nếu người dùng chọn chức năng danh sách địa điểm, lớp SearchForm sẽ được đặt vào trong ngăn xếp của đối tượng DisplayManager. Từ màn hình này, nếu người dùng chọn các lệnh chức năng hiển thị theo khu vực, hay hiển thị chi tiết một địa điểm cụ thể, thì các form tương ứng sẽ được đẩy vào ngăn xếp theo cơ chế như đã nói trên.

32

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

Lớp SettingForm cho phép người dùng thay đổi một số thông số cơ bản của ứng dụng:

Tùy chọn kiểu hiển thị mặc định bao gồm hiển thị theo khu vực hay theo địa điểm. Ứng dụng sẽ dựa theo thuộc tính này để hiển thị cho phù hợp trong form tìm kiếm.

-Lớp DetailForm

Hình 22: Biểu đồ lớp DetailForm

Khi lựa chọn một địa điểm mà người dùng muốn xem các thông tin chi tiết, màn hình sẽ hiện ra form DetailForm. Từ màn hình này, người dùng có thể tùy chọn các chức năng gửi tin truy vấn SMS, hay nhắn tin đóng góp cho tổng đài bằng cách cập nhật tình hình tắc đường đối với địa điểm đã chọn. (adsbygoogle = window.adsbygoogle || []).push({});

33 - Lớp HelpForm

Lớp HelpForm đơn giản chi là một Form chứa thành phần StringItem, nó hiện lên màn hình các chuỗi chỉ dẫn hướng dẫn người dùng sử dụng hệ thống

5.2.2.3 Biểu đồ lớp cho gói SMS.connection

Gói SMS.connection gồm 2 lớp là Sender và Receiver dùng để xử lý việc gửi và nhận tin nhắn SMS cho ứng dụng

34

Chương 6. Các màn hình chính và hướng dẫn demo ứng dụng

Trong phạm vi khóa luận này, ứng dụng Client đã đáp ứng được những chức năng cơ bản của hệ thống. Vì lý do không có điều kiện để tiến hành cài đặt và chạy thử ứng dụng trên các thiết bị thật, nên việc cài đặt và chạy thử ứng dụng demo được thực hiện trên máy điện thoại giả lập của bộ công cụ phát triển Sun Java Wireless Toolkit.

Như đã mô tả trong phần tổng quan, Client và Server sẽ giao tiếp với nhau thông qua một SMS Gateway. Để thuận tiện cho việc demo ứng dụng Client trên thiết bị điện thoại giả lập, tôi hệ thống sử dụng một điện thoại giả lập khác đóng vai trò của SMS Gateway. Thiết bị Gateway giả lập này sẽ chỉ có 2 chức năng chính là gửi và nhận SMS.

Hình 24: Màn hình chính của SMS Gateway giả lập

Một phần của tài liệu xây dựng ứng dụng client cho hệ thống thông tin giao thông (Trang 34 - 41)