Giáo trình Phân tích, thiết kế hướng đối tượng với UML: Phần 2 - Trường ĐH Công nghiệp Quảng Ninh

110 6 0
Giáo trình Phân tích, thiết kế hướng đối tượng với UML: Phần 2 - Trường ĐH Công nghiệp Quảng Ninh

Đ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

Phần 2 của giáo trình Phân tích, thiết kế hướng đối tượng với UML tiếp tục cung cấp cho học viên những nội dung về: mô hình động thái - các biểu đồ tương tác và hành động trong hệ thống; thiết kế các biểu đồ cộng tác và biểu đồ thành phần của hệ thống; kiến trúc hệ thống và phát sinh mã trình;... Mời các bạn cùng tham khảo!

Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban CHƯƠNG V MƠ HÌNH ĐỘNG THÁI: CÁC BIỂU ĐỒ TƯƠNG TÁC VÀ HÀNH ĐỘNG TRONG HỆ THỐNG Chương trình bày mơ hình mơ tả hành vi hệ thống:  Mô tả hành vi đối tượng: Biểu đồ trạng thái, trình tự, cộng tác biểu đồ hành động  Các kiện, trạng thái thao tác đối tượng hệ thống,  Sự trao đổi, tương tác đối tượng,  Xây dựng biểu đồ trạng thái biểu đồ trình tự mơ tả hoạt động hệ thống phần mềm 5.1 Mơ hình hố hành vi hệ thống Tất hệ thống có cấu trúc tĩnh hành vi động cần mô hình hố UML cung cấp biểu đồ để thể hai phương diện đó:  Cấu trúc tĩnh mô tả bởi: biểu đồ lớp, đối tượng mối quan hệ chúng  Hành vi động mô tả bởi: biểu đồ trạng thái, trình tự, cộng tác biểu đồ hành động Các đối tượng trao đổi với cách gửi thông điệp để thực nhiệm vụ hệ thống Sự trao đổi hay gọi tương tác hệ thống thể biểu đồ: (i) Biểu đồ trạng thái (StateDiagram): mô tả trạng thái, hành vi đối tượng Biểu đồ trạng thái bao gồm thông tin trạng thái khác đối tượng, thể đối tượng chuyển từ trạng thái sang trạng thái khác nào, hành vi ứng xử đối tượng có kiện xảy để làm thay đổi trạng thái (ii) Biểu đồ trình tự (Sequence Diagram): mô tả trao đổi, tương tác đối tượng với theo trình tự thời gian Biểu đồ trình tự bao gồm phần tử biểu diễn cho đối tượng, thông điệp gửi nhận trình tự theo thời gian để thực ca sử dụng hệ thống (iii) Biểu đồ cộng tác (Collaboration Diagram): mô tả tương tác đối tượng với theo ngữ cảnh không gian cơng việc - 111 - Phân tích, thiết kế hướng đối tượng với UM L (iv) Đoàn Văn Ban Biểu đồ hành động (Activity Diagram): mô tả cách đối tượng tương tác với nhấn mạnh công việc, xác định hành động thứ tự thực hành động Xây dựng biểu đồ tương tác thực việc gán trách nhiệm cho đối tượng Từ biểu đồ tương tác, người thiết kế phát thêm lớp, thao tác cần thực mối lớp, v.v Do vậy, biểu đồ tương tác trở thành tảng cho bước cịn lại q trình phát triển phần mềm Nhận xét: Không phải tất hệ thống cần bốn biểu đồ để mô tả hành vi ứng xử đối tượng ca sử dụng Số biểu đồ tương tác cần xây dựng hồn tồn phụ thuộc vào mức độ khó, phức tạp toán ứng dụng Một số người sử dụng biểu đồ trình tự, biểu đồ trạng thái pha phân tích để mơ tả hoạt động hệ thống, sau xây dựng biểu đồ cộng tác, biểu đồ hành động để phục vụ cho việc thiết kế chi tiết thành phần hệ thống ([4], [6], [7]) Đối với hệ thống tương đối đơn giản cần biểu đồ trình tự biểu đồ trạng thái đủ 5.1.1 Các kiện hành động hệ thống Trong trình tương tác với hệ thống, tác nhân gây kiện cho làm hệ thống hoạt động yêu cầu hệ thống phải thực số thao tác để đáp ứng yêu cầu tác nhân Các kiện phát sinh tác nhân có liên quan chặt chẽ với hoạt động mà hệ thống cần thực Điều suy phải xác định hoạt động hệ thống thông qua kiện mà tác nhân gây Vậy, kiện hành động kích hoạt hệ thống để hoạt động, tác động lên hệ thống để hoạt động cách Nói cách khác, kiện xảy kết gây số hoạt động sau hệ thống Ví dụ: sau nhập vào hết mặt hàng mà khách chọn mua, người bán hàng nhấn phím “Kết thúc”(EndSale), hệ thống chuyển sang thực chức toán với khách mua hàng Việc người bán hàng nhấn phím “Kết thúc” kiện làm cho hệ thống chuyển sang trạng thái khác Các kiện độc lập có liên hệ với Ví dụ: Nhập thơng tin mặt hàng Thanh toán hai kiện phụ thuộc, kiện sau phải xảy sau kiện thứ nhất, kiện Trả tiền mặt trả séc độc lập với Những kiện độc lập kiện đồng thời Bởi kiện khơng phụ thuộc vào nên xảy thời điểm Ví dụ Hiển thị số tiền dư trả lại cho khách Cập nhật mặt hàng hệ thống HBH hai kiện độc lập với xảy đồng thời Các kiện chia thành hai loại: kiện bên kiện bên  Sự kiện bên kiện xảy bên hệ thống, đối tượng kích hoạt đối tượng khác - 112 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban  Sự kiện kiện tạo bên phạm vi hệ thống Sự kiện vào hệ thống kiện tác động vào hệ thống tác nhân tạo Hoạt động hệ thống thao tác mà hệ thống phải thực để trả lời, đáp ứng cho kiện vào Một số hoạt động hệ thống tạo kiện cho tác nhân để thông báo kiện hệ thống xảy ra, nhắc tác nhân phải hành động để có thơng tin mong muốn Điều hiển nhiên là: Các kiện vào kích hoạt hệ thống hoạt động hệ thống hoạt động để trả lời cho kiện vào mà tác nhân tạo Các kiện hoạt động hệ thống thường sử dụng để mô tả hình thức kịch cho ca sử dụng Ví dụ, khảo sát kịch ca sử dụng “Gọi điện thoại”, có hai tác nhân người gọi người nghe Dãy kiện ca sử dụng mô tả sau: Các kiện vào Người gọi nhấc tai nghe Người gọi quay số (ví dụ 5652 288) Người nghe nhấc ống tai nghe trả lời Người nghe đặt tai nghe xuống 11 Người gọi đặt tai nghe xuống Các kiện Tiếng bíp bíp báo hiệu máy điện thoại sẵn sàng để bắt đầu trao đổi đàm thoại Tín hiệu điện thoại nối với người nghe Điện thoại người gọi rung chuông (nếu không bận đàm thoại) Chuông ngừng kêu Đường dây điện thoại kết nối để hai người đàm thoại với 10 Đường dây bị ngắt Các kiện vào người gọi tạo ra, kiện lại tác động đến người nghe Hệ thống điện thoại hoạt động để trả lời cho kiện vào đồng thời phát sinh kiện Dãy kiện hoạt động Hệ thống điện thoại mô tả cách trực quan sau: - 113 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban : HTĐiệnThoại Người gọi Nhấc tai nghe Người nghe Âm hiệu mời gọi Quay số ĐT để gọi Âm hiệu sẵn sàng Rung chuông Người nghe trả lời Chuông ngừng kêu Đường dây thông Đường dây thông Đặt tai nghe xuống Đường dây bị ngắt Đường dây bị ngắt Đặt tai nghe xuống Hình 5-1 Biểu đồ vết kiện thực ca sử dụng “Gọi điện thoại” 5.1.2 Sự trao đổi thông điệp đối tượng Trong biểu đồ tương tác, đối tượng trao đổi với thông điệp Các đối tượng thường gửi, nhận theo:  Các giao thức trao đổi tin (Communication Protocol),  Hay lời gọi hàm, đối tượng gọi hàm đối tượng khác để xử lý yêu cầu Có thể thực hịên việc trao đổi thơng tin mạng, máy tính phần lớn thực thời gian thực (Real-Time) Các thơng điệp có ba kiểu trao đổi chính: msg() Kiểu đơn giản: ký hiệu Biểu diễn cho dòng điều khiển để chuyển thông điệp msg() từ đối tượng sang đối tượng khác mà không cần biết chi tiết trao đổi thông tin msg() Kiểu đồng bộ: ký hiệu Biểu diễn cho dòng điều khiển đồng hố, nghĩa có nhiều thơng điệp gửi đến (nhận được) thơng điệp trước (có mức độ ưu tiên cao) phải xử lý xong sau kết thúc cơng việc thơng điệp xử lý msg() Kiểu dị bộ: ký hiệu - 114 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban Biểu diễn cho dịng điều khiển thơng điệp khơng cần đồng bộ, nghĩa có nhiều thơng điệp gửi đến (hay nhận được) thơng điệp xử lý mà khơng cần biết thơng điệp khác kết thúc hay chưa thứ tự thực khơng quan trọng 5.2 Biểu đồ trình tự Theo yêu cầu giai đoạn phân tích, cần định nghĩa hệ thống hộp đen, hành vi hệ thống thể (What?) cần thực khơng cần thể thực (How?) Vì vậy, nhiệm vụ giai đoạn xác định mô tả hoạt động hệ thống theo yêu cầu tác nhân Nghĩa phải tìm kiện, thao tác (sự tương tác) đối tượng ca sử dụng Biểu đồ trình tự giúp thể kết 5.2.1 Các thành phần biểu đồ trình tự Biểu đồ trình tự mơ tả trao đổi thơng điệp đối tượng trình tự theo thời gian, thông điệp gửi nhận đối tượng hoạt động hệ thống Biểu đồ trình tự thể theo hai trục: (i) Trục dọc xuống thời gian xảy kiện, hay truyền thông điệp, biểu diễn đường gạch - gạch thẳng đứng đỉnh đến đáy biểu đồ (ii) Trục ngang từ trái qua phải dãy đối tượng tham gia vào tham gia vào việc trao đổi thông điệp với theo chiều ngang, có tác nhân Đối tượng biểu diễn hình chữ nhật có tên đối tượng cụ thể và/hoặc tên lớp gạch (hoặc tên lớp gạch biểu diễn cho đối tượng lớp đó) Biểu đồ trình tự đọc từ xuống dưới, từ trái sang phải Thứ tự đối tượng biểu đồ phải xếp cho đơn giản để dễ quan sát Thời gian thực thông điệp đối tượng, hay gọi hoạt động đối tượng biểu diễn hình chữ nhật hẹp dọc theo trục thẳng đứng đối tượng Ví dụ, :MyComputer gửi thông điệp print(aFile) tới :Printer mô tả hình 5-2 :MyComputer :Printer Print(aFile) Hình 5-2 Các thành phần biểu đồ trình tự - 115 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban Mỗi thơng điệp có tên gọi thể ý nghĩa thông tin cần gửi tham số liệu liên quan Thông thường lời gọi hàm Khi định nghĩa lớp sau thơng điệp nhận trở thành phương thức Một đối tượng gửi thơng điệp tới Những thơng điệp gọi phản thân, đối tượng gọi thao tác để thực Chú ý tác nhân ngồi kích hoạt đối tượng biểu đồ trình tự hoạt động, khơng phải phần tử biểu đồ loại Mặt khác, Notes sử dụng để thích cho đối tượng biểu đồ trình tự Scripts sử dụng để thích cho thông điệp Chúng đặt bên trái hoạt động đối tượng , ngang với mức thông điệp cần thích Scripts sử dụng để mơ tả điều kiện logic điều kiện lặp, ví dụ lệnh IF hay WHILE, v.v trình trao đổi thông điệp Scripts không hỗ trợ để tạo mã chương trình, giúp cho người phát triển hệ thống biết điều kiện cần phải tuân theo :DoiTuong A While B begin :DoiTuongB msg() :DoiTuongB :DoiTuong A msg() If(DK) then else end loop msg() Hình 5-3 Scripts biểu đồ trình tự Chúng ta xét tiếp ca sử dụng “Gọi điện thoại”, có hai tác nhân Caller (người gọi) Callee (người nghe) Hệ thống nhận kiện vào ký hiệu lời gọi hàm: liftReceiver() (nhấc tai nghe), dialsPhoneNumber() (quay số), answerPhone() (trả lời điện thoại) hangUp() (đặt tai nghe xuống, nhấc tay lên) Biểu đồ trình tự mơ tả cho hoạt động xác định sau: : System Caller liftReceiver() Callee dialsPhoneNumber() answerPhone() hangUp() hangUp() Hình 5-4 Biểu đồ trình tự mơ tả hoạt động “Gọi điện thoại” - 116 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban 5.2.2 Xây dựng biểu đồ trình tự Các bước xây dựng biểu đồ trình tự Xác định tác nhân, đối tượng tham gia vào ca sử dụng vẽ chúng theo hàng ngang theo ký hiệu, Xác định thông điệp (lời gọi hàm) mà tác nhân cần trao đổi với đối tượng đó, đối tượng tương tác với theo trình tự thời gian vẽ hoạt động từ xuống theo thứ tự thực thực tế Cần xác định xác loại thơng điệp trao đổi đối tượng đơn giản, đồng hay dị 5.2.3 Các biểu đồ trình tự mơ hình hành động hệ HBH Chúng ta tiếp tục xây dựng số biểu đồ trình tự mơ tả hành vi hệ thống bán hàng HBH Hành vi hệ thống thể biểu đồ trình tự thơng qua tương tác đối tượng với Sự tương tác thể lời gọi hàm khai báo công khai (public) lớp Biểu đồ mô tả hoạt động người bán hàng hệ thống Như kịch phân tích trên, sau chọn đủ hàng, người mua đưa giỏ (hoặc xe) hàng đến quầy để trả tiền Người bán hàng phải nhập vào thông tin số lượng mặt hàng Những thông tin mặt thường xác định thông qua mã sản phẩm upc (thuộc lớp UPC) Vậy đối tượng :NguoiBan phải gửi đến cho :HeThong (một hệ thống bán hàng) thông điệp enterItems()(upc, n), để nhập vào mã sản phẩm upc n đơn vị Khi nhập xong tất mặt hàng khách muốn mua phải báo cho hệ thống biết nhập xong cách nhấn nút Kết thúc, nghĩa gửi cho hệ thống thông điệp endSale() Hệ thống thông báo cho khách mua hàng biết tổng số tiền phải trả Nếu khách hàng trả tiền mặt :NguoiBan gửi tiếp đến cho :HeThong thơng điệp makePayment(soTien) Các hoạt động mô tả biểu đồ trình tự hình 5-5 :NguoiBan :HeThong enterItems(upc, n) endSale()() makePayment(soTien) Hình 5-5 Biểu đồ trình tự mơ tả tương tác người bán hệ thống - 117 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban Biểu đồ trình tự mơ tả ca sử dụng “Thanh toán tiền mặt” Khi đối tượng :HeThong nhận yêu cầu toán khách hàng thơng qua người bán, nghĩa nhận thơng điệp makePayment(soTien) phải gửi cho đối tượng phiên bán hàng: PhienBanHang yêu cầu tương tự Đối tượng phiên bán hàng lại yêu cầu đối tượng tạo đối tượng lần toán: ThanhToan để toán theo soTien mà khách đưa Đối tượng lần tốn gửi lại thơng điệp balance() cho hệ thống :HeThong biết số tiền dư (soTien khách đưa trừ số tiền mua hàng) phải trả lại cho khách để hiển thị (displayBalance()) lên hình, để người bán thơng báo lại cho khách hàng khách trả tiền mặt Biểu đồ trình tự mơ tả dãy hành động trao đổi đối tượng nêu thiết lập sau: : PhienBanHang : HeThong : ThanhToan NguoiBan makePayment(soTien) makePayment(soTien) makePayment(soTien) balance() displayBalance() balance() Hình 5-6 Biểu đồ trình tự mơ tả ca sử dụng “Thanh tốn (tiền mặt)” Biểu đồ trình tự mơ tả ca sử dụng “Thanh tốn thẻ tín dụng” Khi tốn tiền hàng, khách hàng trả thẻ tín dụng Thẻ tín dụng xác định thông qua soHieuThe (số hiệu thẻ) hanSD (hạn sử dụng) Điều thể việc gửi thông điệp makeCreditPayment(soHieuThe, hanSD) cho hệ thống Thông thường hệ thống phải gửi yêu cầu kiểm duyệt thẻ requestApproval(yeuCau)) tới phận kiểm duyệt thẻ tín dụng tác nhân hệ thống Hệ thống dựa vào kết trả lời phận kiểm duyệt để toán với khách hàng cách trừ số tiền mua hàng thẻ tín dụng hợp pháp, nghĩa thực handleCreditReply() (xử lý thẻ kiểm duyệt), dựa vào kết phận kiểm duyệt Biểu đồ trình tự mơ tả tương tác người bán hàng, hệ thống phận kiểm duyệt thẻ KiemDuyet thiết lập sau: - 118 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban : HeThong NguoiBan makeCreditPayment(soHieuThe, hanSD) KiemDuyet requestApproval(yeuCau) handleCreditReply() displayApproval() Hình 5-7 Biểu đồ trình tự mô tả trao đổi người bán, hệ thống phận kiểm duyệt Tương tự trên, tạo biểu đồ trình tự cho ca sử dụng khác hệ thống 5.2.4 Ghi nhận hoạt động lớp đối tượng Ở chương xây dựng lớp tập trung chủ yếu vào việc phát thuộc tính chúng Khi xây dựng biểu đồ trạng thái biểu đồ trình tự hiểu tương tác đối tượng hệ thống Chúng ta xác định hành vi ứng xử đối tượng, nghĩa xác định hàm thành phần lớp Nghiên cứu biểu đồ trình tự nhận thấy: Khi có thơng điệp mgs() gửi đến cho đối tượng lớp đối tượng phải có hàm thành phần msg() Dựa vào nguyên lý nêu vào biểu đồ trình tự hình 5-5, 5-6, 5-7, lớp HeThong có hàm thành phần sau: HeThong enterItems() endSale() makePayment() balance() makeCreditPayment() handleCreditReply() Hình 5-8 Các thao tác hệ thống ghi nhận vào lớp có tên HeThong - 119 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban Khi xây dựng thêm biểu đồ trình tự cho ca sử dụng “Thanh tốn séc” hàm như: makeCheckPayment(), handleCheckReply(), v.v bổ sung thêm vào lớp HBH Lưu ý: Để đơn gian, giai đoạn bỏ qua đối số hàm thành phần lớp Các hàm thành phần có phạm vi truy cập giống thuộc tính lớp đối tượng Do vậy, người thiết kế khai báo chúng công khai (public), bảo vệ (protected), sở hữu riêng (private) hay mặc định nêu phần định nghĩa thuộc tính (chương 4) Tương tự, bổ sung hàm thành phần vào lớp khác HBH 5.2.5 Các hợp đồng hoạt động hệ thống Như thấy trên, biểu đồ trình tự cho biết tên nhiệm vụ mà đối tượng cần phải thực nhận thông điệp, chưa mô tả cách thực cơng việc Để hiểu rõ hành vi đối tượng để hỗ trợ cho thiết kế cài đặt lớp sau này, cần xây dựng hợp đồng (Contract) hay đặc tả cho hoạt động (thao tác, hàm) xác định Hợp đồng cho hoạt động hệ thống mô tả thay đổi trạng thái mà bắt đầu thoả tiền điều kiện (pre-conditions) sau đó, kết thúc thoả mãn hậu điều kiện (postconditions) Những hợp đồng lưu tệp khác gán vào biểu đồ tương ứng  Pre-conditions: điều kiện mà trạng thái hệ thống giả thiết thoả mãn trước thực thao tác, hàm  Post-conditions: điều kiện mà trạng thái hệ thống phải thoả mãn sau thực xong thao tác, hàm Một cách hình thức, hợp đồng cho hoạt động Op() viết theo ba Hoare: {Pre-conditions} Op() {Post-conditions} Thể rằng: hoạt động Op() trạng thái thoả mãn Pre-conditions sau kết thúc thực hệ thống trạng thái thoả mãn Post-conditions Pre-condition Post-condition mệnh đề boolean (mệnh đề điều kiện logic) Ví dụ: xét thao tác enterItems()(upc: UPC, soHang: Int) lớp HBH  Pre-conditions: Hệ mã chuẩn sản phẩm toàn cầu UPC biết trước hệ thống  Post-conditions: bao gồm điều kiện sau: + Nếu mặt hàng nhập vào phải tạo đối tượng phienBanHang lớp PhienBanHang kết hợp vào hệ thống HBH, + Tạo đối tượng dongBanHang lớp DongBanHang cho mặt hàng vừa nhập vào gán dongBanHang.soLuong = soHang (đối số hàm), + dongBanHang liên kết với MoTaMatHang dựa vào mã upc - 120 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban Nhiệm vụ giai đoạn xây dựng gói (hệ thống con) trao đổi chúng hệ thống Việc phân chia gói dựa vào: o Từng vùng chức cụ thể o Từng vùng kỹ thuật riêng Sự phụ thuộc gói phải tương đối lỏng, nghĩa nên loại bỏ quan hệ phụ thuộc hai chiều trực tiếp (những quan hệ phụ thuộc chặt) Vấn đề xác định gói thư viện chuẩn, tìm số thư viện phổ dụng như: UI, DataBase, Communication, v.v Hệ thống thư viện chia thành gói: gói giao diện, gói đối tượng tác nghiệp, gói CSDL gói tiện ích + Gói giao diện: gồm lớp giao diện với NSD CuaSoChoMuon, CuaSoNhanTra, CuaSoTraCuu, v.v cho phép NSD nhập yêu cầu, cập nhật liệu đồng thời có thơng tin cần thiết theo yêu cầu Trong Java, gói AWT thư viện chuẩn chứa lớp giao diện hỗ trợ để thực tất chức + Gói đối tượng tác nghiệp: chứa tất lớp phạm vi toán xác định giai đoạn phân tích (hình 3-2) như: DauMuc, HangMuc, ThongTinBanDoc, NguoiMuon, v.v Tất nhiên lớp phải thiết kế chi tiết bổ sung thêm thuộc tính để đảm bảo tính quán lớp + Gói CSDL: cung cấp dịch vụ cho lớp đối tượng gói đảm bảo liệu lưu trữ cách quán + Gói tiện ích: Chứa dịch vụ phục vụ cho hệ thống khác hệ thống Trong có lớp ObjectId sử dụng để xác đối tượng hệ thống sử dụng tất ba gói Mối quan hệ gói mơ tả hình 3-5 GiaoDien DoiTuongTacNghiep TienIch CSDL Hình 3.5 Các gói hệ thống thư viện 3.7 Thiết kế chi tiết Mục đích giai đoạn là: - 206 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban + Mở rộng chi tiết hoá đối tượng tác nghiệp xác định giai đoạn trước + Mô tả lớp kỹ thuật thực chức giao diện (gói giao diện) tổ chức lưu trữ (gói CSDL) A/ Thiết kế chi tiết gói CSDL Gói CSDL phải cung cấp dịch vụ đảm bảo lưu trữ quán đối tượng Khi thiết kế gói CSDL có thể: + Dựa vào hệ QT CSDL hướng đối tượng có thị trường, O2, ObjectStore, Jasmin, v.v + Dựa vào CSDL quan hệ thực biến đổi bảng thành đối tượng Trong hệ thống tương đối nhỏ hệ thống quản lý thư viện chọn giải pháp đơn giản sau: Lưu trữ đối tượng thành tệp đĩa: + Các phép toán phục vụ lưu trữ như: store(), update(), delete(), find(), cung cấp cho NSD họ không cần biết chi tiết + Mọi thực liên quan đến việc xử lý liệu đối tượng ln đảm bảo tính quán, thực thông qua lớp gọi Persistent + Lớp Persistent lớp sở trừu tượng lớp cần có đối tượng quán kế thừa Các lớp phải cài đặt thêm thao tác như: write(), read() cho đối tượng cụ thể + Một thành tố quan trọng tham gia vào việc bảo vệ tính quán hệ thống lớp ObjectId, sử dụng để truy cập (tham chiếu) tới đối tượng yêu cầu hệ thống Các đối tượng xác định định danh ID thông qua lệnh: Persistent.getObject() thông qua tham số trao đổi phép tốn Việc tìm kiếm đối tượng thực tệp B/ Thiết kế chi tiết gói đối tượng tác nghiệp Nhiệm vụ giai đoạn thiết kế thành phần lớp tác nghiệp cách cài đặt chúng Cách thực sau:  Tất lớp đối tượng tác nghiệp cần phải lưu trữ kế thừa lớp Persistent cài đặt bổ sung phép toán cần thiết như: read(), write() nêu gói CSDL  Những phương thức phân tích chuyển sang mơ hình thiết kế chi tiết số thay đổi, đổi tên cho phù hợp thực chi tiết hoá để tiện lợi cho việc cài đặt giai đoạn sau - 207 - Phân tích, thiết kế hướng đối tượng với UM L  Đoàn Văn Ban Tất hàm (phương thức) phải định nghĩa xác tên gọi, kiểu trả lại, đối số gán giá trị ban đầu cần Biểu đồ lớp thiết kế chi tiết hình 3.6 BaoNgay TapChi Sach HangMuc DauMuc n PhieuDatMua n n Persistent NguoiMuon n PhieuNhacTra n ThongTinBanDoc PhieuDatMuon n - 208 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban Hình 3-6 Biểu đồ lớp chi tiếp C/ Thiết kế gói giao diện Gói giao diện nằm gói khác, cung cấp dịch vụ thông tin cho hệ thống tác nhân ngồi (NSD) Thiết kế giao diện có số tắc phải tuân theo:  Hiểu nắm bắt qui trình cơng việc NSD ca sử dụng  Làm cho NSD ln có cảm giác điều khiển hoạt động hệ thống, chủ động việc huỷ bỏ tức thao tác mà họ cảm thấy không cần phải tiếp tục, nghĩa luc họ khỏi hệ thống  Cung cấp nhiều cách để thực hoạt động liên quan đến giao diện, ví dụ mở, đóng cửa sổ tệp, v.v  Thông tin phải đơn giản, dễ đọc, dễ hiểu thao tác phải trợ giúp kịp thời cho NSD  Nên sử dụng hộp thoại kích thước Các thơng báo chỉnh theo lề trái việc sử dụng màu phải hài hồ, tránh lạm dụng màu NSD khơng ý vào cơng việc Giao diện hệ thống thư viện thiết kế dựa vào ca sử dụng, bao gồm:  MainWindow: hình hệ thống, liên kết với LenItemFrame, ReturnItemFrame, ReservatiopnFrame, CancelReservationFrame, OrderFrame ReturnRequirementFrame  LenItemFrame: khung hình để bạn đọc mượn tài liệu  ReturnItemFrame: khung hình để thủ thư nhận trả lại tài liệu từ bạn đọc  ReservatiopnFrame: khung hình để bạn đọc đặt mượn tài liệu  CancelReservationFrame: khung hình để bạn đọc, thủ thư huỷ bỏ phiếu đặt mượn tài liệu  OrderFrame: khung hình để đặt mua tài liệu  ReturnRequirementFrame: khung hình để nhắc địi tài liệu Các lớp giao diện có quan hệ kết hợp 1-1 với hình có quan hệ với lớp tác nghiệp mơ tả hình 3-7 Nhiệm vụ cuối người thiết kế thiết kế chi tiết hình thực tế cho lớp giao diện xây dựng thuật toán để thực phương thức lớp thực thể nêu - 209 - Phân tích, thiết kế hướng đối tượng với UM L PhieuDatMua Đoàn Văn Ban PhieuDatMuon CancelReservationFrame LendItemFrame OrderFrame PhieuDatMuon ThongTinBanDoc DauMuc DauMuc ThongTinBanDoc HangMuc MainWindow NguoiMuon ReservationFrame ThongTinBanDoc ReturnItemFrame PhieuDatMuon NguoiMuon ReturnRequirementFrame Hình 3-7 Mối quan hệ lớp thực thể giao diện Bài 4: Hệ thống quản lý đăng ký học tập 4.1 Xác định toán Q trình lập lịch giảng dạy mơn học cho giảng viên đăng ký học tập sinh viên thường phức tạp, gây nhiều phiền phức tốn thời gian Bài tốn có yêu cầu sau: Sau có danh sách môn giáo viên dự định giảng dạy học kỳ tới, Phòng quản lý học tập nhập thơng tin vào hệ thống Hệ thống sau in danh mục mơn học phân phát cho sinh viên Sinh viên phải điền vào phiếu đăng ký học tập, họ phải chọn mơn dự định học học kỳ tới Tất phiếu đăng ký gửi tới cho Phòng quản lý học tập Các phiếu đăng ký chương trình giảng dạy nhập vào hệ thống Hệ thống lập lịch học tập môn học cho sinh viên cho giáo viên Nếu có vấn đề khơng hợp lý (mâu thuẫn, xung đột) Phịng quản lý học tập phải trao đổi với sinh viên, giáo viên để họ bổ sung thay đổi định cho phù hợp Sau lập lịch biểu học tập cho tất môn học, cho tất sinh viên hệ thống in gửi cho sinh viên để họ kiểm tra lại Các phiếu học tập xử lý tuần, yêu cầu thay đổi, phiếu ngoại lệ xử lý hai tuần - 210 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban Đầu học kỳ giáo viên nhận chương trình giảng dạy: mơn học, lớp, địa điểm thời gian mà họ giảng dạy Một số điểm cần lưu ý:  Mỗi sinh viên chọn môn để học học kỳ tới  Mỗi mơn học sinh viên có khả lựa chọn: chọn không chọn  Mỗi môn học cho lớp khơng có số sinh viên vượt q ngưỡng qui định, ví dụ 50 khơng hơn, ví dụ 10 sinh viên Những mơn có q sinh viên đăng ký học không đưa vào dạy học kỳ tới  Giáo viên truy cập trực tiếp vào hệ thống để biết thơng tin cần thiết chương trình giảng dạy  Trước học kỳ, có khoảng thời gian để sinh viên cớ thể thay đổi định họ truy cập vào hệ thống để cập nhật lại định 4.2 Phân tích u cầu toán Mọi hành vi (nhiệm vụ, chức năng, dịch vụ) hệ thống phải nắm bắt, phải phân tích kỹ thể mơ hình ca sử dụng A/ Các tác nhân ngồi + Sinh viên (SV): người muốn đăng ký học tập, ghi danh vào lớp học học kỳ tới + Giáo viên (GV): người giao nhiệm vụ dạy số mơn đại học + Phịng quản lý học tập (PQL): phận quản lý học tập sinh viên, xây dựng chương trình giảng dạy, học tập cho học kỳ trì hoạt động hệ thống + Hệ thống quản lý phiếu học tập (HTLP): phận nhận thông tin chương trình giảng dạy, lập danh mục, in phát phiếu học tập cho sinh viên, giáo viên B/ Các ca sử dụng Ca sử dụng dãy giao tác hệ thống thực cho kết có ý nghĩa tác nhân ngồi cụ thể Dựa vào câu hỏi khảo sát phân tích yêu cầu phát nhu cầu hệ thống: Sinh viên sử dụng hệ thống để “Đăng ký môn học” Giáo viên sử dụng hệ thống để “Chọn môn giảng dạy” học kỳ tới nhận thời khố biểu từ hệ thống Phịng quản lý học tập sử dụng hệ thống để “Phát sinh danh mục cho khố học” “Duy trì thơng tin” chương trình đào tạo, giáo viên, sinh viên Phân tích u cầu phát ca sử dụng:  Đăng ký khoá học: cho sinh viên - 211 - Phân tích, thiết kế hướng đối tượng với UM L       Đồn Văn Ban Chọn mơn giảng dạy: cho giáo viên Yêu cầu chương trình giảng dạy: cho giáo viên Duy trì thơng tin học tập: nhiệm vụ Phịng quản lý học tập Duy trì thơng tin GV: nhiệm vụ Phịng quản lý học tập Duy trì thơng tin SV: nhiệm vụ Phòng quản lý học tập Lập lịch: cho với Phòng quản lý học tập Một số ca sử dụng ca sử dụng trì thơng tin phân tách thành ca sử dụng như: bổ sung, loại bỏ hay cập nhật thông tin, v.v Mỗi ca sử dụng phải ghi lại với kiện hệ thống thực (xây dựng kịch bản) bao gồm: + Tên ca sử dụng (kịch bản) + Tiền điều kiện (precondition) + Luồng cơng việc - Các luồng công việc + Các luồng công việc lựa chọn Ví dụ:Kịch cho ca sử dụng “Chọn mơn giảng dạy”: I Tiền điều kiện: Trước sử dụng chức phải thực ca sử dụng “Duy trì thơng tin khố học” để có thơng tin khố học II Luồng cơng việc chính: Tác nhân Giáo viên truy cập vào hệ thống cách nhập vào mật (password) GV chọn môn để dạy Hệ thống Hệ thống kiểm tra quyền truy cập sau hiển thị hình nhắc GV (giáo viên) chọn môn dạy học kỳ tới Hệ thống ghi nhận Hệ thống hiển thị luồng công việc phụ: 5.1 Bổ sung môn học 5.2 Huỷ bỏ môn học 5.3 Xem lịch biểu 5.4 In chương trình khố học 5.5 Thốt khỏi hệ thống GV lựa chọn chức để thực - 212 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban III Luồng cơng việc phụ (Kịch con): 5.1 Bổ sung môn học + Hệ thống hiển thị danh sách mơn khố học + GV nhập vào tên số thông tin cần thiết môn học + Hệ thống liên kết môn học tạo để tạo phiếu thăm dò gửi cho SV Tương tự xây dựng kịch cho luồng công việc khác C/ Biểu ca s dng Chọn môn giảng dạy SV GV Đăng ký môn học Yêu cầu ch-ơng trình giảng dạy HTLP Duy trì thông tin GV Duy trì thông tin khoá học Lập lịch Duy trì thông tin SV PQL Hình 4-1 Biểu đồ ca sử dụng cho hệ thống đăng ký học tập Để hồn thiện việc phân tích, thiết kế hệ thống phải phân tích để xây dựng biểu đồ lớp, biểu đồ trình tự, biểu đồ cộng tác, biểu đồ hành động, biểu đồ thành phần biểu đồ triển khai tương tự - 213 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban TÀI LIỆU THAM KHẢO [1] Booch G., Rumbaugh J and Jacobson I., The Unified Software Development Process, Addision – Wesley, 1998 [2] Booch G., Rumbaugh J and Jacobson I., The Unified Modeling Language User Guide, Addision – Wesley, 1999 [3] Sommerville I., Software Engineering, 4th Edition, Addition Wesley, 1994 [4] Larman C., Applying UML and Patterrns: An Instruction to Object-Oriented Analysis and Design, Prentice Hall, 1997 [ 5] Michael B., William P., Object – Oriented Modeling and Design for Database Applications, Prentice Hall, New Jersey 1998 [6] Oestereich B., Developing Software with UML, Object-Oriented Analysis and Design in Prctice, Addision – Wesley, 2000 [7] OMG, “The OMG Unified Modeling Language Specification”, http:// www.omg.org/uml , 1999 [8] Quatrani T., Visual Modeling With Rational Rose and UML, Addison-Wesley, http:// www.rational.com, 2000 [9] Liang Y., From use cases to classes: a way of building object model with UML, Information and Software Technology, 45 (2003) 83-93, www.elservier.com/locate/infsof [10] Zhiming L., Object-Oriented Software Development Using UML, UNU /IIST, Macau 2001 [11] Đặng Văn Đức, Phân tích thiết kế hướng đối tượng UML (Thực hành với Rational Rose), NXB Khoa học Kỹ thuật, Hà Nội 2002 [12] Đoàn Văn Ban, Phân tích, thiết kế lập trình hướng đối tượng, NXB Thống Kê 1997 [13] Đoàn Văn Ban, Hoàng Quang, Chuyển đổi biểu thức đại số quan hệ thành câu truy vấn mơ hình liệu hướng đối tượng, Tạp chí Khoa học Cơng nghệ, Tập 40-Số ĐB, 2002 (120-129) [14] Đoàn Văn Ban, Cơ sở liệu hướng đối tượng, giáo trình Khoa CNTT, HN 2003 [15] Đồn Văn Ban, Lập trình hướng đối tượng với Java, Nhà xuất Khoa học, Hà Nội, 2003 [1] Binder R V., Testing Object-Oriented Systems: Models, Patterns and Tools, Addison-Wesley, 1999 - 214 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban [2] Booch G., Rumbaugh J and Jacobson I., The Unified Software Development Process, Addision – Wesley, 1998 [3] Booch G., Rumbaugh J and Jacobson I., The Unified Modeling Language User Guide, Addision – Wesley, 1999 [4 ] Coad, P., Yourdon E., Object-Oriented Analisys, Prentice Hall, Englewood Cliffs, 1991 [5] Coad, P., Yourdon E., Object-Oriented Design, Prentice Hall, Englewood Cliffs, 1991 [6] Date C J , An Introduction to Database Systems, Eddison-Wesley, 2000 [7] Hussain K M., Hussain D., Information Systems: Analysis, Design and Implementation, McGraw-Hill, 1998 [8] Fong J., Siu B., Multimedia, Knowledge-Based & Object-Oriented Databases, Springer, 1996 [9] Kendall P., Introduction to System Analysis and Design: A structured Approach, Wm C Brown Publishers, 2001 [10] Larman C., Applying UML and Patterrns: An Instruction to Object-Oriented Analysis and Design, Prentice Hall, 1997 [11] Liang Y., From use cases to classes: a way of building object model with UML, Information and Software Technology, 45 (2003) 83-93, www.elservier.com/locate/infsof [12] Maier D., Object-Oriented Database Theory: An Introduction and Indexing in OODBS, Database Hall of Fame,2001, http://www.csc.ogi.edu [13 ] Meyer B., Object-Oriented Software Construction, Prentice Hall, Englewood Cliffs, 1988 [14] Michael B., William P., Object – Oriented Modeling and Design for Database Applications, Prentice Hall, New Jersey 1998 [15] Oestereich B., Developing Software with UML, Object-Oriented Analysis and Design in Prctice, Addision – Wesley, 2000 [16] OMG, “The OMG Unified Modeling Language Specification”, http:// www.omg.org/uml , 1999 [17] Quatrani T., Visual Modeling With Rational Rose and UML, Addison-Wesley, http:// www.rational.com, 2000 [18] Rumbaugh J., Blaha M., Premerlani V., Eddy F., Lorensen V., Object-Oriented Modeling and Design, Prentice-Hall, NJ 1991 [19] Sommerville I., Software Engineering, 4th Edition, Addition Wesley, 1994 [20] Vafadarafshar R., Document a brief introduction of ObjectStore, 2002, http://www.cs.concordia.ca - 215 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban [21] Zhiming L., Object-Oriented Software Development Using UML, UNU /IIST, Macau 2001 [22] Đặng Văn Đức, Phân tích thiết kế hướng đối tượng UML (Thực hành với Rational Rose), NXB Khoa học Kỹ thuật, Hà Nội 2002 [23] Đặng Văn Hưng, Đoàn Văn Ban, Nguyễn Ngọc Thuần, Maintaining the amount of global information in local states of processes of distributed systems, Proceeding of the National Centre for Science and Technology of Vietnam, Volume 9, No 2, 1997 [24] Đồn Văn Ban, Phân tích, thiết kế lập trình hướng đối tượng, NXB Thống Kê 1997 [25] Đồn văn Ban, Sử dụng phương pháp phân tích hướng đối tượng để phát triển hệ thống lớn tích hợp, Tạp chí Tin học Điều khiển học, Tập 13, số 4, 1997 (1-10) [26] Đoàn văn Ban, Một số tính chất q trình thừa kế kiểu mơ hình sở liệu hướng đối tượng, Tạp chí Tin học Điều khiển học, Tập 15, số 3, 1999 (1-7) [27] Đoàn văn Ban, Hồ Văn Hương, Các giải pháp kết nối Web với sở liệu, Tạp chí Tin học Điều khiển học, Tập 16, số 2, 2000 (25-31) [28] Đoàn văn Ban, Một số tính chất q trình thừa kế kiểu mơ hình sở liệu hướng đối tượng, Tạp chí Tin học Điều khiển học, Tập 16, số 2, 2000 (25-31) [29] Đồn văn Ban, Tính đắn lược đồ sở liệu hướng đối tượng, Tạp chí Tin học Điều khiển học, Tập 16, số 3, 2000 (7-15) [30] Đoàn Văn Ban, Hoàng Quang, Chuyển đổi biểu thức đại số quan hệ thành câu truy vấn mơ hình liệu hướng đối tượng, Tạp chí Khoa học Cơng nghệ, Tập 40-Số ĐB, 2002 (120-129) [31] Đoàn văn Ban, Nguyễn Hữu Ngự, Hồ Văn Hương, A Formal Specification of the Correctness Criteria for Concurrent Executions of a Transaction System in RealTime Databases, Tạp chí Tin học Điều khiển học, Tập 19, số 3, 2003 (263-273) [32] Đoàn Văn Ban, Cơ sở liệu hướng đối tượng, giáo trình Khoa CNTT, HN 2003 [33] Đồn Văn Ban, Lập trình hướng đối tượng với Java, Nhà xuất Khoa học, Hà Nội, 2003 [34] Đoàn Văn Ban, Lê Mạnh Thạnh Hoàng Bảo Hùng, Sự tương đương biểu diễn ngôn ngữ truy vấn OQL đại số đối tượng, Tạp chí Tin học Điều khiển học, Tập 20, số 2, 2004 ( 11 trang) [35] Nguyễn Văn Ba, Phân tích thiết kế hệ thống thông tin, Nhà xuất Đại học Quốc gia Hà Nội, 2003 - 216 - Phân tích, thiết kế hướng đối tượng với UM L Đồn Văn Ban [36] Phạm Văn Cường, Đoàn Văn Ban, Huỳnh Văn Nam, A rough-set-based model of modal logic for information systems, Advances in Natural Sciences, Volume 4, No 3, 2003 (217-225) [37] Ban điều hành Đề án 112 Chính phủ, Chương trình tổng thể Cải cách hành chính, Giải pháp khả thi hệ thống quản lý văn hồ sơ công việc Tỉnh (Tp) (Tài liệu mẫu), Hà Nội 2004 [38] Ban điều hành Đề án 112 Chính phủ, Chương trình tổng thể Cải cách hành chính, Giải pháp khả thi hệ thống thông tin tổng hợp kinh tế - xã hội phục vụ điều hành địa bàn Tỉnh (Tp) (Tài liệu mẫu), Hà Nội 2004 [39] Ban điều hành Đề án 112 Chính phủ, Chương trình tổng thể Cải cách hành chính, Xây dựng khung trang thông tin điện tử phục vụ điều hành Bộ, Tỉnh (Tp) (Tài liệu mẫu), Hà Nội 2004 Danh sách thuật ngữ từ viết tắt Từ viết tắt tiếng Anh UML OOA OOD API CASE OMT OOSE OCL GRASP ODMG USPD RUP UP OCL GUI Unified Modeling Language Object Oriented Analysis Object Oriented Design Application Programming Interface Computer Aided Software Engineering Object Modeling Technique Object-Oriented Software Engineering Object Constraints Language General Responsibility Assignment Software Patterrn Object Data Management Group Unified Software Development Process Rational Unified Process Unified Process Object Constraints Language Graphics User Interface Từ viết tắt tiếng Việt CNTT CSDL NSD CNPM HBH CSDLQH CSDLHĐT Công nghệ thông tin Cơ sở liệu Người sử dụng Công nghệ phần mềm Hệ thống bán hàng Cơ sở liệu quan hệ Cơ sở liệu hướng đối tượng - 217 - Phân tích, thiết kế hướng đối tượng với UM L QTCSDL Hệ quản trị sở liệu Các thuật ngữ Việt – Anh Bao gói Biểu đồ ca sử dụng Biểu đồ cộng tác Biểu đồ hành động Biểu đồ lớp Biểu đồ thành phần Biểu đồ trạng thái Biểu đồ triển khai Biểu đồ trình tự Biểu đồ đối tượng Bộ phận kiểm duyệt séc Bộ phận kiểm duyệt thẻ tín dụng Bội số, số (cơ số) Các hệ thống kỹ thuật Các hệ thống nghiệp vụ Các hệ thống nhúng thời gian thực Cách tiếp cận hướng đối tượng Cách tiếp hướng chức Che giấu thông tin Chỉ số, mục Chia để trị Cố kết Công nghệ hệ thứ tư 4GT Đa xạ, đa hình Định danh Dữ liệu thành phần Được hướng dẫn ca sử dụng Giao diện Gói Hàm thành phần Hệ thống phần mềm Hệ thống thơng tin Hiện thực hố Hướng thủ tục Huỷ tử Kế thừa Kế thừa bội Kế thừa đơn Kết nhập chia sẻ Kết nhập hợp thành Kết nhập thơng thường Khả trì hoạt động Khung công việc Liên kết Encapsulation Use case diagram Collaboration diagram Activity diagram Class diagram Component diagram State diagram, Deployment diagram Sequence diagram Object diagram Check Authorization Service Credit Authorization Service Multiplicity Technical Systems Business Systems Embedded Real_time Systems Object-Oriented Approach Functional-Oriented Approach Information hidding Index Devide and conquer Cohension Fourth Generation Technology Polymorphic Identifier (ID) Data member Use-case-driven Interface Package Member function Software System Information System Realisation Procedure-Oriented Destructor Inheritance Multiple inheritance Single inheritance Shared Aggregation Composition Aggregation Normal aggregation Maintainability Framework Link - 218 - Đoàn Văn Ban Phân tích, thiết kế hướng đối tượng với UM L Lớp Lớp biên Lớp điều khiển Lớp thực Lớp mẫu Lớp tham số hố Lớp thực thể Lớp tích cực Lớp tiện ích Luồng Mẫu rập khn Mơ hình thác nước Mơ hình xốn ốc Nạp chồng Ngun mẫu Phạm vi quan sát thuộc tính Phương thức Quan hệ kết hợp Quan hệ kết nhập Quan hệ phụ thuộc Quan sát logic Quan sát thành phần Quan sát theo ca sử dụng Quan sát triển khai Quan sát tương tranh Qui tắc ràng buộc Qui tắc suy dẫn Siêu liệu Sự kết hợp Tác nhân Tập trung vào kiến trúc Tên vai trò Thành phần Thao tác Thơng điệp Thuộc tính Tính hiệu Tính tiện dụng Tính tin cậy Tốn tử tạo lập (huỷ tử) Tổng quát hóa Từ điển thuật ngữ Tuyển tập Vật phẩm Class Boundary class Control class Instantiated class Template class Parameterized Class Entity class Active class Class utility Thread Stereotype Waterfall model Spiral model Overloading Prototype Attribute visibility Method Association relationship Aggregation relationship Depedency relationship Logic view Component view Use case view Deployement view Concurrency view Constraint rule Derivation rule Meta data Association Actor Architecture-centric Role name Compơonent Operation Message Attribute Efficiency Usability Dependability Constructor Generalization Glossary Collection Artifact - 219 - Đồn Văn Ban Phân tích, thiết kế hướng đối tượng với UM L - 220 - Đoàn Văn Ban ... hình 5-1 6 Biểu đồ hành động sử dụng để thể hành động thực đối tượng cách thực công việc nghiệp vụ thông qua dịng cơng việc, theo tổ chức đối tượng - 129 - Phân tích, thiết kế hướng đối tượng với. .. hai đối tượng :A :B thời có liên kết với hai đối tượng có đối tượng nhìn thấy đối tượng Về trao đổi thơng điệp đối tượng phát biểu xác sau: Để đối tượng :A gửi thơng điệp cho đối tượng :B đối tượng. .. móc nối - 144 - Phân tích, thiết kế hướng đối tượng với UM L Đoàn Văn Ban lỏng hình 6-1 6 Sau lại áp dụng qui tắc khác để gán trách nhiệm cho đối tượng Trong ngơn ngữ lập trình hướng đối tượng C++,

Ngày đăng: 18/10/2022, 15:24

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

  • Đang cập nhật ...

Tài liệu liên quan