Slide phân tích và thiết kế phần mềm

34 4 0
Slide phân tích và thiết kế phần mềm

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Design Patterns nlhdung@fit.hcmus.edu.vn CuuDuongThanCong.com https://fb.com/tailieudientucntt What Are Design Patterns? • Solutions to common problems • Targets of refactoring, not design • Powerful, flexible, reusable CuuDuongThanCong.com https://fb.com/tailieudientucntt Pattern Types CuuDuongThanCong.com https://fb.com/tailieudientucntt Creational Patterns Concerned with the creation of objects and instances CuuDuongThanCong.com https://fb.com/tailieudientucntt Structural Patterns Concerned with the overall design of the system and its constituent classes and objects CuuDuongThanCong.com https://fb.com/tailieudientucntt Behavioral Patterns Concerned with the assignment of responsibilities to objects and classes CuuDuongThanCong.com https://fb.com/tailieudientucntt Style for Describing Patterns • We will use this structure: • Pattern name • Purpose: what problem the pattern addresses and the general approach of the pattern • UML for the pattern • Participants: a description as a class diagram • Use Example(s): examples of this pattern, in C# and other CuuDuongThanCong.com https://fb.com/tailieudientucntt Singleton CuuDuongThanCong.com https://fb.com/tailieudientucntt Singleton - Purpose • This pa(ern ensures that a class has only one instance and provides a global point of access to it • Exactly one instance of a class is required • Controlled access to a single object is necessary CuuDuongThanCong.com https://fb.com/tailieudientucntt Singleton - UML CuuDuongThanCong.com https://fb.com/tailieudientucntt Composite – Sample CuuDuongThanCong.com https://fb.com/tailieudientucntt Composite – Sample • Project’s source code… CuuDuongThanCong.com https://fb.com/tailieudientucntt Composite – Sample CuuDuongThanCong.com https://fb.com/tailieudientucntt Prototype CuuDuongThanCong.com https://fb.com/tailieudientucntt Prototype - Purpose • Create objects by cloning a prototypical instance • Consumes less resources than creating new objects CuuDuongThanCong.com https://fb.com/tailieudientucntt Prototype – UML CuuDuongThanCong.com https://fb.com/tailieudientucntt Prototype – Sample CuuDuongThanCong.com https://fb.com/tailieudientucntt Prototype – Sample • Project’s source code… CuuDuongThanCong.com https://fb.com/tailieudientucntt Template CuuDuongThanCong.com https://fb.com/tailieudientucntt Template - Purpose • This pattern is used to define the basic steps of an algorithm/task and allow the implementation of the individual steps to be changed CuuDuongThanCong.com https://fb.com/tailieudientucntt Template – UML CuuDuongThanCong.com https://fb.com/tailieudientucntt Template – Sample CuuDuongThanCong.com https://fb.com/tailieudientucntt Prototype – Sample • Project’s source code… CuuDuongThanCong.com https://fb.com/tailieudientucntt Questions? CuuDuongThanCong.com https://fb.com/tailieudientucntt Thanks! Reference: • Erich Gamma, John Vlissides, Ralph Johnson, and Richard Helm, “Design Patterns: Elements of Reusable Object-Oriented Software”, 1994 • Bert Bates, Kathy Sierra, Eric Freeman, Elisabeth Robson, “Head First Design Patterns”, 2009 CuuDuongThanCong.com https://fb.com/tailieudientucntt

Ngày đăng: 06/12/2021, 16:27

Tài liệu cùng người dùng

Tài liệu liên quan