01/10/2018, 09:35

1 câu hỏi về phân tích thiết kế hệ thống OOP

Trong tài liệu môn này có ghi là PTTK hệ thống theo OOP là phân tích theo hướng từ dưới lên đi từ chi tiết đến tổng quát , còn PTTK theo cấu trúc là đi từ trên xuống …
vậy cho em hỏi là khi mình thiết kế 1 hệ thống theo OOP mình sẽ đi từ các object xong rồi tổng quát hóa lên để tìm ra các class , abstract class và interface phải ko ??? nhưng mình thấy người ta hay viết các interface trước xong rồi mới implement các class sau vậy là đi ngược lại với hướng thiết kế từ dưới lên à??

vũ xuân quân viết 11:47 ngày 01/10/2018

Khi phân tích thiết kế hệ thống thì thường phân tích từ cái cụ thể, rõ ràng nhất rồi mới tới tổng quát. Dựa vào chức năng, người ta tạo ra các user case. Sau khi liệt kê tất cả các chức năng xong. Người ta sẽ coi nhưng cái nào giống nhau, liên quan tới nhau sẽ tổng quát hóa lên.

Đó là giai đoạn thiết kế. Sau giai đoạn thiết kế mới tới giai đoạn thực hiện(viết code).
Bạn có thể làm từ dưới lên(object --> interface) cũng được. Nhưng cái này là làm không có thiết kế và đang mò mẩm để làm.Dễ sai sót.

Còn khi có bảng thiết kế rồi thì mình là mình dựa vào đó để thực hiện. Tránh được nhiều rủi ro, sai sót.

Tao Không Ngu. viết 11:36 ngày 01/10/2018

Hi Cong 5.
Phân tích thiết kế khác với viết code. Bạn không có thiết kế thì sao biết cần code các intèace nào ?

Cong 5 viết 11:43 ngày 01/10/2018

thì mình đang hỏi về giai đoạn thiết kế đó , ví dụ khách hàng đưa ra 1 loạt yêu cầu về chức năng thì lúc này mình nên xây dựng các inteface trước hay là mình xây dựng các lớp rồi tổng quát lên interface…

HelloWorld viết 11:44 ngày 01/10/2018

Sách nào vậy. Cả 2 phương pháp đều là top down sau đó bottom up mà
Chỉ khác ở chỗ pttm hướng cổ điển cấu trúc chỉ hướng về hđ còn pttm oop hướng về cả dữ liệu và hành động
Hướng cấu trúc sử dụng các sơ đồ
Phân cấp chức năng
Luồng dữ liệu mức khung cảnh. Đỉnh. Dưới đỉnh
Sơ đồ erd

Còn pttk oop
Dùng ngôn ngữ mô hình hóa uml có 14 cái sơ đồ áp dụng cho từng khâu
Toàn bộ đều là làm theo kiểu phân rã vấn đề to.tổng quát ra thành các vấn đề nhỏ rồi giải quyết chúng. Rap lại thành tổng thể

Cong 5 viết 11:42 ngày 01/10/2018

mình đọc tài liệu pttkhdt của pgs.ts thanh bình , có nói là nếu phân tích theo top down thì sẽ rất khó để sau này mở rộng vì nó tạo ra 1 cấu trúc và sau này nếu chức năng thay đổi nhưng cấu trúc thì sẽ khó thay đổi theo được nên dẫn đến không tái sử dụng code , khả năng mở rộng thấp và chi phí sửa chữa cao…vì vậy mới tạo ra OOP để khắc phục các nhược điểm trên …còn nếu đã làm theo oop mà còn làm theo hướng top down thì lại đi theo lối mòn sai à??

Kaneki Ken viết 11:47 ngày 01/10/2018

có thể bạn nên xem serial phân tích thiết kế của howkteam để tìm hiểu thêm chắc nó sẽ có ích cho bạn http://www.howkteam.com/Course/Phan-tich-thiet-ke-phan-mem-33

Bài liên quan
0