: Operator Computer
Nhận diện một số lớp thiết kế
lMơ hình thiết kế phần nào chịu ảnh hưởng từ ngơn ngữ lập trình, thư viện hỗ trợ, framework, hệ điều hành và loại máy tính
lMột số lớp sẽ xuất hiện khi áp dụng những yếu tố trên
uNgơn ngữ lập trình: template, CObject...
uThư viện hỗ trợ: lớp Date, Time, List, Map, vector,
iostream…
uFramework: Applet, Panel, CDocument, CView,
HttpServlet…
uHệ điều hành: các lớp thao tác file, mở cầu nối network, các phần tử giao diện….
Nhận diện một số lớp thiết kế
lMột số lớp khác xuất hiện làm chức năng duyệt
(iterate) một lớp khác hay thực hiện các tính tốn phức tạp...
lSử dụng trực tiếp các lớp do thư viện hay ngơn ngữ
cung cấp, hoặc
lTạo ra lớp mới bằng cách thừa kế hay tích hợp các lớp
cĩ sẵn, ví dụ CArray<Isoquant, Isoquant&>
lBổ sung các lớp mới vào lược đồ lớp đồng thời cập
nhật các mối quan hệ mới(bao gộp, phụ thuộc)
Nhận diện một số lớp thiết kế
lTrong mơ hình phân tích cần phải chỉ rõ kiểu(hoặc cấu trúc dữ liệu) và mức độ truy xuất của các thuộc tính
lCĩ thể chọn một lớp cung cấp
bởi thư viện lập trình để cụ thể
hố kiểu hay cấu trúc dữ liệu⇒
bổ sung lớp của thư viện và quan hệ bao gộp vào lược đồ lớp + GetSubject( ): String + toString( ): String # subject: String # content: String Message <<entity>> CDate sent 1
Nhận diện một số lớp thiết kế
lCác lược đồ mơ tả hành vi(cộng tác, tuần tự, trạng thái, hành động) giúp nhận diện chính xác các tác vụ của các lớp
lDựa vào các thơng điệp hay hành động để xác định
signaturecủa các tác vụ
lVí dụ: nhận diện một tác vụ của lớp Database
fetchStudent( code: Long ): StudentInfo;
setReg( reg: Registration );
Nhận diện một số lớp thiết kế
lVí dụ: nhận diện một tác vụ của lớp ChildView
render( ); store( ); load( );
model( map: FieldMap, param );
lVí dụ: nhận diện một tác vụ của lớp LoginForm
submit( uname: String; psswd: String );
makeWelcome( );