Đồ Án Các vấn đề của các mẫu thiết kế

Thảo luận trong 'Công Nghệ Thông Tin' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    170
    Điểm thành tích:
    0
    Xu:
    0Xu
    Tên đề tài:
    CÁC VẤN ĐỀ CỦA CÁC MẪU THIẾT KẾChương 1 LỜI NÓI ĐẦU


    Phần mềm ngày càng trở nên phức tạp, thách thức trong những năm tới không phải là vấn đề tốc độ, kinh phí hay sức mạnh của nó mà sẽ là độ phức tạp.Vì vậy chúng ta phải dần loại bỏ chúng. Một cách tổng quan khi xây dựng phần mềm thì ta phải quan tâm đến tổ chức, các quan hệ cấu trúc hình thành nên hệ thống. Do khả năng của con người là có giới hạn khi khảo sát các vấn đề phức tạp như tổng thể. Thông qua mô hình hoá ta sẽ giới hạn vấn đề bằng cách nghiên cứu tập trung vào một khía cạnh của vấn đề và vào một thời điểm. Không nên giải quyết tất cả các vấn đề vào một lần thiết kế, cần tranh thủ sử dụng lại những trường hợp đã làm, khi ta tìm được một giải pháp tốt, cần phát huy nó cho lần sau.
    Xu thế áp dụng phương pháp hướng đối tượng thay cho phương pháp cấu trúc ngày càng phổ biến khi xây dựng các hệ thống phần mềm lớn và phức tạp. Do tầm quan trọng và tính linh hoạt của phương pháp phân tích thiết kế hướng đối tượng được sử dụng rộng rãi tại các nước đang phát triển và đã được áp dụng tại Việt Nam.


    Phân tích hướng đối tượng là một vấn đề khó, càng khó hơn cho người thiết kế mới vì họ thường lúng túng trong vấn đề chọn lựa phương pháp nào tối ưu cho dự án, cho hệ thống của họ; đồng thời làm sao sử dụng lại và nâng cấp từ những thuật toán hướng đối tượng đã được sử dụng trước đó. Điều này cũng gây trở ngại cho những người cần tìm hiểu về hệ thống đang tồn tại, vì tính ưu việt và đặc trưng của các ngôn ngữ hướng đối tượng nên họ thường hay khó khăn nhận biết các lớp, các đối tượng . kế thừa đặc biệt là trong các dự án lớn, hệ thống lớn Khi gặp một vấn đề, người thiết kế đã lựa chọn một phương pháp tối ưu, sao cho nó tốt nhất, phù hợp nhất, sử dụng dễ, giảm thiểu được độ phức tạp cũng như tiết kiệm công sức cho những lần phát triển lần sau, cũng như những lần tái sử dụng lại chúng. Thông thường khi tìm ra một giải pháp tốt, ta thường lưu lại để sử dụng chúng cho lần sau, để lần sau sẽ ít tốn thời gian để tìm hiểu mà vẫn có thể áp dụng chúng tốt. Chính vì dựa vào khái niệm mẫu thiết kế của Christopher Alexander khi áp dụng trong thiết kế các toà nhà, giúp cho người kiến trúc sư dựa vào một số khuôn dạng sẵn có mà thiết kế theo

    Chương 1 LỜI NÓI ĐẦU 1
    1.1. Khó khăn khi phát triển công nghệ phần mềm và sử dụng Mẫu thiết kế. 2
    1.2. Mục đích của đồ án. 3
    1.3. Việc nghiên cứu đồ án giải quyết điều gì 4
    1.4. Việc giải quyết đồ án ở giai đoạn tốt nghiệp được thực hiện như thế nào? 4


    Chương 2 ĐẶT VẤN ĐỀ 6
    2.1. Mục đích của đề tài 6
    2.2. Giới thiệu bài toán, nhiệm vụ của đề tài 6
    2.3. Lý do chọn đề tài. 7


    Chương 3 TỔNG QUAN VỀ MẪU THIẾT KẾ 8
    3.1. Lịch sử về mẫu dáng thiết kế. 8
    3.1.1. Mục đích của các mẫu thiết kế. 8
    3.1.2. Các mẫu thiết kế giải quyết vấn đề như thế nào? 9
    3.1.3. Các phương pháp để chọn các mẫu thiết kế 9
    3.1.4. Làm thế nào để thiết kế một mẫu thiết kế 10
    3.2. Các mẫu dáng thiết kế (Mẫu thiết kế) 10
    3.2.1. Khái quát chung về Mẫu thiết kế. 10
    3.2.2. Mẫu khởi tạo 11
    3.2.2.1. Abstract Factory. 12
    3.2.2.1.1 Mục đích 12
    3.2.2.1.2 Ví dụ 12
    3.2.2.1.3 Ứng dụng 13
    3.2.2.1.4 Cấu trúc 13
    3.2.2.1.5 Các thành phần 14
    3.2.2.1.6 Phối hợp cộng tác với các mẫu khác: 14
    3.2.2.1.7 Kết quả 14
    3.2.2.1.8 Cài đặt 15
    3.2.2.1.9 Các mẫu thiết kế liên quan 15
    3.2.2.2. Builder 16
    3.2.2.2.1 Ví dụ 16
    3.2.2.2.2 Ứng dụng 16
    3.2.2.2.3 Cấu trúc: 17
    3.2.2.2.4 Thành phần 17
    3.2.2.2.5 Phối hợp cộng tác. 17
    3.2.2.2.6 Kết quả 18
    3.2.2.2.7 Cài đặt 18
    3.2.2.2.8 Các Mẫu quan hệ 19
    3.2.2.3. Factory Method 19
    3.2.2.3.1 Mục đích 19
    3.2.2.3.2 Ví dụ 19
    3.2.2.3.3 Thành phần 20
    3.2.2.3.4 Cấu trúc: 20
    3.2.2.3.5 Thành phần: 20
    3.2.2.3.6 Kết quả 21
    3.2.2.3.7 Cài đặt 21
    3.2.2.3.8 Các mẫu liên quan: 22
    3.2.2.4. Prototype 23
    3.2.2.4.1 Mục đích 23
    3.2.2.4.2 Ví dụ 23
    3.2.2.4.3 Kết quả 24
    3.2.2.4.4 Cấu trúc 25
    3.2.2.4.5 Thành phần : 25
    3.2.2.4.6 Phối hợp cộng tác 25
    3.2.2.4.7 Kết qủa 25
    3.2.2.4.8 Cài đặt 26
    3.2.2.4.9 Các mẫu liên quan 26
    3.2.3. Singleton 26
    3.2.3.1. Mục đích 26
    3.2.3.2. Ví dụ 26
    3.2.3.3. Ứng dụng 27
    3.2.3.4. Cấu trúc 27
    3.2.3.5. Thành phần 27
    3.2.3.6. Cộng tác: 27
    3.2.3.7. Kết quả : 28
    3.2.3.8. Cài đặt 28
    3.2.3.9. Các mẫu liên quan 29
    3.2.4. Các mẫu cấu trúc(Structural Mẫu) 30
    3.2.4.1. Adapter mẫu 30
    3.2.4.1.1 Mục đích 30
    3.2.4.1.2 Ví dụ: 30
    3.2.4.1.3 Ứng dụng 31
    3.2.4.1.4 Cấu trúc: 31
    3.2.4.1.5 Thành phần: 32
    3.2.4.1.6 Các cộng tác 32
    3.2.4.1.7 Kết quả. 33
    3.2.4.1.8 Cài đặt. 33
    3.2.4.1.9 Các mẫu liên quan: 33
    3.2.4.2. Bridge mẫu 34
    3.2.4.2.1 Mục đích 34
    3.2.4.2.2 Ví dụ 34
    3.2.4.2.3 Ứng dụng 35
    3.2.4.2.4 Cấu trúc: 35
    3.2.4.2.5 Thành phần: 35
    3.2.4.2.6 Một số kết quả thu được khi áp dụng Bridge Error! Bookmark not defined.
    3.2.4.2.7 Một số vấn đề cần lưu ý khi sử dụng Brigde mẫu: Error! Bookmark not defined.
    3.2.4.2.8 Các mẫu liên quan 36
    3.2.4.3. Composite 37
    3.2.4.3.1 Mục đích 37
    3.2.4.3.2 Ví dụ 37
    3.2.4.3.3 Ứng dụng 38
    3.2.4.3.4 Cấu trúc: 38
    3.2.4.3.5 Thành phần 39
    3.2.4.3.6 Kết quả. 40
    3.2.4.3.7 Phối hợp cộng tác 40
    3.2.4.3.8 Cài đặt 40
    3.2.4.3.9 Các mẫu liên quan: 41
    3.2.4.4. Decorator 41
    3.2.4.4.1 Mục đích 41
    3.2.4.4.2 Ứng dụng 41
    3.2.4.4.3 Cấu trúc: 42
    3.2.4.4.4 Thành phần: 42
    3.2.4.4.5 Phối hợp cộng tác. 42
    3.2.4.4.6 Kết quả. 43
    3.2.4.4.7 Cài đặt 43
    3.2.4.4.8 Các mẫu liên quan: 43
    3.2.4.5. Facade 43
    3.2.4.5.1 Mục đích 43
    3.2.4.5.2 Ví dụ 43
    3.2.4.5.3 Ứng dụng 44
    3.2.4.5.4 Cấu trúc 45
    3.2.4.5.5 Thành phần 45
    3.2.4.5.6 Phối hợp cộng tác 45
    3.2.4.5.7 Kết quả 45
    3.2.4.5.8 Cài đặt 46
    3.2.4.5.9 Các mẫu liên quan 47
    3.2.4.6. Flyweight mẫu 47
    3.2.4.6.1 Mục đích 47
    3.2.4.6.2 Ứng dụng 47
    3.2.4.6.3 Cấu trúc: 48
    3.2.4.6.4 Thành phần: 48
    3.2.4.6.5 Phối hợp cộng tác. 49
    3.2.4.6.6 Kết quả. 49
    3.2.4.6.7 Cài đặt 50
    3.2.4.6.8 Các mẫu liên quan: 50
    3.2.4.7. Proxy 51
    3.2.4.7.1 Mục đích 51
    3.2.4.7.2 ví dụ 51
    3.2.4.7.3 Ứng dụng 52
    3.2.4.7.4 Cấu trúc: 52
    3.2.4.7.5 Thành phần: 53
    3.2.4.7.6 Phối hợp cộng tác 53
    3.2.4.7.7 Kết quả. 53
    3.2.4.7.8 Cài đặt 54
    3.2.4.7.9 Những mẫu liên quan: 54
    3.2.5. Các mẫu hoạt động (BEHAVIOR Pattern) 56
    3.2.5.1. CHAIN OF RESPONSIBILITY. 57
    3.2.5.1.1 Mục đích 57
    3.2.5.1.2 Ứng dụng: 57
    3.2.5.1.3 Cấu trúc: 58
    3.2.5.1.4 Thành phần: 58
    3.2.5.1.5 Kết quả 59
    3.2.5.1.6 Cài đặt 59
    3.2.5.1.7 Mẫu liên quan: 59
    3.2.5.2. COMMAND. 59
    3.2.5.2.1 Mục đích 59
    3.2.5.2.2 Ứng dụng 59
    3.2.5.2.3 Thành phần: 60
    3.2.5.2.4 Cộng tác: 60
    3.2.5.2.5 Kết quả: 61
    3.2.5.2.6 Cài đặt 61
    3.2.5.2.7 Các mẫu liên quan: 61
    3.2.5.3. INTERPRETER 61
    3.2.5.3.1 Mục đích 61
    3.2.5.3.2 Ứng dụng 61
    3.2.5.3.3 Cấu trúc: 62
    3.2.5.3.4 Thành phần: 62
    3.2.5.3.5 Cộng tác: 63
    3.2.5.3.6 Kết quả 63
    3.2.5.3.7 Cài đặt 64
    3.2.5.3.8 Các mẫu liên quan: 64
    3.2.5.4. ITERATOR 64
    3.2.5.4.1 Mục đích 64
    3.2.5.4.2 Ứng dụng 64
    3.2.5.4.3 Cấu trúc: 65
    3.2.5.4.4 Thành phần: 65
    3.2.5.4.5 Cộng tác: 65
    3.2.5.4.6 Kết quả 65
    3.2.5.4.7 Cài đặt 66
    3.2.5.4.8 Các mẫu liên quan: 66
    3.2.5.5. MEDIATOR. 66
    3.2.5.5.1 Mục đích 66
    3.2.5.5.2 Ứng dụng 67
    3.2.5.5.3 Cấu trúc: 67
    3.2.5.6. MEMENTO. 68
    3.2.5.6.1 Mục đích 68
    3.2.5.6.2 Ứng dụng 68
    3.2.5.6.3 Cấu trúc: 68
    3.2.5.6.4 Thành phần: 68
    3.2.5.6.5 Cộng tác: 69
    3.2.5.6.6 Kết quả 69
    3.2.5.6.7 Cài đặt 69
    3.2.5.6.8 Các mẫu liên quan: 69
    3.2.5.7. OBSERVER. 70
    3.2.5.7.1 Mục đích 70
    3.2.5.7.2 Ứng dụng 70
    3.2.5.7.3 Kết quả 70
    3.2.5.7.4 Cài đặt 70
    3.2.5.8. STATE. 71
    3.2.5.8.1 Mục đích 71
    3.2.5.8.2 Ứng dụng 71
    3.2.5.8.3 Cấu trúc: 71
    3.2.5.8.4 Thành phần: 72
    3.2.5.8.5 Kết qủa 72
    3.2.5.8.6 Cài đặt 72
    3.2.5.9. STRATEGY. 72
    3.2.5.9.1 Mục đích 72
    3.2.5.9.2 Ứng dụng 72
    3.2.5.9.3 Kết quả. 73
    3.2.5.9.4 Cài đặt 73
    3.2.5.10. TEMPLATE. 73
    3.2.5.10.1 Mục đích 73
    3.2.5.10.2 Ví dụ 74
    3.2.5.10.3 Ứng dụng 74
    3.2.5.10.4 Cấu trúc: 74
    3.2.5.10.5 Thành phần: 75
    3.2.5.10.6 Phối hợp cộng tác 75
    3.2.5.10.7 Kết quả 75
    3.2.5.10.8 Cài đặt 76
    3.2.5.11. VISITOR. 76
    3.2.5.11.1 Mục đích 76
    3.2.5.11.2 Ứng dụng 76
    3.2.5.11.3 Kết quả 76
    3.2.5.11.4 Cài đặt 77
    3.3. Giới thiệu nội dung dự án 77
     
Đang tải...