TR NG I H
C KHOA H
C T NHIÊN
KHOA CÔNG NGH
THÔNG TIN
MÔN CÔNG NGH
PH
N M
M
e&f
NGUY
N TH
LÝ - NGUY
N SAO K
NG D
NG PH
N M
M MÃ NGU
N M H
QU
N
TR
C S D LI
U H NG
IT
NG PERST
XÂY D
NG NG D
NG QU
N LÝ H
TH
NG
THÔNG TIN A LÝ THÀNH PH HCM
KHÓA LU
N C NHÂN TIN H
C
TpHCM, 2005
TR NG I H
C KHOA H
C T NHIÊN
KHOA CÔNG NGH
THÔNG TIN
MÔN CÔNG NGH
PH
N M
M
e&f
NGUY
N TH
LÝ
- 0112187
NGUY
N SAO K
- 0112186
NG D
NG PH
N M
M MÃ NGU
N M H
QU
N
TR
C S D LI
U H NG
IT
NG PERST
XÂY D
NG NG D
NG QU
N LÝ H
TH
NG
THÔNG TIN A LÝ THÀNH PH HCM
KHÓA LU
N C NHÂN TIN H
C
GIÁO VIÊN H NG D
N
Th.s NGUY
N MINH NAM
NIÊN KHOÁ 2001-2005
-2-
IC
M N
Chúng em chân thành cám
n Khoa Công ngh
Thông tin, tr ng
ih
c
Khoa h
c T
nhiên t
o u ki
n cho chúng em th
c hi
n tài lu
n v
n
t
t
nghi
p này.
Chúng em chân thành cám
n th
y Nguy
n Minh Nam
ã t
n tình h
ng
n, ch
b
o chúng em trong su
t th
i gian th
c hi
n tài.
Chúng
em
chân thành
cám
n quý
th
y
cô
trong
khoa
ã
t
n tình
gi
ng
y, trang b
cho chúng em nh
ng ki
n th
c quý báu trong nh
ng n
m h
c
a qua.
Chúng con xin nói lên lòng bi
t
n sâu s
c i v
i cha m
, nh
ng ng
i
ã
ch
m sóc,
nuôi d
y chúng con thành
ng i
và
luôn ng
viên tinh
th
n
cho chúng con.
Và c
ng chân thành cám
n các anh ch
và b
n bè
ã
ng h
, giúp ,
trao
i ki
n th
c, kinh nghi
m và ng viên chúng em trong th
i gian h
c t
p và
nghiên c
u.
c dù chúng em
ã c
g
ng hoàn thành lu
n v
n trong ph
m vi và kh
ng cho phép nh
ng ch
c ch
n s
không tránh kh
i
nh
ng sai sót. Chúng
em kính mong nh
n c s
c
m thông và t
n tình ch
b
o c
a quý th
y cô
và các b
n.
Tp.H
Chí Minh, tháng 7 n
m 2005
Nguy
n Th
Lý – 0112187
Nguy
n Sao K
- 0112186
-3-
TÓM T
T LU
N V
N
Lu
n v
n c t
ch
c thành các ph
n chính nh
sau:
Ch ng 1: Gi
i thi
u t
m quan tr
ng, m
c tiêu, ph
m vi c
a tài, các c
s
lý
thuy
t và h ng ti
p c
n.
Ch ng 2: Cách t
ch
c c
s
d
li
u h ng it ng PERST và nh
ng so
sánh v
i các cách t
ch
c c
s
d
li
u quan h
và các h
c
s
d
li
u h ng
it ng khác.
Ch ng 3: Gi
i thi
u v
mô hình Topology: nêu lên nh
ng khái ni
m c
b
n,
các it ng trong Topology và các c
p Topology.
Ch ng 4: Gi
i thi
u v
GIS: gi
i thi
u t
ng quan v
GIS, các gi
i pháp và
ng
ng v
GIS và
ng d
ng GIS trên PocketPC
Ch ng 5: Gi
i thi
u v
chu
n OpenGIS
Ch ng 6: T
ng quan v
PocketPC: Các v
n và gi
i pháp trên thi
t b . Tình
tr
ng b
nh
, t
o c
s
d
li
u và
ng d
ng b
n trên PocketPC.
Ch ng 7: ng d
ng b
n : mô hình phân tích thi
t k
.
Ch ng 8: K
t lu
n,
ánh giá và h ng phát tri
n
Ch ng 9: Nh
ng tài li
u tham kh
o khi th
c hi
n tài
Ch ng 10:Nêu nh
ng thu
t toán chính trong ch ng trình
-4-
C L
C
I C
M N
3
TÓM T
T LU
N V
N
4
DANH SÁCH CÁC HÌNH
8
DANH SÁCH CÁC B
NG
.
10
T S KHÁI NI
M, THU
T NG VÀ T VI
T T
T
11
CH NG 1 : Hi
n tr
ng và yêu c
u
15
1.1 Hi
n tr
ng:
15
1.2 Gi
i quy
t bài toán:
16
CH NG 2 : T
ng quan v
Perst
17
2.1 Gi
i thi
u:
17
2.2 c
tính: 18
2.2.1 Persistency by reachability
: 18
2.2.2 Semi transparent object loading:
21
2.2.3 Automatic scheme
evaluation 23
2.2.4 Relation:
24
2.2.5 Index:
25
2.2.6 Giao tác
(Transaction): 29
2.3 Transparent API:
31
2.3.1 Dùng.NET Remoting API:
31
2.3.2 Dùng các thu
c tính
o (virtual
properties): 32
2.4 C
ch
th
c hi
n giao tác
(Transaction): 33
2.5 Nh
ng tr ng h
p nên dùng PERST:
37
2.6 Các thông s
c
a
PERST: 38
2.7 S
l c v
RTree
: 44
2.7.1 Gi
i thi
u
: 44
2.7.2 S
l c v
d
li
u không gian (spatial data) và các gi
i pháp:
44
2.8 So sánh v
i các h
qu
n tr
c
s
d
li
u h ng it ng khác:
45
CH NG 3 : Gi
i thi
u v
mô hình Topology
.50
3.1 Gi
i thi
u:
50
3.2 Các khái ni
m c
b
n trong Topology:
50
3.3 Các lo
i it ng trong Topology:
51
3.4 Các c
p c
a Topology:
53
-5-
3.5 MBR – Minimum Bounding Rectangle:
59
CH NG 4 : Gi
i thi
u v
GIS
.60
4.1 Gi
i thi
u v
các
ng d
ng và gi
i pháp v
GIS:
60
4.2 Mô hình d
li
u c
a thông tin a lý:
61
4.3 Thu th
p d
li
u:
64
4.4 Các gi
i thu
t nghiên c
u v
GIS:
.66
4.5 Các c
u trúc d
li
u không gian trong GIS:
67
4.5.1 Cây t
phân (Quad
Tree): 67
4.5.2 k-d Tree:
68
4.5.3 R-Tree:
69
4.5.4 R*-Tree:
70
4.5.5 R
+
-
Tree: 71
4.6 ng d
ng b
n
: 72
4.6.1 Các ki
u b
n :
72
4.6.2 Các it ng c
a b
n
: 72
4.7 ng d
ng GIS trên PocketPC:
.73
CH NG 5 : Gi
i thi
u v
chu
n OpenGIS
75
5.1 Các ki
u d
li
u hình h
c c
a OpenGIS:
75
5.2 OpenGIS Specification ( c t
OpenGIS)
: 76
5.2.1 Các khái ni
m:
76
5.2.2 Nh
ng d ch v
OpenGIS (OpenGIS Services
): 78
5.2.3 M
t mô hình nh
ng c
ng ng thông tin (Information Communities Model ):
79
5.2.4 c m:
79
5.2.5 Phân lo
i:
.81
5.3 OpenGIS Abstract Specification:
.82
5.3.1 Essential Model (mô hình b
n ch
t ):
83
5.3.2 Abstract Model:
85
CH NG 6 : T
ng quan v
PocketPC
.89
6.1 T
ng quan v
PocketPC:
89
6.2 Kh
n
ng l
p trình trên PocketPC
: 89
6.3 M
ts
v
n khi l
p trình
ng d
ng trên PocketPC:
.89
6.3.1 T
c và các h
tr
kh
n
ng hi
n th :
89
6.3.2 Kh
n
ng và hình th
c l
u tr
: 90
6.3.3 T ng tác gi
a ng i s
d
ng và thi
t b :
91
6.4 Các gi
i pháp cho
ng d
ng b
n trên PocketPC:
92
6.4.1 Yêu c
u chung:
92
-6-
6.4.2 V
n t
i
ut
c hi
n th :
93
6.5 T
ch
c d
li
u b
n trên PocketPC:
.93
CH NG 7 : ng d
ng b
n
: 95
7.1 Phân tích và xác nh yêu c
u
: 95
7.2 Phân tích - thi
t k
: 96
7.2.1 S s
d
ng:
96
7.2.2 c t
Use-Case chính:
97
7.2.2.1 Tìm ki
m ng
i:
97
7.2.2.2 Tìm ki
m Region:
98
7.2.2.3 Tìm ng
i ng
n nh
t:
99
7.2.2.4 Tìm chu trình t
i
u:
101
7.2.3 S l
p Class
Diagram: 102
7.2.3.1 S t
ng
quát: 102
7.2.3.2 S l
p d
li
u
: 103
7.2.3.3 S l
p v
: 103
7.2.3.4 S s
ki
n:
104
7.2.4 Mô t
các l
p:
104
7.2.5 Các l
u ho
t ng:
111
7.3 Thi
t k
giao di
n:
.124
7.3.1 Giao di
n trên Desktop:
124
7.3.2 Giao di
n trên PocketPC:
131
7.4 Cài
t: 131
CH NG 8 : K
t Lu
n, ánh giá và h ng phát tri
n
132
8.1 K
t lu
n,
ánh
giá: 132
8.2 H ng phát tri
n:
132
CH NG 9 : Tài li
u tham kh
o
.133
CH NG 10 : Ph
l
c
134
10.1 Bài toán tìm ng
i ng
n nh
t gi
a hai m:
.134
10.1.1 Phát bi
u bài
toán: 134
10.1.2 Gi
i quy
t bài toán
: 134
10.2 Bài toán tìm chu trình t
i
u
136
10.2.1 Phát bi
u bài
toán 136
10.2.2 Gi
i quy
t bài toán
: 137
-7-
DANH SÁCH CÁC HÌNH
Hình
3.2-1 Các it ng trong mô hình Topolog
y 51
Hình
3.4-1 Quan h
Topology c
p 0
56
Hình
3.4-2 Quan h
Topology c
p 1 và
2
57
Hình
3.4-3 Quan h
Topology c
p 3
58
Hình
4.2-1 Thông tin c
n l
u tr
.
61
Hình
4.2-2 So sánh Raster và Vector
64
Hình
4.3-1 Ph ng pháp Scanning
.65
Hình
4.5.1-1 Cây t
phân
.
67
Hình
4.5.2-1 K-D Tree
68
Hình
4.5.3-1 R-Tree
69
Hình
4.5.5-1 R+-Tree
71
Hình
4.6.2-1 Các it ng chính trong b
n
73
Hình
5.1-1 H
phân c
p các ki
u d
li
u hình h
c c
a OpenGIS.
76
Hình
5.3.1-1 L
p khái ni
m
85
Hình
7.2.1-1 S s
d
ng t
ng
quát 96
Hình
7.2.2.1-1 Use Case - Tìm ki
m
Edge
97
Hình
7.2.2.2-1 Use Case: Tìm ki
m
Region
98
Hình
7.2.2.3-1 Use Case – Tìm ng
i ng
n nh
t 99
Hình
7.2.2.4-1 Use-Case - Tim chu trình t
i
u
101
Hình
7.2.3.1-1 S t
ng quát
102
Hình
7.2.3.2-1 S
l
p d
li
u
103
Hình
7.2.3.3-1 S l
p v
.103
Hình
7.2.3.4-1 S s
ki
n
104
Hình
7.2.4-1 L
p CNode
106
Hình
7.2.4-2 L
p CEdge
109
Hình
7.2.5-1 Sequense Diagram: Hi
n th
b
n
112
Hình
7.2.5-2 Collabration Diagram: Hi
n th
b
n
113
Hình
7.2.5-3 Sequence Diagram: Tìm ng ng
n nh
t 113
Hình
7.2.5-4 Collabration Diagram: Tìm ng ng
n nh
t
114
Hình
7.2.5-5 Sequence Diagram: Tìm Edge
115
Hình
7.2.5-6 Collabration Diagram: Tìm Edge
116
Hình
7.2.5-7 Sequence Diagram: Tìm chu trình t
i
u
117
Hình
7.2.5-8 Collabrotion Diagram: Tìm chu trình t
i
u
118
Hình
7.2.5-9 Sequence Diagram: D ch chuy
n vùng nhìn
119
-8-
Hình
7.2.5-10 Collabrotion Diagram: Di chuy
n vùng nhìn
120
Hình
7.2.5-11 Sequence Diagram: T
l
l
i b
n
120
Hình
7.2.5-12 Collaboration Diagram: T
l
l
i b
n
121
Hình
7.2.5-13 Sequence Diagram: Tìm a m
121
Hình
7.2.5-14 Collaboration Diagram: Tìm a m
122
Hình
7.2.5-15 Sequence Diagram: Tìm giao l
123
Hình
7.2.5-16 Collaboration Diagram: Tìm giao l
123
Hình
7.3.1-1 Khung nhìn t
ng quát v
giao di
n
124
Hình
7.3.1-2 Toolbar c
a ch ng trình
124
Hình
7.3.1-3 Các ch
c n
ng chính trên thanh công c
127
Hình
7.3.1-4 Thanh th
c n File
128
Hình
7.3.1-5 Thanh th
c n
View 128
Hình
7.3.1-6 Khung nhìn b
n thu nh
.130
Hình
7.3.1-7 Khung Layer
130
Hình
7.3.1-8 Khung hi
n th
thông tin it
ng 131
-9-
DANH
SÁCH
CÁC
B
NG
ng
2.2.4-1 Các m
i quan h
gi
a 2 l
p A va B
25
ng
2.2.5-1 Các ki
u Index c PERST h
tr
:
29
ng
2.6-1 H
ng s c nh ngh a s
n trong l
p
StorageImpl 42
ng
2.8-1 So sánh các c tính c
a các h
qu
n tr
.47
ng
2.8-2 B
ng so sánh k
t qu
c
a các h
qu
n tr
c
s
d
li
u h ng it
ng 49
ng
3.4-1 Các c
p Topology trong các l
p VPF
55
ng
3.4-2 Các c
t c yêu c
u nh ngh a quan h
Topology trong
VPF 56
ng
3.5-1. nh ngh a khung ch
nh
t nh
nh
t MBR
.59
ng
4.2-1 B
ng so sánh ki
u d
li
u Raster va
Vector
64
ng
7.1-1 Các ch
c n
ng chính
.
96
ng
7.2.4-1 L
p CDatabase
105
ng
7.2.4-2 L
p CMapView
105
ng
7.2.4-3 L
p CMapEvent
106
ng
7.2.4-4 Thu
c tính l
p CNode
107
ng
7.2.4-5
Ph ng th
c l
p CNode
108
ng
7.2.4-6
Thu
c tính l
p CEdge
110
ng
7.2.4-7
Ph ng th
c l
p
CEdge 111
ng
7.3.1-1 Các ch
c n
ng chính trên thanh th
c n
129
- 10 -
Khái ni
m nh ngh a Ghi chú
OODBMS (Object-
Oriented Database
Management System)
qu
n tr
c
s
d
li
u
ng it ng
PERST
Là
m
t h
qu
n tr
c
s
li
u h ng it ng
Nhúng - -Embedded
Có ngh a là PERST c
tích h
p ch
t vào ch ng
trình,
g
n
nh kho
ng
cách
gi
a
database
và
ch ng
trình
r
t
nh
,
PERST
tr
c
ti
p
l
u
d
li
u
trong
các i
t ng
a ch ng trình và
không c
n có nh
ng n
mã làm công vi
c chuy
n
li
u
t c s d li
u
thành i t ng và ng c
i
Topology
Là
c
u
trúc
cho
mô
hình
ng l i giao thông
GIS ( Geography th
ng
thông
tin a
- 11 -
Information System )
lý.
Là
m
t
công
ngh
a trên máy tính xây
ng
b
n ,
phân
tích
và
x lý
các i
t ng
n
t
i
và
các
s ki
n
y ra trên trái t.
Thông tin không gian
Thông
tin
v
nh
ng c
m
liên
quan n
hình
ng,
v
trí,
quan h
c
a
các it ng a lý.
Bao g
m hai d
ng:
ng
hình
h
c:
mô
t các c m
hình
d
ng,
v
trí.
Ví
nh t
a c
a
m, ng…
D
ng
Topology:
mô
t quan
h
gi
a
các i
t ng
hình
c. Ví d nh
nh
ng
vùng
nào
k
i
m
t
vùng
xác
nh.
T S KHÁI NI M, THU T NG VÀ T VI T T T
Thông tin phi không gian
( thông tin thu
c tính )
Thông
tin
v
nh
ng c
m liên quan n
th
ng
kê,
thông
tin
s
,
thông
tin c
tr
ng
gán
cho
i
thu
c
tính
c
a i
Ví
d nh tên ng
ph
, dân s
…
- 12 -
ng
PDA
(
Personal
Digital
Assistant )
Thi
t
b n
t h tr
cá
nhân,
giúp
ng i
s
ng
l
u
tr các
thông
tin
cá
nhân,
công
vi
c
n
thi
t
c
ng
nh các
ph
n
m
m
t
i
thi
u
trên
t thi
t b
nh
g
n
Pocket PC
Khái
ni
m
này
có
th
dùng ch :
+
H u
hành
nhúng
Pocket
PC
do
Microsoft
phát
tri
n
a
trên nhân c
a H
u
hành
Windows
CE
+ Các thi
t b
PDA s
d
ng h u
hành Pocket PC
Edge
it
ng c
nh trong mô
hình Topology
Trong bài, Edge t ng
ng v
i ng. Khi nh
c
i Edge, hay ng có th
hi
u ngh a nh
nhau.
- 13 -
Region it ng vùng
ây
không c
p n
qu
n
huy
n
nh
ng
có
th
hi
u Region là qu
n huy
n.
ID nh danh c
a i t ng
Trong
bài
không
nh
c
t
i
tên ng,
qu
n
huy
n
mà
ch
nh
c t
i ID vì c
s
d
li
u không thông tin tên
ng. Và
khi nh
c t
i tên
a i
t ng
b
t
k thì
hi
u là ID.
- 14 -
CH NG 1 :
Hi
n
tr
ng
và
yêu
c
u
1.1 Hi
n tr
ng:
Trên th
gi
i hi
n nay
ã
có
nhi
u ph
n m
m gi
i quy
t các
bài toán v
n giao thông nh
: RouteSmart, BusStops, Arclogistics, Routronic 2000,
DynaRoute… Vi
t Nam nói riêng c
ng có m
t s
công ty nh
DolSoft, Hài
Hoà, …
ã có m
t s
s
n ph
m v
GIS nh
Street Finder, SmartMap…. Các
n ph
m trên
a ph
n s
d
ng c
s
d
li
u c t
ch
c trên các h
qu
n
tr
c
s
d
li
u quan h
ho
c t
t
o. Tuy nhiên v
n có v
n c t ra:
1.Chi phí c
a càc h
qu
n tr
c
s
d
li
u th ng m
i n
u có dùng.
2.S
khó kh
n và có khi là “r
c r
i” trong cách l
p trình giao ti
p v
i các
s
d
li
u ph
c t
p có nhi
u b
ng, quan h
…
Th
t ra, hai v
n trên có th c gi
i quy
t t ng i t
t b
ng cách
s
ng h
qu
n tr
c
s
d
li
u h ng it ng PERST (mã ngu
n m
).
PERST là m
t h
c
s
d
li
u t ng i nh
(so v
i các h
c
s
d
li
u
khác)
v
i
ph
n
lõi
ch
g
m
kho
ng
5000
dòng
mã.
Yêu
c
u
c
u
hình
c
a
PERST t ng i th
p. H
n n
a, PERST c
ng không c
n n “s
qu
n
tr ”
th ng th
y các h
c
s
d
li
u. M
c dù n gi
n nh
v
y nh
ng
PERST
n h
tr y tính ACID trong vi
c th
c hi
n giao tác (transaction) và h
tr
vi
c ph
c h
i (recovery) t ng i nhanh khi h
th
ng g
p s
c
.
Không ch
d
ng l
i ó mà PERST có h
tr
c
vi
c phát tri
n trên môi
tr ng compact.NET
framework
nên
có
kh
n
ng
phát
tri
n
ng
d
ng trên
các thi
t b
di ng dùng WinCE hay PocketPC.
- 15 -
Vì v
y, ta có th
th
y vi
c dùng PERST gi
i quy
t bài toán v
qu
n
lý
th
ng thông tin a lý (GIS) là hoàn toàn kh
thi.
1.2 Gi
i quy
t bài toán:
t trong các y
u t
quan tr
ng quy
t nh s
thành công hay th
t b
i c
a
t h
th
ng thông tin a lí là vi
c l
a ch
n mô hình c
u trúc d
li
u thích
p, cho phép l
u tr
và khai thác thông tin m
t cách hi
u qu
. Và mô hình
Topology
th
hi
n t
t
nh
ng
òi h
i trên
(Mô
hình
này s c c
p
sau
trong lu
n v
n). Vì d
li
u Topology trên PERST không có s
n nên chúng ta
n xây d
ng l
i d
li
u theo mô hình Topology. D
li
u thô (d
li
u ngu
n)
c dùng trong
ng d
ng này là các t
p tin text.
Bài
toán s c
gi
i
quy
t
ch
y
u
b
ng
s
ph
i
h
p
các
ki
n
th
c
v
GIS,PERST và ho
.
- 16 -
CH NG 2 :
ng
quan
v
PERST
2.1 Gi
i thi
u:
PERST là m
t h
c
s
d
li
u “nhúng” dành cho các
ng d
ng c
n tính
ng l
u tr
. PERST c thi
t k
dành riêng cho l
p trình và không có giao
di
n h
a qu
n tr . Vi
c s
d
ng PERST khá n gi
n và t c
hi
u
ng t ng i cao. c m chính d
th
y nh
t c
a PERST là s
tích h
p
ch
t ch
c
a
PERST
v
i m
t
ngôn ng
l
p trình
xác nh.
Hi
n t
i
PERST
ch
h
tr
cho 2 ngôn ng
l
p trình là Java và C#.
Không
gi
ng
v
i
các
h
qu
n
tr
c s d li
u
h ng i
t ng
k
hác
(OODBMSes), PERST không c
n dùng n các b
biên d ch hay các b
ti
n
lý c bi
t khác. Nh
v
y, PERST có kh
n
ng cung c
p c “tính
trong
su
t” trong l
p trình m
c cao. Các hàm API c
a PERST ti
n l
i, d
s
ng và có t
c cao. Có th
l
y ví d
khi so sánh v
i Ozone (m
t h
c
s
li
u
h ng i
t ng
khác
vi
t
b
ng
Java).
V
i
gi
i
h
n
(benchmark)
007, PERST t
o database nhanh g
p 100 l
n và th
c hi
n phép duy
t qua các
it
ng trong c
s
d
li
u nhanh g
p 10 l
n so v
i Ozone. Và khi so v
i
t h
c
s
d
li
u h ng
it
ng th ng m
i khác là ObjectStore PSE
Pro, PERST nhanh h
n g
p 4 l
n.
PERST là m
t h
c
s
d
li
u t ng i nh
(so v
i các h
c
s
d
li
u
khác)
v
i
ph
n
lõi
ch
g
m
kho
ng
5000
dòng
mã.
Yêu
c
u
c
u
hình
c
a
PERST t ng i th
p. H
n n
a, PERST c
ng không c
n n “s
qu
n
tr ”
th ng th
y các h
c
s
d
li
u. M
c dù n gi
n nh
v
y nh
ng
PERST
n h
tr y tính ACID trong vi
c th
c hi
n giao tác (transaction) và h
tr
vi
c ph
c h
i (recovery) t ng i nhanh khi h
th
ng g
p s
c
.
- 17 -
Có hai b
n cài t c
a PERST, m
t b
ng ngôn ng
Java và m
t b
ng C#.
n cài t trên C# c chuy
n t
Java dùng b
chuy
n i Java sang
C#
(m
c dù ph
i có nhi
u thay i c
n th
c hi
n m
i có c b
n hoàn ch
nh).
c dù b
n cài t dùng C# h
tr
nhi
u ki
u “nguyên th
y”
h
n (g
m có
ki
u s
nguyên không d
u và ki
u li
t kê
(enum))
nh
ng
trong các
ph
ng
di
n khác, các tính n
ng c
a hai b
n là nh
nhau. Riêng PERST.NET có h
tr
c
vi
c
phát tri
n trên
môi
tr ng compact.NET
framework
nên có kh
ng
phát
tri
n ng
d
ng
trên
các
thi
t
b
di ng
dùng
WinCE
ha
y
PocketPC.
2.2 c tính:
Trong
ph
n
này
chúng
ta
s i
vào
các
tính
ch
t
quan
tr
ng
nh
t
c
a
PERST. C
th
chúng ta s
tìm hi
u phiên b
n cài t trên môi tr
ng.NET
(g
i t
t là PERST.NET). ây các tính ch
t có t
nguyên g
c ti
ng Anh s
c
gi nguyên
do
không
có
t ti
ng
Vi
t
thay
th
ng
n
g
n
mà
úng
ngh a
2.2.1 Persistency by reachability:
Trong
ng d
ng dùng PERST, m
i it ng c
a các l
p c d
n xu
t
t
p Persistent u có kh
n
ng l
u tr
(persistent hay còn d ch là b
n v
ng).
t
bây gi
, ta s
g
i t
t các it ng này là các it ng persistent.
Các
it
ng này
ct
ng l
u vào database khi nó c tham chi
u t
m
t
it
ng persistent khác và ph ng th
c store c
a
it
ng khác
ó
c
i.
Có
ngh a
là
ta
không
c
n
ph
i
g
i
tr
c
ti
p,
t ng
minh
ph ng
t
h
c
store c
a m
t it ng khi mu
n l
u it ng
ó.
- 18 -
Database có m
t
it
ng c bi
t g
i là root.
it
ng root này là
i
ng
duy
nh
t c
truy
xu
t
m
t
cách c
bi
t
(dùng
ph ng
t
h
c
Storage.getRoot).
Còn
các i
t ng
persistent
khác c
truy
xu
t
th
eo
cách bình th ng: ho
c truy xu
t b
ng tham chi
u t
các it ng persist
ent
nh
trên ho
c truy xu
t b
ng cách dùng các
it
ng bao ch
a
(container
class)
nh
Index,Link
hay Relation.
Không
gi
ng
nh
các
h
c
s
d
li
u
ng
it
ng khác, ch
có th
có duy nh
t m
t
it
ng root trong c
s
li
u.
PERST yêu c
u m
i l
p persistent u ph
i d
n xu
t t
l
p Persistent. Có
ngh a
là
các
l
p
“ngo
i
lai”
(không
d
n
xu
t
t l
p
Persistent)
không
th
c
l
u
trong
database. ây
chính
là
cái
giá
ph
i
tr
c
a
s n
gi
n
và
không dùng n các b
biên d ch hay ti
n x
lý c bi
t. Và các thành ph
n
a các l
p persistent c
ng b
gi
i h
n trong các ki
u sau:
Ki
u
vô
h
ng (scalar type):
Bool, int, short, double, enum
…
Ki
u
chu
i
: Ki
u System.String.
Ki
u
ngày
tháng
: Ki
u System.DateTime.
Ki
u
tham
chi
u
n các
it
ng persistent : các l
p k
th
a t
l
p
Persistent hay các giao di
n (interface) k
th
a t
giao di
n IPersistent.
Ki
u
giá
tr
(value
type):
Các
ki
u
giá
tr
c
a
C#.
Các
giá
tr
này
c l
u tr
c ti
p trong it ng ch
a chúng.
Ki
u
d
li
u
nh
phân
thô
:
Các
l
p
c
a
C#
k
th
a
t giao
d
i
n
IPersistent
hay t
giao
di
n IValue
và c
ánh d
u
là
Serializable.
C
ch
Serialization
chu
n
s c
dùng óng
gói
d li
u
c
a
các
i
- 19 -