Tải bản đầy đủ (.doc) (55 trang)

Tìm hiểu về một số thuật toán nén dữ liệu, lập trình mobile và xây dựng ứng dụng minh họa

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.07 MB, 55 trang )

GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

Trường Đại hc Vinh
khoa công nghệ thông tin
--------------

phan thị nhật

Khoỏ lun tt nghip
Tìm hiểu về một số thuật
toán nén dữ liệu, lập trình Mobile
và xây dựng ứng dụng minh họa

Vinh - 2010

Mc lục
Trang
Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
1


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

LỜI CẢM ƠN..................................................................................................3
MỞ ĐẦU..........................................................................................................4
1. Lý do chọn đề tài.........................................................................................4
2. Mục đích nghiên cứu...................................................................................4


3. Bố cục luận văn............................................................................................4
4. Kết quả đạt được.........................................................................................5
5. Hướng phát triển đề tài...............................................................................5
Chương 1: Tổng quan về lập trình Windows Mobile..................................6
1.1. Giới thiệu về Windows Mobile..............................................................6
1.2. Công cụ sử dụng.....................................................................................7
1.2.1. Thư viện lập trình............................................................................8
1.2.2. IDE soạn thảo code:.........................................................................9
1.2.3. Thiết bị để kiểm tra ứng dụng.......................................................13
1.2.4. ActiveSync:....................................................................................14
1.3. .Net Compact Framework....................................................................15
1.3.1. Một số hàm API:............................................................................17
1.3.2. Cơng cụ lập trình...........................................................................18
1.3. Ngơn ngữ lập trình C#.........................................................................19
1.3.1. Giới thiệu về C#..............................................................................19
1.3.2. Tại sao phải sử dụng ngôn ngữ C#.................................................20
Chương 2: Tổng quan về nén dữ liệu - Một số thuật toán nén dữ liệu....25
2.1.Giới thiệu chung về nén dữ liệu............................................................25
2.1.1. Nguyên tắc của nén dữ liệu............................................................25
2.1.2. Một số phương pháp nén dữ liệu...................................................25
2.2. Chọn phương pháp nén........................................................................32
2.3. Mã hóa Huffman..................................................................................32
2.3.1. Mã hóa dữ liệu...............................................................................33
2.3.2. Ý tưởng..........................................................................................34
2.3.3. Mã tiền tố.......................................................................................35
Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
2


GVHD: Thạc sỹ Nguyễn Cơng Nhật


Khố luận tốt nghiệp

2.3.4. Thuật toán xây dựng mã tiền tố.....................................................38
2.4. Giải thuật nén file.................................................................................37
2.5. Giải thuật giải nén................................................................................39
Chương 3: Xây dựng ứng dụng nén file trên Mobile.................................38
3.1. Xây dựng chương trình ………………………………………………38
3.2.Cài đặt và cấu hình các chương trình cho thiết bị giả lập ……………40
3.2.1. Tải Windows Mobile 6 Professional Images (USA).msi …..........40
3.2.2. Tải phần mềm Microsoft ActiveSync 4.5 (7,52 MB) ……………41
3.2.3. Cấu hình, Từng bước, ..( Step by Step) ………………………….42
3.2.3.1. Khởi động Windows Mobile 6 Professional SDK …………..42
3.2.3.2. Khởi động Microsoft ActiveSync 4.5 & thiết lập cấu hình …45
3.2.3.3. Khởi động Device Emulator Manager & thiết lập cấu hình ...46
3.3. Cài đặt softs cho máy ảo……………………………………………..47
3.3.1. Cài chương trình dạng .exe………………………………………48
3.3.2. Cài chương trình dạng .cab………………………………………48
3.3.3. Dạng copy lên máy hoặc thẻ nhớ ảo rồi chạy trực tiếp trong ppc
không cần cài đặt……………………………………………………………49
3.4. Ưu và nhược điểm của virual pocket PC…………………………….50
KẾT

LUẬN

………………………………………………………………..51
TÀI LIỆU THAM KHẢO..............................................................................52

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
3



GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

LỜI CẢM ƠN
Em xin chân thành cảm ơn ban chủ nhiệm khoa Cơng nghệ thơng tin,
các thầy cơ giáo, gia đình và bạn bè đã động viên giúp đỡ em rất nhiều trong
q trình hồn thành khóa luận này. Đặc biệt em xin bày tỏ lòng cảm ơn sâu
sắc tới thầy giáo hướng dẫn Thạc sỹ Nguyễn Công Nhật về sự chỉ dẫn tận
tình và tận tâm hướng dẫn em từ những ý tưởng ban đầu cho đến lúc hồn
thành khóa luận quan trọng này.
Em xin bày tỏ lòng cảm ơn tới gia đình cùng bạn bè đã ln quan tâm
tin tưởng, động viên em trong suốt thời gian em làm đề tài này.
Em rất mong đón nhận sự đánh giá, bổ sung và những lời chỉ bảo của
các thầy cô giúp em có thể tiếp tục nghiên cứu kĩ hơn về lĩnh vực này.
Em xin chân thành cảm ơn!
Sinh viên
Phan Thị Nhật-47B-CNTT
Vinh, tháng 5/2010

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
4


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp


MỞ ĐẦU
1. Lý do chọn đề tài
Công nghệ thông tin đang trở thành một phần quan trọng của cuộc
sống. Các thiết bị kĩ thuật cao ngày càng trở nên gần gũi với hoạt động của
con ngưòi. Đặc biệt những năm gần đây, các thiết bị không dây với ưu thế
nhỏ gọn, dễ vận chuyển đã chứng tỏ được lợi ích to lớn cho người sử dụng.
Với sự phát triển nhanh chóng của cơng nghệ sản xuất thiết bị khơng dây thì
song hành với nó là các phần mềm ứng dụng chạy trên các thiết bị đó cũng
lần lượt xuất hiện với nhiều phiên bản ngày càng hồn thiện và nhiều tính
năng hơn. Điện thoại di động đã trở thành đa phương tiện đa chức năng ( nghe
nhạc, trò chơi, truyền và lưu trữ dữ liệu, ...) phục vụ nhu cầu của người sử
dụng mọi lúc, mọi nơi.
Các thiết bị di động có kiến trúc gần giống như máy để bàn nhưng
dung lượng lưu trữ dữ liệu thì nhỏ hơn rất nhiều. Song người dùng luôn muốn
lưu trữ được nhiều dữ liệu của mình. Một trong các cách khắc phục điều đó là
nén mỗi tệp tin đó lại. Vì vậy, xuất phát từ ý tưởng đó em đã chọn đề tài: “
Tìm hiểu về một số thuật tốn nén dữ liệu, lập trình mobile và xây dựng
ứng dụng minh hoạ.”
2. Mục đích nghiên cứu
Nghiên cứu một số thuật toán dữ liệu và các cơng cụ lập trình cho
mobile. Từ đó xây dựng ứng dụng nén dữ liệu trên mobile.
3. Bố cục luận văn
Nội dung gồm 3 phần:
Chương 1: Tổng quan về lập trình Windows Mobile
1.1. Giới thiệu về Windows Mobile
1.2. Công cụ sử dụng
1.3. Ngơn ngữ lập trình C#
Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
5



GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

Chương 2: Tổng quan về nén dữ liệu - Một số thuật toán nén dữ liệu
2.1.Giới thiệu chung về nén dữ liệu
2.2. Một số phương pháp nén dữ liệu
2.3. Mã hóa Huffman
2.4. Giải thuật nén file
2.5. Giải thuật giải nén
Chương 3: Xây dựng ứng dụng nén file trên Mobile
3.1. Nén file dùng thuật tốn Huffman.
3.2.Cài đặt và cấu hình các chương trình cho thiết bị giả lập
4. Kết quả đạt được
Đề tài “Tìm hiểu về một số thuật tốn nén dữ liệu, lập trình mobile và
xây dựng ứng dụng minh hoạ.” xuất phát từ thực tế ngày nay khi các thiết bị
di động ngày càng được cải tiến và nhu cầu lưu trữ thơng tin của người dùng
tăng lên.
Mặc dù đã có nhiều cố gắng, tìm hiểu các kiến thức đã học, kết hợp tra
cứu các tài liệu chuyên ngành và tài nguyên từ Internet. Nhưng đề tài “Tìm
hiểu về một số thuật tốn nén dữ liệu, lập trình mobile và xây dựng ứng
dụng minh hoạ.” do hạn chế về mặt thời gian, khả năng và kinh nghiệm nên
không tránh khỏi những thiếu sót nhất định nên khố luận đã hồn thành ở
mức độ sau:
+ Tìm hiểu ngơn ngữ lập trình C#.
+ Xây dựng ứng dụng nén dữ liệu trên mobile.
5. Hướng phát triển đề tài
Nghiên cứu, tìm hiểu sâu hơn về các cơng cụ và các giải pháp lập trình
trên mobile, xây dựng các ứng dụng thiết thực hỗ trợ người sử dụng.


Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
6


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

Chương 1: Tổng quan về lập trình Windows Mobile

1.1. Giới thiệu về Windows Mobile
Windows Mobile là một hệ điều hành nhỏ gọn kết hợp với một bộ ứng
dụng cơ bản cho thiết bị di động dựa trên Microsoft Win32 API. Những thiết
bị chạy Windows Mobile bao gồm Pocket PC, Smartphones, Portable Media
Centers. Nó được thiết kế tương tự như máy tính để bàn phiên bản Windows,
tính năng thơng minh và thẩm mỹ. Ban đầu xuất hiện như là hệ điều hành
Pocket PC 2000, Windows Mobile đã được cập nhật nhiều lần, với phiên bản
hiện tại là Windows Mobile 6.5.
Các Pocket PC dự kiến ban đầu là nền tảng cho hệ điều hành Windows
Mobile. Các thiết bị này bao gồm cả hai thiết bị Pocket PC độc lập mà khơng
có khả năng như điện thoại di động, và những thiết bị có tính năng như điện
thoại di động. Cái tên mới nhất của Windows Mobile dự định để sử dụng trên
Pocket PC chính thức "Windows Mobile 6 Professional" cho các thiết bị với
các khả năng như điện thoại di động và "Windows Mobile 6 Classic" cho các
thiết bị mà khơng có khả năng điện thoại di động, các thiết bị mà khơng có
một màn hình cảm ứng được gọi là các thiết bị tiêu chuẩn Windows Mobile.
Phát triển phần mềm
Bên thứ ba phát triển phần mềm có sẵn cho hệ điều hành Windows
Mobile. Có nhiều lựa chọn cho nhà phát triển để sử dụng khi triển khai một

ứng dụng di động. Nó bao gồm văn bản mã gốc với C#, viết code quản lý mà
làm việc với các .NET Compact Framework, hoặc Server side-code có thể
được triển khai sử dụng Internet Explorer Mobile hoặc khách hàng một điện
thoại di động trên thiết bị của người dùng. Các NET Compact Framework
thực sự là một tập hợp con của NET Framework. Và vì thế nhiều thành phần

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
7


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

với cổ phần phát triển phần mềm trên máy tính để bàn của khách hàng, máy
chủ ứng dụng, và các máy chủ web mà có NET Framework.
Microsoft thường phát hành Windows Mobile phát triển phần mềm
(SDK) mà làm việc cùng với môi trường phát triển Visual Studio của họ.
Những SDK bao gồm các hình ảnh mơ phỏng cho các nhà phát triển để kiểm
tra và gỡ lỗi các ứng dụng của họ trong khi viết chúng. Microsoft cũng phân
phối Visual Studio 2008 / 2005 Professional Edition, và máy chủ.
1.2. Công cụ sử dụng
So với các nền tảng khác như Palm, Symbian, Linux - PPC được coi là dễ
lập trình nhất do chạy Windows nên cách lập trình khơng khác cho Windows
Desktop cho PC là mấy. Nếu ai đã từng lập trình cho PC rồi (tất nhiên là cho
Windows chứ không phải DOS), nhất là nền tảng .NET thì càng dễ, gần như
khơng có khác biệt là mấy.
Hiện nay tùy thuộc vào cơng nghệ sử dụng, các ứng dụng phát triển cho
PPC được chia thành 02 dịng chính như sau:
- Native application: Các ứng dụng được viết trên các ngơn ngữ lập trình

khơng phải .NET, như C, C++ và sử dụng các API của Windows. Ưu điểm
của các ứng dụng loại này là chương trình nhỏ gọn, khi cài đặt khơng cần
thêm các thư viện đi kèm, có khi chỉ cần copy nguyên file EXE là chạy. Tuy
vậy, các ứng dụng kiểu này khó viết hơn, do sử dụng các ngơn ngữ lập trình
bậc thấp hơn (C, C++). Chỉ các ứng dụng thực sự cần sự nhỏ gọn, như các
driver, các trình thường trú như keyboard, system… mới cần phát triển theo
kiểu này.
- .NET application: Như một sự cạnh tranh với sự phát triển ồ ạt và rất
thành công của ngôn ngữ lập trình Java, từ năm 2000, Microsoft đã bắt đầu
phát triển nền tảng .NET cho các ứng dụng, với mục tiêu dùng một nền tảng
ngơn ngữ lập trình cho nhiều nền tảng phần cứng, phần mềm khác nhau. Đến
nay .NET vô cùng phát triển và tỏ rõ được thế mạnh của mình. Tất cả các hệ

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
8


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

điều hành Windows XP, Windows 2000, 2003 server đến WinMobile,
Windows for Smart Phone đều hỗ trợ rất tốt .NET. Nếu bạn đã từng lập
trình .NET cho Windows XP rồi thì chuyển sang Win Mobile chỉ cần tìm hiểu
thêm một số thư viện làm việc với những đặc thù cho mobile là đã có thể phát
triển các ứng dụng được rồi. Bạn có thể lựa chọn ngơn ngữ lập trình cho mình
như C# một ngơn ngữ lập trình mang phong cách vừa giống C++ lại vừa
giống Java, hoặc chọn Visual Basic nếu đã từng biết ngôn ngữ Basic. Về cơ
sở dữ liệu, bạn có thể lựa chọn giữa SQL Server CE cho professional hoặc
XML cho dữ liệu gọn nhẹ, đơn giản.

- Ngoài ra, cịn có một số nền tảng và ngơn ngữ lập trình của các hãng
khác nữa nhưng khơng phổ biến.
Để lập trình .NET, bạn cần sắm cho mình những cơng cụ sau đây:
- Bộ phần mềm Visual Studio.NET – phiên bản 2003, 2005 hoặc
2008.
- Các thư viện nâng cao có thể download trên Internet (mới bắt đầu có
thể chưa cần đến)
- Visual Studio.NET 2003 hỗ trợ .NET Framework 1.1
- Visual Studio.NET 2005 hỗ trợ .NET Framework 2.0
- Visual Studio.NET 2008 hỗ trợ .NET Compact Framework 2.0 sp2
và 3.5
1.2.1. Thư viện lập trình
Với lập trình Windows Mobile, ở đây ta cần phải có là bộ Windows
Mobile SDK. Tùy vào mỗi phiên bản của hệ điều hành Windows Mobile, mà
Microsoft cung cấp cho ta một bộ SDK tương ứng.
Một bộ SDK thường chứa:
- Tài liệu và các ví dụ cụ thể.
- Các hàm API (Application Programming Interface).
- Các cơng cụ cho trình soạn thảo (cụ thể là Visual Studio) và biên
dịch mã.
Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
9


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

Đối với Visual Studio 2008, thì Microsoft đã tích hợp bộ Windows
Mobile 5 SDK có sẵn để có thể lập trình ứng dụng cho các thiết bị chạy

Windows Mobile 5. Sau này, chúng ta sử dụng Windows Mobile 6, do đó
Microsoft cũng đã cung cấp 1 bộ Windows Mobile 6 SDK. Trong Windows
Mobile 6 SDK bao gồm:
Windows Mobile 6 SDK Cung cấp thư viện, Emulator để phát triển
Standard
ứng dụng cho các hệ máy SmartPhone
Windows Mobile 6 SDK Cung cấp thư viện, Emulator để phát triển
Professional

ứng dụng cho các hệ Pocket PC

Ngoài ra, trong bộ Windows Mobile 6 SDK cịn tích hợp một số công cụ
để phát triển ứng dụng tùy thuộc vào từng trường hợp cụ thể.
FakeGPS
Giả lập dữ liệu GPS thông qua các hàm API
Local Server Framework Giả lập tương tự như một server. Khi đó ta
(aka FakeServer)

có thể kiểm tra tính kết nối của một ứng

Cellular Emulator

dụng
Giả lập song Radio thật như một thiết bị di
động với một đầy đủ tính năng như GPRS,
GSM, ….

1.2.2. IDE soạn thảo code:
Ở đây, chúng ta sử dụng Visual Studio để lập trình cho thiết bị Visual
Studio cung cấp đầy đủ tính năng, sự thân thiện để ta có thể tiếp cận lập trình

Windows Mobile một cách nhanh nhất. Nó hỗ trợ đầy đủ các chức năng, các
loại ứng dụng phát triển, hỗ trợ ngôn ngữ C#, Visual Basic, cũng như tạo các
Setup Project để triển khai ứng dụng một cách dễ dàng.
* Các nền tảng được hỗ trợ trong Visual Studio:
- Windows Mobile 2003 SE Pocket PC

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
10


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

- Windows Mobile 2005 Pocket PC
- Windows Mobile 2005 Smartphone
- Windows Mobile 6 Classic
- Windows Mobile 6 Standard
- Windows Mobile 6 Professioncal
* Trình soạn thảo:

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
11


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

* Kỹ thuật Anchoring & Docking:

Anchoring: Đây là phương thức neo một điểm trên màn hình. Khi đó, sự
thay đổi của màn hình trên mỗi loại thiết bị thì các chức năng sẽ thay đổi theo.
Có 4 điểm neo chính là Trái, Phải, Trên, Dưới.

Docking: Cũng tương tự như Anchoring, tuy nhiên, đối tượng được sẽ
được cố định ở một góc nào đó và trải đầy (“fill”) vào khung chứa.

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
12


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

* Một số tính năng mới trong Visual Studio 2008:
Unit Testing for Device
Device Configuration Manager
Device Certificate Manager
Device Emulator Version 3.0
Windows Mobile 5.0 SDK
.NET Compact Framework 2.0 sp2 and 3.5
Update Compilers, MFC Libraries, Tools
Manager CoreCon Framework

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
13


GVHD: Thạc sỹ Nguyễn Cơng Nhật


Khố luận tốt nghiệp

1.2.3. Thiết bị để kiểm tra ứng dụng

1.2.3.1. Lợi ích của việc sử dụng Emulator
+ Khơng tốn chi phí cho việc sắm thiết bị để kiểm tra ứng dụng. Điều
này đặc biệt quan trọng vì các thiết bị di động thường có cấu hình, khn
dạng (form) và các nhà sản xuất khác nhau.
+ Tất cả mọi lập trình viên đều có thể cài đặt lại thiết bị, có điều kiện
để thử nghiệm nhiều hệ điều hành khác nhau cho việc kiểm tra chương trình.
+ Phục vụ việc triển khai ứng dụng nhanh hơn nhờ tính năng lưu giữ
trạng thái.

1.2.3.2. Visual Studio Device Emulator
Khi phát triển một ứng dụng, thì vấn đề là chúng ta phải kiểm tra được
ứng dụng đó. Windows Mobile SDK cung cấp một bộ công cụ Emulator để
giả lập thiết bị thật, nó hỗ trợ đầy đủ tính năng của một thiết bị thật.
Là công cụ giả lập giúp bạn chạy thử chương trình trong trường hợp bạn
khơng có chiếc PPC hay SmartPhone thật nào, hoặc bạn muốn kiểm tra
chương trình trên nhiều loại máy khác nhau như WM 2003,WM2005…
Emulator đi kèm với Windows Mobile 5.0 SDK nên chỉ cần cài đặt SDK.
Tính năng hệ điều hành đầy đủ như thiết bị thật, cả Windows CE và
Windows Mobile.
Tính năng đầy đủ của thiết bị, hỗ trợ chipset ARM. Hỗ trợ phần cứng
giả lập như cổng COM, Network Card.
* Trình quản lý thiết bị ảo
+ Điều khiển thiết bị ảo:
- Start
- Shutdown

- Reset

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
14


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

Khởi động thiết bị ảo
+ Quản lý Image:
- Save State, filesystem và Memory
- Có thể lưu lại tình trạng cho mỗi platform.
- Khôi phục trạng thái image hệ điều hành.
+ Kết nối thiết bị ảo:
- Cradle
+ Synchronizes
- Mail
- Contacts
- To-Do list
- Tasks
+ Connects to the network using NAT
- Uncradle
1.2.4. ActiveSync:
+ Là công cụ cho phép kết nối giữa thiết bị Windows Mobile và máy
tính.

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
15



GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

+ Tại sao phải sử dụng ActiveSync? - Do việc Debug ứng dụng
trên .NET Compact Framework đều là Debug từ xa.
+ Để kết nối Emulator với ActiveSync:
- Sử dụng Device Emulator Manager với tùy chọn Cradle.
- Cài đặt kết nối trong ActiveSync phải cho phép kết nối DMA.

Download Microsoft ActiveSync 4.5 tại đây
/>1.3. .Net Compact Framework.
.NET Compact Framework là nền tảng cho một số ứng dụng cho PPC
được phát triển trên nền Visual Studio .NET.
Hình 1 và Hình 2 so sánh giữa .Net Framework và .NET Compact
Framework

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
16


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

Hình 1: .Net Framework

Hình 2: .NET Compact Framework

Ứng dụng chúng ta viết sử dụng .Net Compact Framework được gọi là
Managed Code, nghĩa là code của ứng dụng được quản lý bởi bộ thư viện
dùng chung CLR (Common Language Runtime). Việc quản lý tài nguyên bộ
nhớ, quản lý luồng và quản lý thực thi code đều được CLR xử lý.

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
17


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

1.3.1. Một số hàm API:
* Telephony:
Namespace: WindowsMobile.Telephony
- Thực thi một cuộc gọi chỉ bằng 1 dịng lệnh.

- Tùy chọn người dùng có quyền hoặc khơng có quyền thực hiện cuộc
gọi.
* Pocket Outlook:
Namespace: Microsoft.WindowsMobile.PocketOutlook

Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
18


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp


1.3.2. Cơng cụ lập trình
* Microsoft Visual Studio .Net 2005:
Là cơng cụ lập trình chính cho máy tính để bàn cũng như PPC chạy hệ
điều hành Windows. Bạn cũng có thể cài Microsoft Visual Studio .Net 2003
tuy nên cài phiên bản mới nhất này vì nó hỗ trợ nhiều tính năng hơn so với
phiên bản cũ. Bạn có thể mua đĩa cài ở các của hàng bán đĩa chương trình.
* Windows Mobile 6 Professional SDK :
Chứa nhiều công cụ bổ sung để lập trình cho thiết bị di động như
Emulator (Giả lập), CABWIZ (Đóng gói) , Sample Source code, và tài liệu
lập trình khác.
Bạn có thể download miễn phí tại các địa chỉ sau:
+ Windows Mobile 6 Professional SDK tại địa chỉ
/>+ Active Sync 4.5 đây là chương trình cài trên PC giúp bạn đồng bộ (kết
nối) PPC hoặc Smartphone với máy tính để bàn. Download miễn phí tại đây:
/>* Tài liệu:
+ thư viện lập trình Bluetooth bổ sung cho CF
+ thư viện bổ sung lập trình .NET CF
Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
19


GVHD: Thạc sỹ Nguyễn Cơng Nhật

Khố luận tốt nghiệp

+ Nhiều ví dụ bổ ích
+ Những kỹ thuật nâng cao
+ Lập trình viên hệ thống
PPC cần phải xem trang này.

+ Cộng đồng .NET Việt Nam
1.3. Ngôn ngữ lập trình C#
1.3.1. Giới thiệu về C#
C# là một ngơn ngữ rất đơn giản, với khoảng 80 từ khóa và hơn 10 kiểu
dữ liệu dựng sẵn, nhưng C# có tính diễn đạt cao. C# hỗ trợ lập trình có cấu
trúc, hướng đối tượng, hướng thành phần (component oriented).
Trọng tâm của ngôn ngữ hướng đối tượng là lớp. Lớp định nghĩa kiểu dữ
liệu mới, cho phép mở rộng ngôn ngữ theo hướng cần giải quyết. C# có
những từ khóa dành cho việc khai báo lớp, phương thức, thuộc tính (property)
mới. C# hỗ trợ đầy đủ khái niệm trụ cột trong lập trình hướng đối tượng: đóng
gói, thừa kế, đa hình.
Định nghĩa lớp trong C# khơng địi hỏi tách rời tập tin tiêu đề với tập tin
cài đặt như C++. Hơn thế, C# hỗ trợ kiểu sưu liệu mới, cho phép sưu liệu trực
tiếp trong tập tin mã nguồn. Đến khi biên dịch sẽ tạo tập tin sưu liệu theo định
dạng XML.
C# hỗ trợ khái niệm giao diện, interfaces (tương tự Java). Một lớp chỉ có
thể kế thừa duy nhất một lớp cha nhưng có thể cài đặt nhiều giao diện.
C# có kiểu cấu trúc, struct (không giống C++). Cấu trúc là kiểu hạng nhẹ
và bị giới hạn. Cấu trúc không thể thừa kế lớp hay được kế thừa nhưng có thể
cài đặt giao diện.
C# cung cấp những đặc trưng lập trình hướng thành phần như property,
sự kiện và dẫn hướng khai báo (được gọi attribute). Lập trình hướng
component được hỗ trợ bởi CLR thông qua siêu dữ liệu (metadata). Siêu dữ
liệu mô tả các lớp bao gồm các phương thức và thuộc tính, các thơng tin bảo
mật…
Sinh viên thực hiện: Phan Thị Nhật – 47B CNTT
20




×