Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 31 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
31
Dung lượng
257,13 KB
Nội dung
Chương M c tiêu c trưng b n c a l p trình hư ng đ i tư ng Các khái ni m b n l p trình hư ng đ i tư ng Xác đ nh l p c a m t toán, phương th c d li u c a l p N i dung L ch s phát tri n c a phương pháp l p trình Các khái ni m l p trình hư ng đ i tư ng (OOP) Các bư c thi t k chương trình OOP M t s ngơn ng OOP ng d ng c a OOP 2.1 L ch s phát tri n c a phương pháp l p trình L p trình khơng có c u trúc (hay l p trình n tính) L p trình c u trúc L p trình hư ng đ i tư ng L p trình n tính M t chương trình m t t p l nh ho c câu l nh làm vi c v i d li u tồn c c c chương trình Ưu m: Chương trình đơn gi n, d hi u Như c m: khó gi i quy t ng d ng ph c t p L p trình c u trúc (1) Chương trình đư c chia nh thành chương trình Chương trình = C u trúc d li u + Gi i thu t D li u chung Hàm Hàm Hàm D li u riêng D li u riêng D li u riêng L p trình c u trúc (2) Ưu m: • Chương trình sáng s a, d hi u, d theo dõi • Tư gi i thu t rõ ràng Như c m: • Nhi u hàm có th truy nh p, s d ng d li u chung , làm thay đ i giá tr c a chúng v y r t khó ki m sốt • N u thay đ i, b sung c u trúc d li u c a bi n toàn c c ->ph i vi t l i h u tồn b hàm có liên quan L p trình hư ng đ i tư ng (1) M c đích: • Gi m b t thao tác vi t trình • Mơ t chân th c th gi i th c L p trình hư ng đ i tư ng – Object Oriented Programming (OOP) • • Chương trình đư c chia thành đ i tư ng i tư ng = D • óng gói d • Cho phép s li u + Phương th c li u d ng l i mã ngu n L p trình hư ng đ i tư ng (2) i tư ng B D li u Các phương th c i tư ng A D li u Các phương th c i tư ng C D li u Các phương th c L p trình hư ng đ i tư ng (3) Ưu m: • Khơng cịn nguy d chương trình li u b thay đ i t • Khi thay đ i c u trúc d li u c a m t đ i tư ng, không c n thay đ i đ i mã ngu n c a đ i tư ng khác • Có th s ngun d ng l i mã ngu n, ti t ki m tài S ki n M t s ki n m t s vi c x y cho m t đ i tư ng t i m t th i m đáp ng l i s ki n y, đ i tư ng s th c hi n m t ho c nhi u phương th c Nói cách khác, m t s ki n m t tác nhân mà đ i tư ng gây cho m t đ i tư ng khác Ch ng h n click chu t trái m t nút S tr u tư ng hoá Khái ni m: Là kh b qua hay không đ ý t i thành ph n không quan tr ng Chú ý đ n nh ng (WHAT) phương th c/đ i tư ng th c hi n, không quan tâm đ n cách th c hi n (HOW) Ưu m c a tr u tư ng hóa T p trung vào v n đ c n quan tâm Xác đ nh nh ng đ c tính thi t y u nh ng hành đ ng c n thi t Gi m thi u nh ng chi ti t khơng c n thi t S đóng gói óng gói (encapsulation) ti n trình che gi u vi c th c thi chi ti t c a m t đ i tư ng Ưu m: • Qu n lý s •B ov d thay đ i li u S k th a Khái ni m: Kh cho phép đ nh nghĩa m t l p m i (g i l p d n xu t) d a l p khác đ nh nghĩa (g i l p s ) c m: • L p nh n đư c có th b sung thành ph n • Ho c đ nh nghĩa l i thu c tính c a l p cha Các lo i k th a: • ơn k th a • a k th a S đa hình a hình: “nhi u hình th c”, hành đ ng tên có th đư c th c hi n khác đ i v i đ i tư ng/các l p khác Ng c nh khác ⇒ k t qu khác Ch y Các quan h (relationships) Các đ i tư ng không t n t i m t cách đ c l p, t n t i m i quan h gi a đ i tư ng khác: t ng quát hóa (generalization) , c ng tác (asscociation) … T ng quát hóa (generalization) Ngư i Sinh viên Giáo viên L p cha (Ngư i) t ng qt hóa thu c tính, phương th c chung c a l p (Sinh viên Giáo viên) Các l p có nh ng thu c tính, phương th c riêng Quan h c ng tác (Association) Các l p có liên k t (connected) ho c liên quan (related) v i Quan h (relationships) S lư ng đ i tư ng tham gia vào quan h • Quan h – • Quan h – nhi u • Quan h nhi u – nhi u Các bư c gi i quy t tốn OOP Phân tích tốn: • Tìm danh t , tính t • Các danh t toán ⇒ d li u ⇒ class • Tìm nh ng đ ng t , tác v hành đ ng ⇒ phương th c Thi t k l p đ i tư ng: • Xác đ nh class (tên class) • Xác đ nh thành ph n d li u: Tên, ki u • Xác đ nh thành ph n phương th c: Tên, tham s vào, ki u tr v • Xác đ nh ki u truy nh p • Thi t k s k th a (n u có) đ u Các bư c gi i quy t toán OOP (tt) Thi t k chi ti t phương th c: • Vi t mã gi (gi i thu t) Cài đ t chương trình M t s ngơn ng OOP H u h t ngôn ng l p trình đ u h tr OOP, có th chia thành lo i: • Ngơn ng h tr hư ng đ i tư ng: Object C, Pascal, C++, Delphi… • Ngôn ng hư ng đ i tư ng: SmallTalk, JAVA M t s ngôn ng OOP hi n nay: VB.NET, C# ng d ng c a OOP Dùng đ phát tri n ph n m m nhi u lĩnh v c khác nhau: • Ví d : h u hành Windows Lĩnh v c chính: • H th ng th i gian th c • Cơ s d li u hư ng đ i tư ng • Trí tu nhân t o • L p trình song song, m ng nơron … Bài t p chương Phân tích thi t k l p cho tốn: Vi t chương trình qu n lý sinh viên, thông tin c a sinh viên g m: h tên, ngày sinh, gi i tính, m tốn, m lý, m hóa Chương trình có ch c sau: - Nh p thông tin c a Sinh viên - Tính m trung bình - Xem thông tin c a Sinh viên ... riêng Quan h c ng tác (Association) Các l p có liên k t (connected) ho c liên quan (related) v i Quan h (relationships) S lư ng đ i tư ng tham gia vào quan h • Quan h – • Quan h – nhi u • Quan. .. trình n tính) L p trình c u trúc L p trình hư ng đ i tư ng L p trình n tính M t chương trình m t t p l nh ho c câu l nh làm vi c v i d li u toàn c c c chương trình Ưu m: Chương trình đơn gi n,... l p trình hư ng đ i tư ng (OOP) Các bư c thi t k chương trình OOP M t s ngôn ng OOP ng d ng c a OOP 2. 1 L ch s phát tri n c a phương pháp l p trình L p trình khơng có c u trúc (hay l p trình