Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Nghiên Cứu Và Cài Đặt Một Công Cụ Trên Nền Tảng Eclipse Để Hỗ Trợ Phát Triển Các Ứng Dụng Java
Nội dung xem thử
Mô tả chi tiết
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
VŨ THANH HÀ
NGHIÊN CỨU VÀ CÀI ĐẶT
MỘT CÔNG CỤ TRÊN NỀN TẢNG ECLIPSE
ĐỂ HỖ TRỢ PHÁT TRIỂN CÁC ỨNG DỤNG JAVA
Ngành: Công nghệ Thông tin
Chuyên ngành: Kỹ thuật phần mềm
Mã số: 60480103
LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN
NGƯỜI HƯỚNG DẪN KHOA HỌC: TS. ĐẶNG ĐỨC HẠNH
Hà Nội – 2018
L
i
LỜI CAM ĐOAN
Tôi xin cam đoan luận văn thạc sĩ “Nghiên cứu và cài đặt một công cụ trên
nền tảng Eclipse để hỗ trợ phát triển các ứng dụng Java” là công trình nghiên cứu
của riêng tôi và được sự hướng dẫn của TS. Đặng Đức Hạnh. Các nội dung nghiên cứu
và kết quả trong đề tài là trung thực và chưa từng được ai công bố trong bất kỳ công
trình nào khác.
Những phân tích, đánh giá được tác giả thu thập từ các nguồn khác nhau có ghi rõ
trong tài liệu tham khảo.
Học viên thực hiện
Vũ Thanh Hà
ii
LỜI CẢM ƠN
Để hoàn thành được luận văn thạc sĩ, bên cạnh sự nỗ lực của bản thân còn có sự
hướng dẫn nhiệt tình của quý Thầy Cô, cũng như sự động viên ủng hộ của gia đình và
bạn bè trong suốt quá trình nghiên cứu và thực hiện luận văn.
Tôi xin chân thành bày tỏ lòng biết ơn sâu sắc đến Thầy TS. Đặng Đức Hạnh,
người đã tận tình hướng dẫn và tạo mọi điều kiện tốt nhất cho tôi hoàn thành luận văn
này. Xin chân thành cảm ơn các thầy cô khoa Công nghệ thông tin, Trường đại học
Công Nghệ đã truyền đạt những kiến thức quý báu cũng như giúp đỡ tôi trong quá
trình học tập nghiên cứu tại trường.
Cuối cùng, xin gửi lời cảm ơn đến gia đình, bạn bè, đồng nghiệp, những người
đã hỗ trợ tôi trong suốt quá trình học tập, nghiên cứu và thực hiện luận văn.
Học viên thực hiện
Vũ Thanh Hà
iii
MỤC LỤC
Trang
LỜI CAM ĐOAN.........................................................................................................i
LỜI CẢM ƠN .............................................................................................................ii
MỤC LỤC................................................................................................................. iii
DANH SÁCH CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT..................................................v
DANH SÁCH CÁC HÌNH VẼ...................................................................................vi
MỞ ĐẦU.....................................................................................................................1
CHƯƠNG 1. KIẾN THỨC NỀN TẢNG.....................................................................3
1.1. Giới thiệu chương..............................................................................................3
1.2. Thiết kế hướng miền..........................................................................................3
1.2.1. Kiến thức về miền vấn đề ............................................................................3
1.2.2. Ngôn ngữ chung..........................................................................................4
1.2.3. Rằng buộc mô hình và cài đặt......................................................................5
1.2.4. Cô lập miền .................................................................................................7
1.2.5. Mô hình được thể hiện trong phần mềm ......................................................9
1.2.6. Vòng đời của đối tượng miền ....................................................................12
1.3. Phương pháp phát triển phần mềm hướng miền DDSDM ................................13
1.3.1. Phát triển một mô hình miền khái niệm .....................................................14
1.3.2. Định nghĩa các vòng lặp phát triển ............................................................15
1.3.3. Thực hiện các vòng lặp phát triển ..............................................................15
1.3.4. Tích hợp các nguyên mẫu phần mềm.........................................................15
1.4. Công cụ hỗ trợ phát triển phần mềm hướng miền ............................................16
1.4.1. Lịch sử phát triển.......................................................................................16
1.4.2. Tổng quan kiến trúc...................................................................................16
1.4.3. Ví dụ điển hình: CourseMan......................................................................17
1.4.4. Phát triển các lớp miền ..............................................................................18
1.4.5. Xây dựng nguyên mẫu phần mềm từ các lớp miền. ...................................24
iv
1.5. Thành phần mở rộng Eclipse Plug-in...............................................................25
1.5.1. Kiến trúc mở của Eclipse...........................................................................25
1.5.2. Môi trường phát triển Plug-in ....................................................................27
1.6. Tổng kết chương..............................................................................................30
CHƯƠNG 2. XÂY DỰNG ELCIPSE PLUGIN CHO ...............................................31
2.1. Giới thiệu chương............................................................................................31
2.2. Mô tả yêu cầu cho Plug-in ...............................................................................31
2.3. Mô hình thiết kế Eclipse Plugin cho phần mềm hướng miền............................34
2.3.1. Mô hình thiết kế UML cho Eclipse Plugin.................................................34
2.3.2. Thuật toán sinh phương thức và Thuật toán sinh module phần mềm .........36
2.3.3 Thuật toán sinh cấu hình phần mềm SWC..................................................40
2.4. Cài đặt chi tiết thiết kế plug-in.........................................................................42
2.5. Tổng kết chương..............................................................................................48
CHƯƠNG 3. CÀI ĐẶT VÀ THỰC NGHIỆM ..........................................................49
3.1. Giới thiệu chương............................................................................................49
3.2. Môi trường cài đặt ...........................................................................................49
3.3. Bài toán quản lý khóa học................................................................................49
3.4. Kết quả thực nghiệm........................................................................................52
3.5. Tổng kết chương..............................................................................................64
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN..................................................................65
TÀI LIỆU THAM KHẢO .........................................................................................66
v
DANH SÁCH CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
Từ viết tắt Thuật ngữ Ý nghĩa
API Application Programming Interface Giao diện lập trình ứng dụng
DDD Domain-Driven Design Thiết kế hướng miền
DDSDM Domain-driven software development
method
Phương pháp phát triển phần
mềm hướng miền
IDE Integrated Development Environment Môi trường phát triển tích hợp
JDT Java Development Tools Các công cụ phát triển Java
JRE Java Runtime Environment Môi trường chạy Java
MCC Module Configuration Class Lớp cấu hình mô đun phần mềm
MVC Model View Controller Mô hình thiết kế phần mềm
OSGi Open Service Gateway Initiative
Nền tảng Java cho việc phát
triển và triển khai plug-in
PDE Plug-in Development Environment Môi trường phát triển plug-in
RCP Rich Client Platform Nền tảng lập trình các ứng dụng
Desktop
SWC Software Configuartion Cấu hình phần mềm
SWT The Standard Widget Toolkit Bộ công cụ đồ họa chuẩn
UI User interface Giao diện người dùng
XML eXtensible Markup Language Ngôn ngữ đánh dấu mở rộng
vi
DANH SÁCH CÁC HÌNH VẼ
Hình 1.1: Các thành phần của thiết kế hướng miền
Hình 1.2: Kiến trúc phân lớp
Hình 1.3: Vòng đời của đối tượng miền
Hình 1.4: Tổng quan về phương pháp phát triển phần mềm hướng miền
Hình 1.5: Thiết kế cơ bản các lớp miền của phần mềm CourseMan
Hình 1.6: Áp dụng meta-attribute DAssoc cho ba liên kết của CourseMan
Hình 1.7: Kiến trúc mở của Eclipse
Hình 1.8: Hoạt động của plug-in
Hình 2.1: Các thử thách cho DSL dựa trên annotation
Hình 2.2: Biểu đồ tuần tự cho plug-in
Hình 2.3: Biểu đồ lớp cho plug-in
Hình 2.4: Biểu đồ triển khai cho plug-in
Hình 2.5: Mô hình kiến trúc phần mềm COURSEMAN
Hình 2.6: Các bước xây dựng Plug-in
Hình 2.7: Màn hình nhập thông tin ban đầu Plug-in mới
Hình 2.8: Màn hình chọn Template cho Plug-in mới
Hình 2.9: Màn hình dự án Plug-in mới đã tạo
Hình 2.10: Màn hình Extensions
Hình 2.11: Màn hình tạo các command
Hình 2.12: Màn hình khai báo các handlers
Hình 2.13: Màn hình khai báo các bindings
Hình 2.14: Màn hình khai báo vị trí của các item mới trên menu
Hình 3.1: Mô hình ca sử dụng của CourseMan
Hình 3.2: Mô hình miền khái niệm và các mô hình con của CourseMan
Hình 3.3: Đầu vào của thực nghiệm
Hình 3.4: Giao diện menu sinh phương thức cho lớp miền
Hình 3.5: Giao diện menu sinh cấu hình mô-đun phần mềm
Hình 3.6: Cấu hình mô-đun phần mềm được sinh ra
Hình 3.7: Giao diện menu sinh cấu hình mô-đun phần mềm
Hình 3.8: Cấu hình phần mềm SWC1 được sinh ra
Hình 3.9: Cấu hình phần mềm SWC1 được sinh ra
Hình 3.10: Cấu hình Run Configurations để chạy mã nguồn
Hình 3.11: Giao diện phần mềm CourseMan
Hình 3.12: Giao diện các form của CourseMan trong vòng lặp đầu tiên
Hình 3.13: Giao diện các form của CourseMan sau khi sửa cấu hình mô-đun