B GIÁO D
O
I H C DÂN L P H I PHÒNG
-------o0o-------
ÁN T T NGHI P
NGÀNH CÔNG NGH THÔNG TIN
H I PHÒNG 2013
B GIÁO D
O
I H C DÂN L P H I PHÒNG
-------o0o-------
PHÁT TRI N
NG D NG TRÊN N N ECLIPSE
ÁN T T NGHI
I H C H CHÍNH QUY
Ngành: Công ngh Thông tin
H I PHÒNG - 2013
B GIÁO D
O
I H C DÂN L P H I PHÒNG
-------o0o-------
PHÁT TRI N
NG D NG TRÊN N N ECLIPSE
ÁN T T NGHI
I H C H CHÍNH QUY
Ngành: Công ngh Thông tin
Sinh viên th c hi n: Ph m Vi t M nh
ng d n:ThS Nguy n Tr
Mã s sinh viên:
1351010041
H I PHÒNG - 2013
B GIÁO D
O
C NG HÒA XÃ H I CH
I H C DÂN L P H I PHÒNG
T NAM
c l p - T do - H nh phúc
-------o0o-------
NHI M V THI T K T T NGHI P
Sinh viên: Ph m Vi t M nh
Mã SV: 1351010041
L p: CT1301
Ngành: Công ngh Thông tin
tài: Phát tri n ng d ng trên n n Eclipse
NHI M V
TÀI
1. N i dung và các yêu c u c n gi i quy t trong nhi m v
a. N i dung
b. Các yêu c u c n gi i quy t
Các ph n m m c n thi
xây d ng
Web Server: Xampp
H qu n tr
d li u MySQL
Ph n m m Eclipse.
tài t t nghi p
NG D
CÁN B
TÀI T T NGHI P
ng d n th nh t:
H và tên:Nguy n Tr
H c hàm, h c v : Th
i H c Dân L p H i Phòng
N
ng d n:
ng d n th hai:
H
H c hàm, h c v :
N
ng d n:
tài t t nghi
c giao ngày
Yêu c u ph i hoàn thành tr
tháng
c ngày
tháng
n nhi m v
n nhi m v
Sinh viên
Cán b
ng d
ThS Nguy n Tr
H
HI
NG
n H u Ngh
án t t nghi p
p H i Phòng
PH N NH N XÉT TÓM T T C A CÁN B
NG D N
1.Tinh th
tài t t nghi p:
c
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
2.
ng c
ra trong nhi m v
tài t t nghi p (so v i n i dung yêu c
tài t t nghi p)
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
........................................................................................................................
3.
m c a cán b
ng d n:
m ghi b ng s và ch )
........................................................................................................................
........................................................................................................................
N
Cán b
ng d n chính
( Ký, ghi rõ h tên )
Ph m Vi t M nh
CT1301
2
án t t nghi p
Ph m Vi t M nh
p H i Phòng
CT1301
3
án t t nghi p
p H i Phòng
PH N NH
A CÁN B
CH M PH N BI
TÀI T T
NGHI P
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
..................................................................................................................................................
m c a cán b ph n bi n
(
m ghi b ng s và ch )
..................................................................................................................................................
Cán b ch m ph n bi n
( Ký, ghi rõ h tên )
Ph m Vi t M nh
CT1301
4
án t t nghi p
p H i Phòng
M CL C
M C L C................................................................................................. 1
DANH M C CÁC HÌNH......................................................................... 8
DANH SÁCH THU T NG ................................................................. 10
......................................................................................... 11
GI I THI U ........................................................................................... 12
U .......................................................................... 13
1.1 Gi i thi u Eclipse .......................................................................... 13
1.2 L ch s phát tri n ........................................................................... 15
1.3 Ki n trúc Eclipse............................................................................ 16
KI N TRÚC C A PLUGIN TRONG ECLIPSE ............ 22
2.1 Gi i thi u ....................................................................................... 22
2.2 Phát tri n ph n m m d a trên thành ph n ..................................... 23
2.2.1 Mô hình tr
ng.................................................................. 23
2.2.2 Cú pháp .................................................................................... 24
2.2.3 Ng
................................................................................ 24
2.2.4 K t h p (composition)............................................................. 25
2.3 Ki n trúc Plugin trong Eclipse....................................................... 26
2.3.1 Gi i thi u v Plugin và extension point .................................. 26
m m r ng Plugin (Plugin Extension Points) .................... 28
2.3.3 Ti n trình làm vi c c a Plugin................................................. 28
2.3.4 T p tin c u hình (manifest) c a Plugin.................................... 29
2.3.5 Plugin fragment và feature ...................................................... 31
....................................................................... 32
Ph m Vi t M nh
CT1301
5
án t t nghi p
p H i Phòng
2.3.7 Perspective, views, editor ........................................................ 32
2.4 Ngôn ng l p trình java ................................................................. 33
2.4.1 L ch s phát tri n c a Java ...................................................... 33
2.4.2 Máy o Java (Java Virtual Machine)....................................... 33
2.4.3 M t s
m ngôn ng l p trình Java ............................. 35
NGHI M ................................. 36
3.1 Mô t yêu c u bài toán................................................................... 36
nh mô hình nghi p v .......................................................... 37
3.2.1 Các ch
p v ......................................................... 37
3.2.2 Bi
use case t ng quan...................................................... 38
3.2.3 Mô t khái quát các quan h con ............................................. 38
3.2.4 Các mô hình ca s d ng chi ti t .............................................. 39
3.3 Phân tích h th ng.......................................................................... 42
3.3.1 Phân tích gói ca s d ng
p nh t d li
3.3.2 Phân tích gói ca s d
p th i khóa bi
........................... 42
....................... 48
3.4 Thi t k h th ng ........................................................................... 50
3.5 Thu t toán s d ng......................................................................... 51
3.6 K t qu c
a............................................... 51
3.7. Giao di n c a
3.7.1. Giao di n chính c
3.7.2 Giao di
.......................................................... 52
......................................... 52
p ................................................................ 52
3.7.3 Giao di n phòng h c................................................................ 53
3.7.4 Giao di n h c ph n .................................................................. 54
3.7.5 Giao di n khoa vi n................................................................. 55
3.2.6 Giao di n niên khóa................................................................. 56
Ph m Vi t M nh
CT1301
6
án t t nghi p
p H i Phòng
3.7.7 Giao di n trang thi t b ............................................................ 57
3.7.8 Giao di n th i khóa bi u.......................................................... 58
K T LU N............................................................................................. 59
TÀI LI U THAM KH O....................................................................... 60
Ph m Vi t M nh
CT1301
7
án t t nghi p
p H i Phòng
DANH M C CÁC HÌNH
Hình 1: Mô hình Eclipse ........................................................................ 13
Hình 2: Ki n trúc t ng quan Eclipse....................................................... 17
Hình 3: Ki n trúc Plugin ......................................................................... 22
Hình 4: Mô hình tr
ng c a thành ph n .......................................... 23
Hình 5:Ví d v thành ph n v i các ki
u vào - ra ........................... 24
Hình 6: S k t h p các thành ph n trong h th ng................................. 25
Hình 7: Plugin và extension .................................................................... 26
Hình 8: Plugin trong Workbench và Workspace .................................... 26
Hình 9: Ti n trình làm vi c c a Plugin................................................... 28
Hình 10: Ki n trúc Java Virtual Machine ............................................... 34
Hình 11: Bi
Use case t ng quan..................................................... 38
Hình 12: Bi
ca s d
p nh t d li
Hình 13: Bi
ca s d
p th i khóa bi
Hình 14: Bi
tu n t th c thi ca s d
Hình 15: Bi
c ng tác th c thi ca s d
Hình 16: Bi
tu n t th c thi ca s d
p nh t thi t b .......... 43
Hình 17: Bi
c ng tác th c thi ca s d
p nh t thi t b ....... 44
Hình 18: Bi
tu n t th c thi ca s d
Hình 19: Bi
c ng tác th c thi ca s d
Hình 20: Bi
tu n t th c thi ca s d
Hình 21: Bi
c ng tác th c thi ca s d
Hình 22: Bi
tu n t th c thi ca s d
Hình 23: Bi
c ng tác th c thi ca s d
Ph m Vi t M nh
CT1301
............................. 39
.......................... 41
p nh t phòng h
p nh t phòng h
p nh
... 45
p nh t h c ph
...... 45
p nh t h c ph
p nh
.. 43
..... 44
p nh
p nh
.... 42
.... 46
............. 46
........... 47
8
án t t nghi p
p H i Phòng
Hình 24:
......................... 47
Hình 25: Bi
tu n t th c thi ca s d
Hình 26: Bi
c ng tác th c thi ca s d
p th i khóa bi
Hình 27: Bi
tu n t th c thi ca s d
i khóa bi
Hình 28: Bi
c ng tác th c thi ca s d
Hình 29:
p th i khóa bi
i khóa bi
...... 48
.... 48
......... 49
....... 49
...................... 50
d li u .............................................................. 50
Hình 31: Giao di n chính c a Plugin th i khóa bi u.............................. 52
Hình 32: Giao di
p ................................................................ 52
Hình 33: Giao di n phòng h c ................................................................ 53
Hình 34 Giao di n h c ph n ................................................................... 54
Hình 35: Giao di n khoa vi n ................................................................. 55
Hình 36: Giao di n niên khóa ................................................................. 56
Hình 37: Giao di n trang thi t b ............................................................ 57
Hình 38:Giao di n thông tin th i khóa bi u ........................................... 58
Ph m Vi t M nh
CT1301
9
án t t nghi p
p H i Phòng
DANH SÁCH THU T NG
STT
1
Eclipse
Eclipse Public License (EPL)
2
Integrated Development
Enviroment (IDE)
M
3
Plugin Development Environment
(PDE)
M
thêm
4
Java Runtime Environment (JRE)
M
5
Java Developer Kit (JDK)
B
Java
6
The Platform runtime
7
Extension point
8
Workbench
Ph m Vi t M nh
CT1301
thi
10
án t t nghi p
p H i Phòng
Phòng,
gian quý báu,
,
thông tin giáo tham
,
, cô
,
,
,
,
, các
,
sót,
,
, tháng 12 n
Sinh viên
Ph m Vi t M nh
CT1301
11
án t t nghi p
p H i Phòng
GI I THI U
Ngày nay,
,
,
,
.
,
,
,
,
Các Plugin
Eclipse
trong Eclipse
Java, C, C++, Python,
cho Eclipse
. Eclipse
Eclipse
Plugin
c
,
Eclipse
:
.
sau:
,
Eclipse.
Plugin trong Eclipse
3:
.
Ph m Vi t M nh
CT1301
12
án t t nghi p
p H i Phòng
U
n trình bày v
phát tri n c a Eclipse và ki n trúc n n t ng c a Eclipse.
ch s
1.1Gi i thi u Eclipse
Eclipse
,
. Eclipse
phá
dùng xây
(Plugin)vàcho phép các
Java (JDT - Java
nhau,
Development Tools).
Java Virtual Machine
Hình 1: Mô hình Eclipse
m
Plugin Development Environment)
(PDEmôi
. Eclipsecòn
Eclipse.
vào
Eclipse.
chi phí
,
khi
.
luôn có trong Java. Eclipse
(Ada,C, C++,COBOL,Fortran,Haskell,JavaScript,
Lasso,Perl, PHP, Python, R, Ruby...
tri n
Ph m Vi t M nh
CT1301
13
án t t nghi p
p H i Phòng
Eclipse Java development tools (JDT) cho JavavàScala, EclipseCDT
cho C/C++ và Eclipse PDT cho PHP,Android Development Tools (ADT)
Plugin cho Android.
Eclipse
tác
,
Nói chung,
,
,
(copyright) cho phép tác
copyleft,
cho
,
copyleft
,
thay vì dành riêng chúng c
,
Copyleft
OSI-Open Software Initiative
Eclipse
Eclipse (EPL- Eclipse Public License) ph
OSI
Eclipse
mã
cho Eclipse
Eclipse
ph
Eclipse
phép
EPL.
Eclipse
B
,
,
,
,
Ph m Vi t M nh
CT1301
14
án t t nghi p
p H i Phòng
, càng
,
1.2L ch s phát tri n
D án Eclipse (EclipseProject
c IBM thành l p vào tháng
11
c hi p h i các nhà cung c p ph n m m h tr . Qu
Eclipse
c thành l
t t ch c phi l i
nhu n, ho
ng c l p
c thành l p nh m cho phép m t c
ng
minh b ch, m và trung l p i v i các nhà phát tri n ph n m mcó s
d ngn n t ngEclipse. Hi n nay, c
ng Eclipse h i t nhi u cá nhân và t
ch c t nhi
c trong công nghi p ph n m m.
Nhi
a Eclipse
c tri n khai b i IBM
c khi d
án Eclipse
ct
i ti n nhi m c a Eclipse
c
xây d ng có s d ng Smalltalk trong m
ng phát tri
c g i là
Envy. Sau khi Java xu t hi n vào nh
, IBM
n m tmáy
c v i c Smalltalk và Java. S phát tri n nhanh chóng c a
Java và nh
m c a nó cùng v i s m r ng c a m
i Internet
bu c IBM ph i xem xét t i vi c b máy
ng m t n n t ng
m i d a trên Java t
u. S n ph m cu i cùng là Eclipse tiêu t n c a IBM
kho ng 40 tri
Cu i
, IBMh p tácBorland t o ra qu Eclipse phi l i nhu n,
m ra v i th gi i ph n m m ngu n m . Nhóm các doanh nghi
n
d n liên k
c v i các công ty phát tri n ph n m m toàn c u quan tr ng
le, Rational Software, Red Hat, SuSE, HP, Serena, Ericson và
Novell.
công ty l n c nh tranh v i IBM là Microsoft và Sun
lo i b vì s
c quy n c
i v i th
IDE c a riêng hãngv i s n ph m c nh
tranh là NetBeans. Trên th c t , cái tên Eclipse
c ch n vì m c tiêu là
t o ra m t IDE có kh
c nh tranh v i Visual Studio (c a Microsoft)
và NetBeans (c a Sun Microsystem).
Ph m Vi t M nh
CT1301
15
án t t nghi p
p H i Phòng
Phiên b n
nh m i nh t c a Eclipse là s n sàng cho các h
u hành
Windows, Linux, Solaris, AIX, HP-UX và Mac OS X. T t c các phiên b n
c a Eclipse c n ph i có m t máy ch o Java JVM (Java Virtual Machine)
t trong h th ng,
ng th c thi Java - JRE (Java Runtime
Environment) ho c b công c cho l p trình viên Java - JDK (Java Developer
Kit) c a Sun.
1.3 Ki n trúc Eclipse
Ki n trúc c
c xây d ng d a trên hai thành ph n chính:
thành ph n lõi (core) và các thành ph n g n thêm (plugin).
Thành ph n lõibao g m các ch
, d ch v mà các h phát
tri n ng d ng ph
p giao di n, trình
so n th
n, g l
n cho m i n n t ng l p trình (c n
cho các plugin).
Thành ph n g n thêm bao g m nhi u thành ph n d dàng tích h p
vào nhi u ng d ng ch y trên n n Eclipse.Các ch
a
thành ph n lõi tách bi t v i các ch
a ph n giao di n.
Ki n trúc Eclipse
c thi t k và xây d
ng các yêu c u sau:
H tr vi c xây d ng các công c
phát tri n ng
d ng.
H tr các công c
thao tác trên b t k lo i n i dung nào.Ví
d :HTML, Java, C, C++, JSP, PHP, EJB, XML và GIF.
H tr tích h p các công c m t cách d dàng.
H tr
ng phát tri n ng d ng giao di n và không giao
di n.
Ch
c trên nhi u h
u hành, g m Window, Linux,
Android,
Ph m Vi t M nh
CT1301
16
án t t nghi p
p H i Phòng
Ki n trúc n n t ng Eclipse cung c p các công c
s d ng và
có th tích h p các công c m t cách d dàng. Nh
này
c th hi n thông qua giao di n API, l
c. Ngoài ra, n n
t ng Eclipse còn cung c p các framework
d dàng phát tri n các công c
m i.
EclipseSDKbao g m 3 ph n chính:
Platform
JavaDevelopment Toolkit (JDT)
PluginDevelopment Environment (PDE)
V i JDT, Eclipse là m
ng h tr phát tri n Java.
th
t Plugin cho Eclipse
t
ng l p trình
tích h p (Java IDE -Integrated Development Enviroment).PDE h tr vi c
m r ng Eclipse, tích h p các Plugin vào EclipsePlatform.
EclipsePlatform là n n t ng c a toàn b ph n m m Eclipse, cung c p
nh ng d ch v c n thi t cho vi c tích h p nh ng b công c phát tri n ph n
m
i d ng Plugin.EclipsePlatform
c xây d ng d
phát
hi n, tích h p và ch y các thành ph n g n thêm. Plugin là thành ph n g n
thêm có th ho
c l p ho c cùng v i các thành ph n khác. Thông
ng, m t ng d ng có th t h p nhi u thành ph n g n thêm, m i thành
ph n g n thêm này l i n i v i các thành ph n g n thêm khác tùy vào m c
d ng
Hình2: Ki n trúc t ng quan Eclipse
Ph m Vi t M nh
CT1301
17
án t t nghi p
p H i Phòng
1. N n t ng th i gian th cthi (The Platform runtime):
Công vi c chính c a n n t ng th i gian th c thilà qu n lýPlugin
c Plugin c a Eclipse.M i Plugin u có 1 t p tin Manifest li t kê
nh ng k t n i mà Plugin c n.Plugin ch
c t i vào Eclipse khi th c s c n
thi
gi
ng tài nguyên yêu c u và th i gian kh i t o.
2. Không gian làm vi c (The Workspace) :
Không gian làm vi c qu
c t ch
i
d ng Project. M i d án là m
c Không gian làm
vi c. M i d án có ch a các t p tin và thao tác c
i dùng. T t c các file
trong không gian làm vi c
c tr c ti p ti p c n v
n
và công c
nc ah
u hành. Các công c tích h p v i n n t
c
cung c p API
x lý ngu n tài nguyên trong không gian làm vi c (các d
án, các t p tin,
c). Tài nguyên
i di n b
ng thích
các bên khác có th m r ng hành vi c a h .
Không gian làm vi c b o qu n c p th p l ch s nh ng s
i tài
nguyên, tránh th
c t ch c
i
d ng c u trúc cây r t h u ích và hi u qu .T
, m i nút d li u ch
các công c c n thêm, lo i b , ho c làm m i.
Không gian làm vi cthông báo nh ng công c c n thi t cho vi
i
tài nguyên.
c tính này cho phép các nhà xây d ng m t s d án m r ng
t d án và cung c p nhi
kích ho t toàn
d án và không gian làm vi c v i d án. M t không gian làm vi ct
ngxây
d
,t
ng kích ho t các ho
ng c n thi t trong quá trình
xây d ngsau m i l n s
i tài nguyên (ho c hàng lo t ho
ng).
3. Bàn làm vi c (Workbench):
Bàn làm vi c là giao di
h
i dùng c a Eclipse, g m có
Standard Widget Toolkit (SWT) và JFace. Eclipse không hoàn toàn b t bu c
ph i s d ng SWT hay JFace l p trình giao di n, n
i l p trình v n có th
s d ngAWT hay SWING c a Java thông qua vi
t các Plugins.
Ph m Vi t M nh
CT1301
18
án t t nghi p
p H i Phòng
SWT (Standard Widget Toolkit) là m t gói công c mã ngu n m
c
phát tri n b i IBM, cung c p cho các l p trình viên Java gi
phát
tri n giao di
h
i dùng. SWT cung c p m t h
cl p
ng API cho các v t d
h a th c hi n m t cách mà cho
phép tích h p ch t ch v i h th ng c a s
n. Toàn b giao di
i
dùng c a EclipsePlatform, và các thành ph n c m vào nó, u s d ng SWT
i s d ng.
JFace là gói công c
xây d ng giao di
i dùng c p cao, JFace
là t ng trên cùng c a SWT, cung c p các l p thu c mô hình MVC (ModelView- Controller) phát tri n các ng d
h ad
ho
l p t các u khi n trong giao di
m t l nh có th
c kích ho t b
các núttrên m t thanh công c .
i s d ng các l
c
i dùng. M
i di n cho
i dùng thông qua m t nút,menu, ho c
Bàn làm vi c
Không gi
SWT và JFace,
c c hai m
n
i dùng b công c , bàn làm vi c cung c p các tính cách giao di
i
dùng c a n n t ng Eclipse và cung c p các c
i s d ng. B i vì
nh vai trò trung tâm,
bàn làm vi c
i N n t ng Eclipse giao di
m t toàn th và v i các c a s chính c
i dùng th y khi các n n t ng
y. Các APIWorkbench ph thu c vào các APISWT
APIJFace. Vi c th c hi n Workbench
c xây d ng b ng cách s d ng c
hai SWT và JFace
c s d ng
Trong EclipsePlatform, giao di
i dùng d a trên các trình so n
th o, khung nhìn, và ph i c nh. T
mc
i dùng, các m u và
khung nhìn c
c nhìn th y trên màn hình.
Trình so n th o
ng. M t
cm ,
tin,
c tích h p ch t ch
Ph m Vi t M nh
CT1301
i dùng m , ch nh s
g n gi
i
h th ng t p
c. Khi ho
ng,
19
án t t nghi p
p H i Phòng
m t trình so n th ocó th b sung các l nh lên thanh menuvà thanh công c .
N n t ng này cung c p m t trình so n th o tiêu chu n cho các ngu n tài
n, nhi u trình so n th oc th
c cung c p b i các Plugins.
Khung nhìn cung c p thông tin v m t s
làm vi c t i khung làm vi c. M t khung nhìn có th h tr m t m u b ng cách
cung c p thông tin v các tài li
c ch nh s a. M t khung nhìn có th
ng cách cung c p thông tin v các
c ch n.
M t c a s làm vi c có th có m t s khung nhìn riêng bi t, ch m t
trong s
nhìn th y t i b t k th
m nào. M
m có khung nhìn
riêng và m u c
cs px
trình bày trên màn hình
4.
i h tr (Team support):
N n t ng Eclipse cho phép m t d án trong vùng làm vi
t theo phiên
b n và qu n lý c u hình v i m
c liên quan. N n t ng này có
m m r ng và m t API cung c
cho phép các thành
ph nm i
c g n vào.
Các ch
c cung c p b i m t s n ph m c th luôn
ng
n công vi c c
i dùng, ví d , b
c công khai
l y t p tin t
, tr l i các t
c c p nh t vào kho, và
so sánh các phiên b n t p tin k
, các n n t ng Eclipse có
m t cái nhìn t ng quan và cho phép m i nhà cung c p m t s
xác
nh công vi c riêng c
i dùng quen thu c v i nhóm s n ph m
có th nhanh chóng h c cách s d ng nó t bên trong Eclipse.
5. Tr giúp (Help):
Cung c p h th ng tài li u m r ng, có th
nh d ng HTML hay
XML.Nh
i mu n phát tri n Eclipse s s
d ng PDE
(PluginDevelopmentEnvironment
b sung thêm các Plugin m i.
Ph m Vi t M nh
CT1301
20