Lập trình hướng đối tượng
lượt xem 11
download
Tham khảo sách 'lập trình hướng đối tượng', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Lập trình hướng đối tượng
- LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG & C++ Các khái niệm, nguyên lý cơ bản của lập trình hướng đối tượng (OOP). Minh họa phong cách lập trình hướng đối tượng bằng ngôn ngữ C++. Nguyễn Công Huy – Khoa CNTT&TT 1
- Mục tiêu Sau khi hoàn tất học phần này, sinh viên có khả năng: Hiểu được thế nào là lập trình hướng đối tượng, trừu tượng hóa, 3 đặc điểm cơ bản trong LT HĐT là bao gói, thừa kế, và đa hình. Phân biệt được sự khác nhau giữa lớp và đối tượng, thuộc tính và phương thức, thông điệp và truyền thông điệp. Hiểu được khái niệm cơ bản về cách xây dựng mô hình lớp dùng UML. Thiết kế được các lớp với các thuộc tính từ cơ bản đến phức tạp như thành viên tĩnh, thành viên hằng, thành viên đối tượng, ... Hiểu được khái niệm hàm xây dựng, hàm hủy và quá trình khởi tạo đối tượng cũng như hủy bỏ đối tượng. Nắm được khái niệm về phạm vi truy xuất, đối số mặc định, hàm bạn. Vận dụng được nguyên lý tái định nghĩa để có thể tái định nghĩa các hàm thành viên, hàm xây dựng, phép gán của một lớp và các toán tử. Phân biệt được lớp dẫn xuất, lớp cơ sở, hàm ảo và lớp ảo trong thừa kế. Thiết kế được các lớp có dùng thừa kế. Phân biệt được sự khác nhau giữa liên kết tĩnh và liên kết động. Sử dụng được các cú pháp cơ bản của ngôn ngữ lập trình hướng đối tượng C++ để viết các chương trình theo phong cách hướng đối tượng. Nguyễn Công Huy – Khoa CNTT&TT 2
- Nội dung môn học Các đặc điểm của C++ Lập trình hướng đối tượng Lớp và đối tượng Hàm thành viên Hàm xây dựng, hàm hủy và việc khởi tạo đối tượng Hàm bạn Tái định nghĩa các tác tử Thừa kế Nguyễn Công Huy – Khoa CNTT&TT 3
- Giáo trình Tài liệu tham khảo Giáo trình: ThS. Trương Văn Chí Công, Lập trình HĐT C++, ĐHCT, 2005. TS. Phạm Thị Xuân Lộc, Lập trình HĐT và C++, ĐHCT, 1998. Tài liệu tham khảo: Herbert Schildt, C++: A beginner’s guide, 2nd edition, McGrawHill, 2003. Herbert Schildt, C++: the complete reference, 3rd edition, McGrawHill, 1998. Ali Bahrami, Object Oriented Systems Development, Irwin McGrawHill, 1999. Stanley B. Lippman, Essential C++, Addision Wesley, 2002. Bjanrne Stroustrup, The C++ Programming Language, 3rd edition, Addision Wesley, 1997. Bất kỳ tài liệu nào về Lập trình hướng đối tượng và C++. Internet. Nguyễn Công Huy – Khoa CNTT&TT 4
- Phương pháp học tập và đánh giá Phương pháp học tập: Giáo viên giảng trực tiếp trên lớp 30 tiết. Sinh viên phải đọc tài liệu trước ở nhà. Phương pháp đánh giá Thi lý thuyết cuối khóa: 50% Thi trên hệ thống ELearning của khoa. Đề thi dạng trắc nghiệm, không sử dụng tài liệu. trắc nghiệm không Thực hành Thi thực hành: 30% Nội dung căn bản Bài thi còn lỗi sẽ nhận điểm 0 Đề tài nhóm: 20% Từ 34 sinh viên / nhóm Nộp báo cáo, chạy demo, trả lời chất vấn. Nguyễn Công Huy – Khoa CNTT&TT 5
- Chương 1: CÁC ĐẶC ĐIỂM CỦA C++ Các khái niệm cơ bản của C++ Lập trình cấu trúc trong C++ Các đặc điểm mới của C++ Nguyễn Công Huy – Khoa CNTT&TT 6
- Nội dung Các khái niệm cơ bản trong C++ Cấu trúc điều khiển Hàm và cấu trúc chương trình Con trỏ và chuỗi ký tự Tham số mặc nhiên của hàm Tái định nghĩa hàm Hàm tại chổ (inline) Truyền tham số Tham chiếu Struct Nguyễn Công Huy – Khoa CNTT&TT 7
- Các khái niệm cơ bản Từ khóa Dành riêng cho ngôn ngữ không được đặt tên trùng với từ khóa. Là chữ thường VD : char, int, return, for, else, const, static Tên Phân biệt chữ HOA và chữ thường Gồm chữ, số, ‘_’ và phải bắt đầu bằng chữ cái. Độ dài tối đa là 32 Nên theo quy cách đặt tên. VD: x, hoten, a1, num_of_var, Delta, TEN, ... Nguyễn Công Huy – Khoa CNTT&TT 8
- Các khái niệm cơ bản Kiểu dữ liệu Tên kiểu Kích thước Phạm vi char 1 byte 128 127 unsigned char 1 byte 0 255 int 2 bytes 32768 32767 unsigned int 2 bytes 0 65535 short 2 bytes 0 65535 long 4 bytes 231 231 1 unsigned long 4 bytes 0 232 1 float 4 bytes 1.2e38 3.4e38 double 8 bytes 2.2e308 1.8e308 Nguyễn Công Huy – Khoa CNTT&TT 9
- Các khái niệm cơ bản Biến Khai báo : bất kỳ vị trí nào trong chương trình Khởi tạo : có thể vừa khai báo và khởi tạo VD: int x=5, y=10; for( int i=0, tong =0 ; i0 ) { float x1= (-b + sqrt(delta)) / (2*a); float x2= (-b - sqrt(delta)) / (2*a); ... } Nguyễn Công Huy – Khoa CNTT&TT 10
- Các khái niệm cơ bản Biến Biến toàn cục : có tác dụng trong toàn bộ CT. Biến địa phương (cục bộ): chỉ có tác dụng trong phạm vi của nó. VD: int so = 5; void GanSo(int x) { so = x; } int NuaSo(int x) { int c=2; int so =x/c ; return so; } Nguyễn Công Huy – Khoa CNTT&TT 11
- Các khái niệm cơ bản Hằng Khai báo : VD: #define MAX 100 const int MAX=100; Một số hằng quan trọng : Số nguyên: 10 , -5, 300000, 1000L, ... Số thực : 3.1416, .5 , 123E-5, ... Ký tự : char ch1 = ‘A’ , ch2=97; Chuỗi ký tự : char *str=“Chuoi Ky Tu”; char chuoi[50]; strcpy(chuoi,“ ”); if ( strcmp(chuoi,“”)==0) cout
- Các khái niệm cơ bản Kiểu Chuyển đổi kiểu : Mặc nhiên (tự động) : float x = 3.1416; int y = x ; float sole = x - y; Do người lập trình sử dụng : Cú pháp: ( Kiểu ) biểu thức hoặc Kiểu ( biểu thức ) Ví dụ: int a=10, b=3; float c1 = a / b ; float c2 = float (a/b); float c3 = (float) a / b ; float c4 = float (a)/b; Nguyễn Công Huy – Khoa CNTT&TT 13
- Các khái niệm cơ bản Các phép toán Số học: + , - , * , / , % Luận lý: ==, !=, >, =,
- Các khái niệm cơ bản Mảng Khai báo : []; VD : int m[10]; float ds[MAX]; Sử dụng : phép toán lấy giá trị phần tử. Thứ tự phần tử : từ 0 đến (kích thước 1) VD: // CT tính tổng của 10 số Fibonacci đầu tiên long a[10]; a[0]=a[1]=1; for (int i=2; i
- Các khái niệm cơ bản Chú thích Trên 1 dòng : // chú thích trên 1 dòng Trên nhiều dòng : /* chú thích trên nhiều dòng */ Các chỉ thị tiền biên dịch : # define # undefine # include # if # else # endif # if # elif # else # endif # ifdef # else # endif # ifndef # else # endif # error Nguyễn Công Huy – Khoa CNTT&TT 16
- Các khái niệm cơ bản Nhập xuất Thư viện hàm : # include Nhập : cin >> Biến Xuất : cout
- Các khái niệm cơ bản Nhập xuất Một số hàm định dạng toàn cục: cin.width(n) cout.width(n) cout.precision(n) cin.seekg(n) Ký tự đặc biệt : \n, \t, \0, \b, \r Định dạng khác: endl, ends, flush, … Nhập chuỗi : gets(char* str); cin.getline(char* str, int n); Nguyễn Công Huy – Khoa CNTT&TT 18
- Các khái niệm cơ bản Cấu trúc 1 chương trình đơn giản Nguyễn Công Huy – Khoa CNTT&TT 19
- Cấu trúc điều khiển Tuần tự Câu lệnh : viết trên một hay nhiều dòng Khối lệnh : Là dãy các lệnh viết trong cặp { } Tương đương với 1 câu lệnh Giá trị của biểu thức điều kiện Bằng 0 : SAI Khác 0 : đúng VD: int x=0; if(x=2) cout
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Java Lập trình OOP
32 p | 302 | 168
-
Lập trình hướng đối tượng trong java (Phần 5)
6 p | 182 | 55
-
Lập trình hướng đối tượng trong java (Phần 2)
6 p | 171 | 44
-
Lập trình hướng đối tượng trong java (Phần 3)
6 p | 152 | 38
-
Lập trình hướng đối tượng trong java (Phần 4)
6 p | 144 | 38
-
Lập trình hướng đố i tượng trong Java phần 1
17 p | 130 | 30
-
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 1
6 p | 163 | 25
-
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 6
6 p | 115 | 19
-
Sách lập trình hướng đối tượng
240 p | 104 | 16
-
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 2
6 p | 70 | 12
-
Hướng Đối Tượng Trong C# part 2
3 p | 111 | 12
-
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 4
6 p | 79 | 10
-
Phân Tích Hệ Thống Hướng Đối Tượng, Ngôn Ngữ UML - Phạm Thị Xuân Lộc phần 9
6 p | 84 | 8
-
Hướng Đối Tượng Trong C# part 9
3 p | 122 | 7
-
Hướng Đối Tượng Trong C# part 4
6 p | 67 | 5
-
Hướng Đối Tượng Trong C# part 6
2 p | 85 | 4
-
Lập trình hướng đối tượng 2
100 p | 44 | 4
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn