Danh mục

Bài giảng Nhập môn công nghệ phần mềm: Chương 2 - TS. Nguyễn Văn Hiệp

Số trang: 15      Loại file: pdf      Dung lượng: 154.27 KB      Lượt xem: 14      Lượt tải: 0    
tailieu_vip

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng "Nhập môn công nghệ phần mềm - Chương 2: Tổ chức cấu trúc phần mềm hướng đối tượng" cung cấp cho người học các kiến thức: Sự phát triển trong cấu trúc tổ chức phần mềm, cấu trúc của 1 ứng dụng hướng đối tượng; đối tượng, thuộc tính, tác vụ, abstract type, alass, tính bao đóng,... Mời các bạn cùng tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Nhập môn công nghệ phần mềm: Chương 2 - TS. Nguyễn Văn HiệpChương 2Tổ chức cấu trúc phần mềm hướng ₫ối tượng2.1 Sự phát triển trong cấu trúc tổ chức phần mềm2.2 Cấu trúc của 1 ứng dụng hướng ₫ối tượng2.3 Đối tượng, thuộc tính, tác vụ2.4 Abstract type2.5 Class2.6 Tính bao ₫óng2.7 Tính thừa kế & cơ chế override2.8 Tính bao gộp2.9 Thông ₫iệp, tính ₫a xạ và kiểm tra kiểu2.10 Tính tổng quát hóa2.11 Kết chươngKhoa Khoa học & Kỹ thuật Máy tínhTrường ĐH Bách Khoa Tp.HCM© 2010Môn : Nhập môn Công nghệ phần mềmChương 2 : Tổ chức cấu trúc phần mềm hướng ₫ối tượngSlide 12.1 Sự phát triển trong cấu trúc tổ chức phần mềmƒƒBan ₫ầu, chương trình thường rấtngắn, chỉ giải quyết 1 vấn ₫ề nhỏ,rõ ràng, ₫ơn giản.Lúc này, chương trình là 1 danhsách ngắn các lệnh, các lệnh nàysẽ xử lý tập các dữ liệu (số lượngcũng rất ít).Khoa Khoa học & Kỹ thuật Máy tínhTrường ĐH Bách Khoa Tp.HCM© 2010Lệnh 1Lệnh 2Lệnh 3….Lệnh i….Lệnh j….Lệnh nDữ liệu 1Dữ liệu 2Dữ liệu 3….Dữ liệu nMôn : Nhập môn Công nghệ phần mềmChương 2 : Tổ chức cấu trúc phần mềm hướng ₫ối tượngSlide 22.1 Sự phát triển trong cấu trúc tổ chức phần mềmƒƒƒNếu phân tích kỹ hơn, ta thấy trongdanh sách các lệnh của chươngtrình có hiện tượng sau : ₫oạn lệnhgiải quyết vần về nhỏ hơn nào ₫óxuất hiện nhiều lần vì chương trìnhcần thực hiện nó nhiều lần.Ta viết ₫oạn lệnh này 1 lần, gáncho nó 1 tên nhận dạng. Ta gọi nólà chương trình con. Trong họ ngônngữ C, ta dùng thuật ngữ function.Function giúp ta tổ chức chươngtrình nhất quán hơn, gọn nhẹ hơn,dễ bảo trì và phát triển hơn.Khoa Khoa học & Kỹ thuật Máy tínhTrường ĐH Bách Khoa Tp.HCM© 2010Dữ liệu 1Dữ liệu 2Dữ liệu 3….Dữ liệu nMôn : Nhập môn Công nghệ phần mềmChương 2 : Tổ chức cấu trúc phần mềm hướng ₫ối tượngSlide 32.1 Sự phát triển trong cấu trúc tổ chức phần mềmƒƒTrong chương trình bên phải, tathấy chức năng tính cos(x) cần 3 lầntrong chương trình, ta ₫ịnh nghĩahàm cos(x) 1 lần với tham số x.Mỗi khi cần tính cos(x) trongchương trình, ta chỉ cần viết 1 lệnhgọi hàm ₫ơn giản.Cos(0)Cos(90)Cos(45)Dữ liệu 1Dữ liệu 2Dữ liệu 3….Dữ liệu nCos(x)Khoa Khoa học & Kỹ thuật Máy tínhTrường ĐH Bách Khoa Tp.HCM© 2010Môn : Nhập môn Công nghệ phần mềmChương 2 : Tổ chức cấu trúc phần mềm hướng ₫ối tượngSlide 42.1 Sự phát triển trong cấu trúc tổ chức phần mềmƒƒƒTrong thực tế hiện nay, chương trình thường giải quyết nhiều vấn₫ề lớn, phức tạp, nó tương ứng với số lượng rất lớn các hàm vàdữ liệu. Lúc này ₫ể chúng trong 1 module (file) rất bất tiện, khóduy trì...Ta phải tìm cách khác tổ chức phần mềm : phân rã module rấtlớn và phức tạp ban ₫ầu thành nhiều module nhỏ : mỗi modulechỉ chứa 1 ít hàm chức năng và dữ liệu có mối quan hệ mật thiếtnào ₫ó.Đây là cách tổ chức phần mềm hướng cấu trúc cổ ₫iển trước ₫ây.Khoa Khoa học & Kỹ thuật Máy tínhTrường ĐH Bách Khoa Tp.HCM© 2010Môn : Nhập môn Công nghệ phần mềmChương 2 : Tổ chức cấu trúc phần mềm hướng ₫ối tượngSlide 52.1 Sự phát triển trong cấu trúc tổ chức phần mềmChương trình = tập các module chức năng, mỗi module chứa 1 sốhàm + dữ liệu có liên quan.dữ liệutrongModulemodule(file)nhưng cóthể ₫ượctruy xuất tựdo bất kỳĐiểm nhập₫âuchươngtrình (hàmdữ liệu cụcMain)bộ trongtừng hàmKhoa Khoa học & Kỹ thuật Máy tínhTrường ĐH Bách Khoa Tp.HCM© 2010Môn : Nhập môn Công nghệ phần mềmChương 2 : Tổ chức cấu trúc phần mềm hướng ₫ối tượngSlide 62.1 Sự phát triển trong cấu trúc tổ chức phần mềmƒƒƒMặc dù mỗi hàm hay dữ liệu ₫ược ₫ặt trong 1 module xác ₫ịnh,nhưng mặc ₫ịnh chúng ₫ược truy xuất tự do bới bất kỳ ₫âu trongchương trình. Đây là 1 khuyết ₫iểm lớn, ta khắc phục bằng cáchmiêu tả tầm vực riêng cho từng phần tử : mặc ₫ịnh trong cácngôn ngữ C, C++, mỗi phần tử ₫ều có tầm vực công cộng, nghĩalà bất kỳ ₫âu trong chương trình ₫ều truy xuất ₫ược nó.Nếu muốn hạn chế việc truy xuất từ ngoài module, ta dùng từkhóa static kết hợp với phần tử cần bao ₫óng, phần tử sẽ có tầmvực cục bộ, bên ngoài module không truy xuất ₫ược nó nữa.Một phương pháp khác ₫ể hạn chế tầm vực truy xuất từng phầntử là ₫ịnh nghĩa nó theo cấu trúc lồng nhau dạng phân cấp : nếuA chức B thì B chỉ ₫ược truy xuất bởi A, các nơi khác bên ngoài Asẽ không thấy và truy xuất ₫ược B. Pascal là ngôn ngữ ₫iển hìnhvề hỗ trợ khả năng này.Khoa Khoa học & Kỹ thuật Máy tínhTrường ĐH Bách Khoa Tp.HCM© 2010Môn : Nhập môn Công nghệ phần mềmChương 2 : Tổ chức cấu trúc phần mềm hướng ₫ối tượngSlide 72.1 Sự phát triển trong cấu trúc tổ chức phần mềmƒƒCho dù ₫ã dùng 1 số biện pháp ở slide trước thì cấu trúc tổ chứcphần mềm hướng cấu trúc vẫn còn 1 số khuyết ₫iểm khác.Thí dụ, trong phần mềm ta cần nhiều module có cùng chức năngA, số lượng là ₫ộng chưa biết trước. Cấu trúc hướng cấu trúc chỉcho phép nhân bản module A với số lượng tĩnh biết trước khiphần mềm chạy. Do ₫ó ta cần tìm 1 cấu trúc tổ chức phần mềmkhác : ₫ó là cấu ...

Tài liệu được xem nhiều: