Phát triển mẫu thiết kế phần mềm và ứng dụng Nghiêm Văn Triệu Trường Đại học Công nghệ Luận văn Thạc sĩ ngành: Công nghệ phần mềm; Mã số: 60 48 10 Người hướng dẫn: PGS.TS.. Đoàn Văn Ba
Trang 1Phát triển mẫu thiết kế phần mềm và ứng dụng
Nghiêm Văn Triệu
Trường Đại học Công nghệ Luận văn Thạc sĩ ngành: Công nghệ phần mềm; Mã số: 60 48 10
Người hướng dẫn: PGS.TS Đoàn Văn Ban
Năm bảo vệ: 2010
Abstract: Tổng quan về mẫu thiết kế phần mềm: đưa ra khái niệm và giới thiệu nội
dung các mẫu thiết kế GOF (nhóm mẫu tạo lập, nhóm mẫu cấu trúc, nhóm mẫu hành vi) Giới thiệu các nguyên lý thiết kế mẫu phần mềm: các nguyên lý thiết kế hướng đối tượng và các nguyên lý xây dựng mẫu thiết kế phần mềm Nghiên cứu phương pháp thiết kế mẫu phần mềm: tìm hiểu các thành phần cơ bản, các định dạng mẫu thiết kế, tìm hiểu về định dạng GOF của mẫu thiết kế và việc lựa chọn định dạng mẫu thiết kế
Trình bày sự phát triển mẫu thiết kế và ứng dụng của nó
Keywords: Công nghệ phần mềm; Công nghệ thông tin; Thiết kế phần mềm; Tin học Content
MỞ ĐẦU
Một trong những tiêu chuẩn quan trọng để đánh giá chất lượng phần mềm là khả năng tái sử dụng Thực tế cho thấy mỗi dự án phần mềm là một thực thể phức tạp và duy nhất Nhưng giữa các thực thể đó ta vẫn tìm thấy sự lặp lại ở một hoặc nhiều điểm Qua quá trình nghiên cứu, hướng giải quyết cho các vấn đề mang tính chất lặp đi lặp lại khi phát triển các hệ thống phần mềm đã được các chuyên gia đúc kết và nâng lên mức tổng quát Từ đó hình thành khái niệm mẫu thiết kế
Năm 1995, Erich Gamma và các cộng sự của ông đã công bố cuốn sách “Elements of reusable Object Oriented Software” và đã đánh dấu sự ra đời của thiết kế mẫu Đây là bước tiến vô cùng quan trọng đối với việc thiết kế phần mềm hướng đối tượng
Hiện nay, nhiều hệ thống phần mềm được thiết kế theo cách tiếp cận hướng đối tượng
và áp dụng mô hình mẫu thiết kế (Design Pattern) Mẫu thiết kế giúp ta giải quyết bài toán nhanh gọn, có khả năng tái sử dụng mà không cần phải thiết kế lại Mẫu thiết kế dựa trên nguyên lý thiết kế hướng đối tượng và nó được xem như là công cụ để phát hiện và mô tả bài toán ở mức trừu tượng cao mà vẫn bao hàm đầy đủ ngữ nghĩa của bài toán ứng dụng
Erich Gamma và các cộng sự đã đưa ra 23 mẫu thiết kế nổi tiếng (các mẫu GOF – Gang of Four) Các mẫu thiết kế đó đã được áp dụng rất thành công trong thiết kế các phần mềm hướng đối tượng Tuy nhiên với sự phát triển nhanh chóng của công nghiệp phần mềm
và phương pháp thiết kế hướng đối tượng, đã nảy sinh rất nhiều tình huống đòi hỏi và phát
Trang 2sinh những mẫu thiết kế mới cho phù hợp Cho đến nay đã có rất nhiều các mẫu thiết kế đã được đưa ra dựa trên việc cải biến các mẫu trên cũng như các mẫu thiết kế mới Do đó cần thiết có những nghiên cứu phương pháp luận về mẫu thiết kế Đồng thời trên cơ sở đó đưa ra các phương pháp để xây dựng lên các mẫu thiết kế trong những tình huống phát sinh Vì vậy tôi đã lựa chọn đề tài “Phát triển mẫu thiết kế phần mềm và ứng dụng” để tìm lời giải đáp cho những vấn đề trên
References
Tài liệu tiếng Việt:
1 Cao Giang Thiên Tài, Tống Nguyễn Quỳnh Trâm (2005), Hệ thống quản lý mẫu thiết
kế và thành phần từ mẫu thiết kế phục vụ cho việc xây dựng hệ thống thông tin, Khóa
luận tốt nghiệp đại học, ĐHKHTN-ĐHQG TPHCM 2005
2 Trần Đan Thư, Huỳnh Thụy Bảo Trân (2007), Áp dụng mẫu thiết kế hướng đối tượng
trong phát triển phần mềm web, Tạp chí phát triển KHCN, tập 10, số 11-2007
Tài liệu tiếng Anh:
3 Alan Shalloway, James R.Trott (2000), Design patterns Explained A new perspective
on Object oriented Design
4 Brad Appleton (2000), Patterns and Software: Essential Concepts and Terminology
5 Christian Gross (2006), Ajax Patterns and Best Practices, Apress
6 Eric Gamma, Richard Helm, Ralph Rohnson, Jojhn Vlissides (1998), Design Patterns – Elements of Reusable Object Oriented Software, Addison-Wesley
7 Frank Buschmann, Regine Meunier, Hans Rohnert, Peter Sommerlad, Michael Stal
(1996), A system of pattern, Wiley
8 Kevlin Henney, IFA Consulting, Dirk Riehle (2003), Object pattern
9 Martin Fower (2000), Patterns of Enterprise Application Architecture, Addison
Wesley
10 Michael Mahemoff (2006), Ajax Design Patterns, O'Reilly
11 Robert C Martin (2000), Design Principles and Design Patterns
12 Steven John Metsker (2002), Design Patterns Java™ Workbook, Addison Wesley
13 Steve Adolph, Paul Bramble, Alistair Cockburn, Andy Pols (2002), Patterns for
Effective Use Cases, Addison Wesley
14 Tom Fischer, Hohn Slater (2002), Professional C# Design patterns Applied, Wrox
15 Thomas K¨uhne (1998), A Functional Pattern System for Object-Oriented Design,
Cordon Art
16 William Crawford, Jonathan Kaplan (2003), J2EE Design Patterns, O'Reilly
17 William Stamatakis (2000), Visual Basic Design Patterns, Microsoft
Trang 318 Thomas K¨uhne (1998), A Functional Pattern System for Object-Oriented Design,
Cordon Art B.V