Mã tài liệu: 298538
Số trang: 99
Định dạng: pdf
Dung lượng file: 2,883 Kb
Chuyên mục: Kỹ thuật - Công nghệ
MỤC LỤC
LỜI CAM ĐOAN 2
MỤC LỤC ...3
DANH MỤC HÌNH ẢNH ...5
MỞ ĐẦU .6
CHƯƠNG I: KỸ THUẬT TÁI CẤU TRÚC MÃ NGUỒN (REFACTORING) ..7
I.1 ĐỊNH NGHĨA KỸ THUẬT TÁI CẤU TRÚC MÃ NGUỒN 7
I.1.1 Ví dụ minh họa. 7
I.1.2 Định nghĩa kỹ thuật tái cấu trúc mã nguồn ... 19
I.2 HIỆU QUẢ CỦA TÁI CẤU TRÚC MÃ NGUỒN 20
I.2.1 Refactoring cải thiện thiết kế phần mềm ... 20
I.2.2 Refactoring làm mã nguồn phần mềm dễ hiểu .. 20
I.2.3 Refactoring giúp phát hiện và hạn chế lỗi . 21
I.2.4 Refactoring giúp đấy nhanh quá trình phát triển phần mềm . 21
I.3 KHI NÀO THỰC HIỆN TÁI CẤU TRÚC MÃ NGUỒN . 22
I.3.1 Refactor khi thêm chức năng . 22
I.3.2 Refactor khi cần sửa lỗi 22
I.3.3 Refactor khi thực hiện duyệt chương trình ... 23
I.4 CÁC KỸ THUẬT TÁI CẤU TRÚC MÃ NGUỒN .. 23
I.4.1 Danh mục các kỹ thuật tái cấu trúc mã nguồn ... 23
I.5 NHẬN XÉT VÀ KẾT LUẬN 26
CHƯƠNG II: LỖI CẤU TRÚC (BAD SMELLS) TRONG MÃ NGUỒN ...27
II.1 KHÁI NIỆM VỀ LỖI CẤU TRÚC (BAD SMELLS) 27
II.2 LỖI CẤU TRÚC VÀ GIẢI PHÁP CẢI TIẾN. 27
II.2.1 Duplicated Code - Trùng lặp mã . 27
II.2.2 Long Method – Phương thức phức tạp . 28
II.2.3 Large Class – Qui mô lớp lớn.. 30
II.2.4 Long Parameter List - Danh sách tham số quá dài ... 31
II.2.5 Divergent Change – Cấu trúc lớp ít có tính khả biến .. 32
II.2.6 Shotgun Surgery – Lớp được thiết kế không hợp lý và bị phân rã 32
II.2.7 Feature Envy – Phân bố phương thức giữa các lớp không hợp lý .. 33
II.2.8 Data Clumps – Gôm cụm dữ liệu 34
II.2.9 Primitive Obsession – Khả năng thể hiện dữ liệu của lớp bị hạn chế . 34
II.2.10 Switch Statements – Khối lệnh điều kiện rẽ hướng không hợp lý ... 36
II.2.11 Lazy Class – Lớp được định nghĩa không cần thiết .. 38
II.2.12 Speculative Generality – Cấu trúc bị thiết kế dư thừa... 38
II.2.13 Temporary Field – Lạm dụng thuộc tính tạm thời 39
II.2.14 Message Chains –Chuỗi phương thức liên hoàn khó kiểm soát... 39
II.2.15 Middle Man – Quan hệ ủy quyền không hợp lý/logic... 39
II.2.16 Inapproprite Intimacy - Cấu trúc thành phần riêng không hợp lý 41
II.2.17 Alternative Classes with Different Interfaces - Đặc tả lớp không rõ ràng 41
II.2.18 Incomplete Library Class – Sử dụng thư viện lớp chưa được hòan chỉnh 41
II.2.19 Data Class – Lớp dữ liệu độc lập . 42
II.2.20 Refused Bequest – Quan hệ kế thừa không hợp lý/logic . 43
Học viên thực hiện: Nhiêu Lập Hòa 3
Luận văn tốt nghiệp cao học – Khóa 2005 - 2008
II.2.21 Comments – Chú thích không cần thiết 43
II.3 NHẬN XÉT VÀ KẾT LUẬN .. 44
CHƯƠNG III: NỀN TẢNG .NET VÀ NGÔN NGỮ LẬP TRÌNH C# 45
III.1 TỔNG QUAN VỀ NỀN TẢNG .NET .. 45
III.1.1 Định nghĩa .NET 45
III.1.2 Mục tiêu của .NET . 45
III.1.3 Dịch vụ của .NET... 45
III.1.4 Kiến trúc của .NET 46
III.2 NGÔN NGỮ LẬP TRÌNH C#.. 47
III.2.1 Tổng quan về ngôn ngữ lập trình C# . 47
III.2.2 Đặc trưng của các ngôn ngữ lập trình C#... 47
III.3 MÔI TRƯỜNG PHÁT TRIỂN ỨNG DỤNG VISUAL STUDIO .NET .. 48
CHƯƠNG IV: ỨNG DỤNG KỸ THUẬT TÁI CẤU TRÚC MÃ NGUỒN ĐỂ
DÒ TÌM VÀ CẢI TIẾN CÁC ĐOẠN MÃ XẤU TRONG CHƯƠNG TRÌNH C# .49
IV.1 GIẢI PHÁP VÀ CÔNG CỤ HỖ TRỢ REFACTOR .. 49
IV.1.1 Đặc tả giải pháp triển khai . 49
IV.1.2 Một số công cụ và tiện ích hỗ trợ việc dò tìm và cải tiến mã xấu . 50
IV.1.3 Thử nghiệm minh họa các công cụ hỗ trợ refactor trong VS.Net.. 57
IV.1.4 Nhận xét và đánh giá.. 80
IV.2 ỨNG DỤNG KỸ THUẬT TÁI CẤU TRÚC MÃ NGUỒN ĐỂ DÒ TÌM VÀ
CẢI TIẾN CÁC ĐOẠN MÃ XẤU TRONG CHƯƠNG TRÌNH C#.. 81
IV.2.1 Thực hiện kỹ thuật tái cấu trúc mã nguồn trên chương trình thực tế. 82
IV.2.2 Phân tích và đánh giá kết quả thực hiện 94
IV.3 NHẬN XÉT VÀ KẾT LUẬN 95
CHƯƠNG V: KẾT LUẬN ...96
V.1 ĐÁNH GIÁ KẾT QUẢ CỦA ĐỀ TÀI ... 96
V.2 PHẠM VI ỨNG DỤNG 96
V.3 HƯỚNG PHÁT TRIỂN .. 97
V.3.1 Triển khai áp dụng trên các ngôn ngữ khác 97
V.3.2 Thử nghiệm xây dựng một refactoring tool tích hợp vào VS.NET ... 97
TÀI LIỆU THAM KHẢO .....98
MỞ ĐẦU
Trong qui trình phát triển phần mềm hiện nay, một thực tế đang tồn tại ở các công ty sản xuất phần mềm là các lập trình viên thường xem nhẹ việc tinh chỉnh mã nguồn và kiểm thử. Ngoài lý do đơn giản vì đó là một công việc nhàm chán, khó được chấp nhận đối với việc quản lý vì sự tốn kém và mất thời gian, còn một nguyên nhân khác là chúng ta không có những phương pháp và tiện ích tốt hỗ trợ cho những việc này. Điều này dẫn đến việc phần lớn các phần mềm không được kiểm thử đầy đủ và phát hành với các nguy cơ lỗi tiềm ẩn.
Phương thức phát triển phần mềm linh hoạt bắt đầu xuất hiện vào đầu những năm 90 với mục tiêu là phần mềm phải có khả năng biến đổi, phát triển và tiến hóa theo thời gian mà không cần phải làm lại từ đầu. Phương thức này được thực hiện dựa trên hai kỹ thuật chính là tái cấu trúc mã nguồn (refactoring) và kiểm thử (developer testing). Vì thế việc nghiên cứu và ứng dụng kỹ thuật tái cấu trúc mã nguồn nhằm tối ưu hóa mã nguồn và nâng cao hiệu quả kiểm thử là một nhu cầu cần thiết trong quá trình thực hiện và phát triển phần mềm.
Đề tài “Ứng dụng kỹ thuật tái cấu trúc mã nguồn để triển khai dò tìm và cải tiến các đoạn mã xấu trong chương trình C#” được thực hiện với mục đích nghiên cứu cơ sở lý thuyết kỹ thuật tái cấu trúc mã nguồn và áp dụng để triển khai việc dò tìm và cải tiến mã xấu (lỗi cấu trúc) trong các chương trình hiện đại và phổ biến hiện nay (C#).
Toàn bộ nội dung của luận văn bao gồm các chương: Chương 1: Kỹ thuật tái cấu trúc mã nguồn (refectoring)
Chương 2: Mã xấu (bad smells) và giải pháp cải tiến dựa trên refactoring
Chương 3: Nền tảng .NET và ngôn ngữ lập trình C#
Chương 4: Ứng dụng kỹ thuật tái cấu trúc mã nguồn để dò tìm và cải thiện mã xấu trong các chương trình C#
Chương 5: Kết luận
Những tài liệu gần giống với tài liệu bạn đang xem
📎 Số trang: 99
👁 Lượt xem: 529
⬇ Lượt tải: 17
📎 Số trang: 15
👁 Lượt xem: 564
⬇ Lượt tải: 18
📎 Số trang: 120
👁 Lượt xem: 597
⬇ Lượt tải: 16
📎 Số trang: 4
👁 Lượt xem: 491
⬇ Lượt tải: 18
📎 Số trang: 89
👁 Lượt xem: 624
⬇ Lượt tải: 16
📎 Số trang: 89
👁 Lượt xem: 577
⬇ Lượt tải: 17
📎 Số trang: 89
👁 Lượt xem: 33
⬇ Lượt tải: 16
📎 Số trang: 89
👁 Lượt xem: 478
⬇ Lượt tải: 16
📎 Số trang: 101
👁 Lượt xem: 633
⬇ Lượt tải: 16
📎 Số trang: 49
👁 Lượt xem: 1161
⬇ Lượt tải: 18
📎 Số trang: 71
👁 Lượt xem: 374
⬇ Lượt tải: 16
Những tài liệu bạn đã xem
📎 Số trang: 99
👁 Lượt xem: 501
⬇ Lượt tải: 16