- Chương 1 : Tổng quan về lập trình trên điện thoại di động. Chương
này nêu những vấn đề chung về tình hình sử dụng điện thoại di động hiện nay; hoạt
động phát triển phần mềm cho loại thiết b ịnày; giới thiệu một số phần mềm công
cụ nhằm hỗ trợ cho việc phát triển ứng dụng di động bằng ngôn ngữ lập trình Java.
- Chương 2 : Giới thiệu khái quát vềchuẩn J2ME. Phần này trình bày
các mục tiêu, nội dung và định nghĩa các khái niệm quan trọng trong J2ME. Ngoài
ra, chương này cũng trình bày các tính năng, các điểm thuận lợi và hạn chếcủa bộ
thư viện Java được hỗ trợ cho điện thoại di động.
- Chương 3 : Những khó khăn do hạn chế của J2ME. Chương này trình
bày những ảnh hưởng quan trọng đến việc thiết kế và cài đặt một số tính năng của
đề tài do hạn chế của thưviện Java trên điện thoại di động.
- Chương 4 : Phân tích – thiết kế ứng dụng. Phân tích các yêu cầu nghiệp
vụ, các yêu cầu phi chức năng và đặc tảchi tiết ứng dụng ởmức phân tích, thiết kế.
- Chương 5 : Một số cải tiến nhằm tối ưu hóa chương trình. Do thiết bị
di động hạn chế về năng lực xử lý, dung lượng bộ nhớ và khả năng lưu trữ, chương
này trình bày một sốphương pháp, thủthuật nhằm giúp cho ứng dụng được tối ưu
hóa về tốc độ, tối ưu việc sử dụng bộ nhớ và giảm kích thước cho phần mềm.
- Chương 6 : Thửnghiệm - Hướng dẫn cài đặt và sử dụng.Giới thiệu
một số trình giả lập các điện thoại di động phổ biến trên thị trường được đề tài sử
dụng cho mục đích thử nghiệm; hướng dẫn cài đặt và sử dụng các chức năng của
phần mềm.
- Chương 7 : Tổng kết – Đánh giá. Nhận xét các công việc đã được thực
hiện; trình bày các ưu, khuyết điểm và hướng mở rộng cho phần mềm.
164 trang |
Chia sẻ: zimbreakhd07 | Lượt xem: 1796 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Khóa luận Xây dựng bản đồ trên điện thoại di động có hỗ trợ JAVA, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
SV
ne
t.vn
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM
NGUYỄN NGỌC DUY QUANG – VŨ BÁ QUANG
XÂY DỰNG BẢN ĐỒ TRÊN ĐIỆN THOẠI
DI ĐỘNG CÓ HỖ TRỢ JAVA
KHOÁ LUẬN CỬ NHÂN TIN HỌC
TP. HCM, 2005
SV
ne
t.vn
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN CÔNG NGHỆ PHẦN MỀM
NGUYỄN NGỌC DUY QUANG - 0112194
VŨ BÁ QUANG - 0112395
XÂY DỰNG BẢN ĐỒ TRÊN ĐIỆN THOẠI
DI ĐỘNG CÓ HỖ TRỢ JAVA
KHOÁ LUẬN CỬ NHÂN TIN HỌC
GIÁO VIÊN HƯỚNG DẪN
Thạc sĩ LÊ THỤY ANH
NIÊN KHÓA 2001-2005
SV
ne
t.vn
HO CHI MINH CITY – MOBILE MAP
Version 1.0 / 07-2005
Siemens SK 65 Siemens SL 65
SV
ne
t.vn
Sony Ericsson K750 Sony Ericsson P900
Samsung E100 Samsung E710
SV
ne
t.vn
Nhận xét của giáo viên hướng dẫn
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
SV
ne
t.vn
Nhận xét của giáo viên phản biện
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
............................................................................................................................
SV
ne
t.vn
i
LỜI CẢM ƠN
Chúng em xin chân thành cảm ơn Quý thầy cô trong Khoa Công nghệ Thông
tin Trường Đại học Khoa học Tự nhiên đã tận tình dạy bảo cho chúng em nhiều
kiến thức bổ ích trong suốt thời gian học tập tại trường cũng như đã tạo điều kiện
cho chúng em được thực hiện đề tài này. Kính chúc các Thầy cô luôn dồi dào sức
khỏe và thành công trong cuộc sống.
Đặc biệt, chúng em xin bày tỏ lòng biết ơn sâu sắc đến thầy Lê Thụy Anh,
người đã tận tình hướng dẫn chúng em trong suốt thời gian thực hiện đề tài, cho
chúng em sự bình tĩnh và tự tin, giúp chúng em rút ra nhiều bài học kinh nghiệm
quý báu mỗi khi chúng em vấp phải những khó khăn. Chúng em khó có thể hoàn
thành được đề tài này nếu không nhờ sự tận tình chỉ bảo của thầy.
Chúng con cảm ơn cha mẹ và gia đình đã sinh ra và nuôi dạy chúng con
khôn lớn, luôn bên cạnh động viên và ủng hộ chúng con trên con đường mà chúng
con đã yêu thích và lựa chọn.
Cảm ơn các bạn sinh viên CNTT khóa 2001. Các bạn đã giúp đỡ, động viên
và hỗ trợ chúng tôi rất nhiều cũng như đóng góp cho chúng tôi nhiều ý kiến quý
báu, qua đó, giúp chúng tôi hoàn thiện hơn cho đề tài.
Mặc dù đã rất nỗ lực, cố gắng nhưng chắc hẳn đề tài vẫn còn nhiều thiếu sót.
Chúng em rất mong nhận được nhiều sự góp ý phê bình của Quý thầy cô, của các
anh chị và các bạn.
Một lần nữa, chúng em xin chân thành cảm ơn !
TP Hồ Chí Minh, tháng 7 năm 2005
Nhóm thực hiện
Nguyễn Ngọc Duy Quang – Vũ Bá Quang
SV
ne
t.vn
ii
LỜI NÓI ĐẦU
Có thể nói rằng đề tài về bản đồ giao thông tại thành phố Hồ Chí Minh là
một đề tài không mới. Trong các năm qua, đã có nhiều khóa luận của các sinh viên
ngành CNTT nghiên cứu về chủ đề này, trong đó, đáng chú ý nhất là các đề tài của
sinh viên Khoa CNTT Trường ĐH Khoa học Tự nhiên TP.HCM. Các đề tài này đa
số đều được thực hiện rất tốt, hỗ trợ cho người dùng rất nhiều chức năng như : xem
bản đồ, tra cứu thông tin về các đường đi, các địa điểm, tra cứu các tuyến xe buýt…
đặc biệt là chức năng xác định lộ trình để tìm đường đi ngắn nhất giữa hai địa điểm
và hầu hết các đề tài nói trên đều được thực hiện nhắm đến môi trường sử dụng là
các máy tính để bàn hoặc Pocket PC.
Trong thời điểm hiện nay, trên thế giới cũng như tại Việt Nam, thị trường
cho điện thoại di động đang trở nên sôi động hơn bao giờ hết. Một mặt, do thu nhập
của người dân ngày càng được cải thiện cùng với nhu cầu trao đổi thông tin ngày
càng tăng khiến cho nhu cầu sử dụng điện thoại di động cũng tăng theo. Mặt khác,
các nhà sản xuất điện thoại di động nắm bắt được nhu cầu của giới trẻ ưa chuộng
những sản phẩm “high-tech” và cũng do yêu cầu cạnh tranh với nhau nên liên tục
tung ra nhiều sản phẩm mới với nhiều tính năng, cấu hình ngày càng được nâng lên
và giá thành ngày càng giảm. Chiếc điện thoại di động giờ đây không phải là một
món hàng quá xa xỉ. Nhờ đó, ngày càng có nhiều người sở hữu được phương tiện
trao đổi thông tin hữu ích này.
Cùng với sự phát triển của thị trường điện thoại di động là sự phát triển
mạnh mẽ của xu hướng lập trình phần mềm ứng dụng cho các thiết bị này. Phần
mềm cho các điện thoại di động hiện nay rất đa dạng mà đa số là các trò chơi, các
chương trình tiện ích như xử lý ảnh chụp, đổi đơn vị đo lường, từ điển, soạn thảo
văn bản, diệt virus…
Tuy vậy, một ứng dụng về bản đồ giao thông, mà cụ thể là bản đồ thành phố
Hồ Chí Minh dành cho điện thoại di động với các tính năng đã trình bày ở trên thì
gần như chưa có. Có thể nói là “gần như chưa có” bởi vì trước đây, trên một số tạp
chí, diễn đàn tin học cũng có giới thiệu một phần mềm bản đồ thành phố Hồ Chí
SV
ne
t.vn
iii
Minh, tuy nhiên, phần mềm này cũng chỉ thực hiện được một chức năng là hiển thị
bản đồ. Tuy thế, chức năng này cũng chưa thật tốt do chỉ lưu được ảnh tĩnh của bản
đồ vào tập tài nguyên, vì vậy, không thể phóng to hay thu nhỏ bản đồ, và cũng vì
thế làm cho chương trình có kích thước lớn, tốc độ chậm, không thích hợp cho các
điện thoại có cấu hình trung bình hiện đang được dùng rất phổ biến tại thị trường
Việt Nam.
Với những lý do trên, nhóm chúng em chọn thực hiện đề tài “Xây dựng bản
đồ trên điện thoại di động hỗ trợ Java”. Mục tiêu của đề tài nhằm xây dựng một
phần mềm ứng dụng bản đồ giao thông TP. Hồ Chí Minh bằng ngôn ngữ lập trình
Java, có thể thực thi được trên nhiều loại điện thoại di động khác nhau. Nhờ vào
phần mềm này, người sử dụng có thể xem bản đồ, tra cứu tên đường, tên các địa
điểm, các công trình công cộng như chợ, trường học, bệnh viện, khách sạn…, đặc
biệt là trợ giúp người sử dụng xác định lộ trình ngắn nhất để đi từ địa điểm này đến
một địa điểm khác… Phần mềm này nếu được thực hiện tốt sẽ trở thành một ứng
dụng rất hữu ích, rất thiết thực và tiện dụng đối với nhiều người, đặc biệt là các bạn
trẻ và những người bận rộn trong việc đi lại.
Nói đến lập trình cho điện thoại di động, chúng ta đều hình dung được hai
trở ngại lớn. Thứ nhất, đó là năng lực của bộ vi xử lý trên điện thoại rất yếu và thứ
hai, đó là dung lượng của bộ nhớ rất nhỏ. Điều này gây trở ngại không nhỏ đến việc
tổ chức dữ liệu cho phần mềm, bởi lẽ, dữ liệu về các đường giao thông tại thành phố
Hồ Chí Minh là rất lớn, muốn lưu được toàn bộ dữ liệu này trên chiếc điện thoại di
động là một điều không đơn giản. Ngoài ra, các hạn chế của điện thoại di động cũng
buộc người lập trình phải chọn giải thuật thật hiệu quả và luôn phải tính toán nhằm
tối ưu cho chương trình. Mặt khác, đối với người lập trình, sự hạn chế của thư viện
hàm trong ngôn ngữ Java được hỗ trợ cho điện thoại cũng là một vấn đề không dễ
giải quyết. Những hạn chế đã nêu thật sự là một thách thức lớn mà đề tài bắt buộc
phải vượt qua.
Nội dung của bài báo cáo này được chia thành 7 chương như sau :
SV
ne
t.vn
iv
- Chương 1 : Tổng quan về lập trình trên điện thoại di động. Chương
này nêu những vấn đề chung về tình hình sử dụng điện thoại di động hiện nay; hoạt
động phát triển phần mềm cho loại thiết bị này; giới thiệu một số phần mềm công
cụ nhằm hỗ trợ cho việc phát triển ứng dụng di động bằng ngôn ngữ lập trình Java.
- Chương 2 : Giới thiệu khái quát về chuẩn J2ME. Phần này trình bày
các mục tiêu, nội dung và định nghĩa các khái niệm quan trọng trong J2ME. Ngoài
ra, chương này cũng trình bày các tính năng, các điểm thuận lợi và hạn chế của bộ
thư viện Java được hỗ trợ cho điện thoại di động.
- Chương 3 : Những khó khăn do hạn chế của J2ME. Chương này trình
bày những ảnh hưởng quan trọng đến việc thiết kế và cài đặt một số tính năng của
đề tài do hạn chế của thư viện Java trên điện thoại di động.
- Chương 4 : Phân tích – thiết kế ứng dụng. Phân tích các yêu cầu nghiệp
vụ, các yêu cầu phi chức năng và đặc tả chi tiết ứng dụng ở mức phân tích, thiết kế.
- Chương 5 : Một số cải tiến nhằm tối ưu hóa chương trình. Do thiết bị
di động hạn chế về năng lực xử lý, dung lượng bộ nhớ và khả năng lưu trữ, chương
này trình bày một số phương pháp, thủ thuật nhằm giúp cho ứng dụng được tối ưu
hóa về tốc độ, tối ưu việc sử dụng bộ nhớ và giảm kích thước cho phần mềm.
- Chương 6 : Thử nghiệm - Hướng dẫn cài đặt và sử dụng. Giới thiệu
một số trình giả lập các điện thoại di động phổ biến trên thị trường được đề tài sử
dụng cho mục đích thử nghiệm; hướng dẫn cài đặt và sử dụng các chức năng của
phần mềm.
- Chương 7 : Tổng kết – Đánh giá. Nhận xét các công việc đã được thực
hiện; trình bày các ưu, khuyết điểm và hướng mở rộng cho phần mềm.
- Phụ lục A : Các thuật ngữ được sử dụng. Liệt kê và giải thích các thuật
ngữ được sử dụng trong chương trình.
- Phụ lục B : Giới thiệu các chương trình giả lập. Mục đích của chương
này nhằm trình bày các tính năng cũng như các yêu cầu về phần cứng, phần mềm
cần thiết để cài đặt chương trình.
SV
ne
t.vn
v
MỤC LỤC
Trang
Lời cảm ơn ...................................................................................................................i
Lời nói đầu ..................................................................................................................ii
Mục lục........................................................................................................................v
Danh mục hình ..........................................................................................................vii
Danh mục bảng ...........................................................................................................x
Chương 1 : TỔNG QUAN VỀ LẬP TRÌNH TRÊN ĐIỆN THOẠI DI ĐỘNG ..1
1.1. Đôi nét về thị trường điện thoại di động Việt Nam .....................................1
1.1.1. Sự phát triển của thị trường thông tin di động ................................1
1.1.2. Nhu cầu phát triển phần mềm cho điện thoại di động ....................2
1.2. Lập trình trên điện thoại di động..................................................................4
1.2.1. Quá trình phát triển ứng dụng J2ME ..............................................4
1.2.2. Các J2ME IDE ................................................................................5
1.3. Giới thiệu một số công cụ hỗ trợ lập trình J2ME ........................................6
1.3.1. J2ME Wireless Toolkit (WTK).......................................................6
1.3.2. Borland JBuiler ...............................................................................9
1.3.3. Sun ONE Studio 5, Mobile Edition ..............................................16
Chương 2 : GIỚI THIỆU KHÁI QUÁT VỀ CHUẨN J2ME .............................23
2.1. Nền tảng Java .............................................................................................23
2.2. Sự khác nhau giữa ngôn ngữ Java trên CLDC với Java thông thường......29
2.3. MIDP..........................................................................................................32
2.3.1. Định nghĩa.....................................................................................32
2.3.2. Yêu cầu về phần cứng ...................................................................32
2.3.3. Các khả năng và hạn chế của MIDP .............................................33
Chương 3 : NHỮNG KHÓ KHĂN DO HẠN CHẾ CỦA J2ME ........................36
3.1. Các hàm tô màu..........................................................................................36
3.2. Các hàm vẽ đường......................................................................................37
3.3. Vấn đề font chữ ..........................................................................................38
3.4. Vấn đề vẽ chuỗi ký tự ................................................................................39
3.5. Vấn đề về số thực.......................................................................................40
Chương 4 : PHÂN TÍCH – THIẾT KẾ ỨNG DỤNG .........................................42
4.1. Khảo sát hiện trạng.....................................................................................42
4.2. Phân tích và xác định yêu cầu....................................................................43
4.2.1. Danh sách các yêu cầu nghiệp vụ .................................................43
4.2.2. Các yêu cầu phi chức năng ...........................................................43
4.3. Thiết kế ứng dụng ......................................................................................44
4.3.1. Lược đồ sử dụng ...........................................................................44
4.3.2. Đặc tả Use Case ............................................................................45
4.3.3. Sơ đồ lớp mức phân tích ...............................................................57
4.3.4. Các biểu đồ hoạt động...................................................................64
4.3.4. Sơ đồ lớp mức thiết kế ..................................................................70
SV
ne
t.vn
vi
Chương 5 : MỘT SỐ CẢI TIẾN NHẰM TỐI ƯU HÓA CHƯƠNG TRÌNH...95
5.1. Nội dung và ý nghĩa của việc tối ưu hóa....................................................95
5.2. Tối ưu hóa kích thước chương trình ..........................................................95
5.2.1. Các nguyên tắc tối ưu kích thước trong thiết kế chương trình .....95
5.2.2. Tối ưu kích thước chương trình khi đóng gói ...............................99
5.3. Tối ưu hóa về tốc độ.................................................................................104
5.3.1. Khái quát chung ..........................................................................104
5.3.2. Tìm các vị trí cần tối ưu về tốc độ ..............................................104
5.3.3. Các nguyên tắc tăng tốc cho chương trình..................................106
5.4. Tối ưu hóa việc sử dụng bộ nhớ...............................................................110
5.4.1. Công cụ theo dõi việc sử dụng bộ nhớ........................................110
5.4.2. Các nguyên tắc tối ưu hóa việc sử dụng bộ nhớ .........................111
Chương 6 : THỬ NGHIỆM – HƯỚNG DẪN CÀI ĐẶT VÀ SỬ DỤNG ........114
6.1. Cài đặt chương trình trên máy ảo.............................................................114
6.1.1. Trình giả lập Sony Ericsson ........................................................114
6.1.2. Trình giả lập Nokia .....................................................................115
6.1.3. Trình giả lập Siemens .................................................................117
6.1.4. Trình giả lập Samsung ................................................................120
6.1.5. Trình giả lập chuẩn (Sun Microsystems) ....................................121
6.2. Vấn đề hỗ trợ tiếng Việt có dấu ...............................................................123
6.2.1. Hiển thị tiếng Việt trên máy ảo..................................
Các file đính kèm theo tài liệu này:
- [LVIT046] - XD bản đồ trên dt di động có hỗ trợ JAVA.pdf