Bài giảng Phương pháp lập trình hướng đối tượng - Tuần 1: Giới thiệu môn học - Phạm Tú San

CHUẨN VÀ QUI ƯỚC LẬP TRÌNH  Quy ước đặt tên (Naming Convention)  Quy tắc vàng: tên phải thể hiện ý nghĩa.  x, y, f, g, ‰ ?!  dientich, laisuat ‰ !!  Quy tắc đặt tên theo kiểu “lạc đà” (Camel Case)  Dùng để viết các từ dính liền nhau.  Viết hoa chữ cái đầu mỗi từ.  LopHoc, TruongHocCHUẨN VÀ QUI ƯỚC LẬP TRÌNH  Quy ước viết câu lệnh:  Quy tắc vàng: viết câu lệnh rộng rãi, rõ ràng.  x=a+b-c*d; for(int i=0;i

pdf31 trang | Chia sẻ: thanhle95 | Lượt xem: 512 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Bài giảng Phương pháp lập trình hướng đối tượng - Tuần 1: Giới thiệu môn học - Phạm Tú San, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
TUẦN 01 GIỚI THIỆU MÔN HỌC Phương pháp lập trình hướng đối tượng Phạm Tú San Lớp TH2012/02 THÔNG TIN GIẢNG VIÊN Phạm Tú San  Email: ptsan@fit.hcmus.edu.vn Mọi trao đổi thực hiện qua  Email: tiêu đề email [HDT-TH12/02][MSSV-họ tên] [Nội dung chính]  Diễn đàn môn học – moodle d=2084 THANG ĐIỂM – QUI ĐỊNH Thang điểm (dự kiến)  Lý thuyết: 60%  Thực hành: 40% Qui định nộp bài  ĐÚNG GiỜ (nên nộp sớm hơn deadline).  Chỉ chấp nhận nộp trên trang web môn học.  Nộp bài theo qui định  Bị phát hiện sao chép: 0 điểm môn học Có vở bài tập – sẽ được chấm điểm ĐỀ CƯƠNG Môn tiên quyết  Nhập môn lập trình – kỹ thuật lập trình  Kỹ thuật lập trình cơ bản với C++ - hướng thủ tục Mục tiêu môn PPLTHĐT  Có khả năng hiểu và giải quyết vấn đề bằng cách tiếp cận hướng đối tượng (HĐT)  Lập trình HĐT bằng ngôn ngữ C++ Môi trường thực hành  Microsoft Visual Studio 2005 -> 2012 TÀI LIỆU THAM KHẢO  Phương pháp lập trình hướng đối tượng  Trần Đan Thư, Đinh Bá Tiến, Nguyễn Tấn Trần Minh Khang, NXB Thống Kê  C++ và Lập trình hướng đối tượng  Phạm Văn Ất, NXB Khoa Học Kỹ Thuật.  Lập trình hướng đối tượng C++  Trần Văn Lăng, NXB Thống Kê.  C++ Primer Plus 5th Edition  Stephen Prata, SAMS.   google.com – “fstream site:cplusplus.com”  google.com – “fstream example site:cplusplus.com” CHUẨN VÀ QUY ƯỚC LẬP TRÌNH Vì sao phải có chuẩn và quy ước?  Làm việc một mình:  Tự làm tự hiểu.  Mình luôn hiểu mình?  Làm việc nhóm:  Mỗi người một việc.  Ráp nối công việc.  Mọi người luôn hiểu nhau? Phối hợp công việc hiệu quả Áp đặt kỷ luật!! CHUẨN VÀ QUI ƯỚC LẬP TRÌNH Quy ước đặt tên (Naming Convention)  Quy tắc vàng: tên phải thể hiện ý nghĩa.  x, y, f, g, ‰ ?!  dientich, laisuat ‰ !!  Quy tắc đặt tên theo kiểu “lạc đà” (Camel Case)  Dùng để viết các từ dính liền nhau.  Viết hoa chữ cái đầu mỗi từ.  LopHoc, TruongHoc CHUẨN VÀ QUI ƯỚC LẬP TRÌNH Quy ước viết câu lệnh:  Quy tắc vàng: viết câu lệnh rộng rãi, rõ ràng.  x=a+b-c*d; for(int i=0;i<n;i++);  x = a + b – c * d; for (int i = 0; i < n; i++);  Viết mỗi câu lệnh một dòng.  Viết cách khoảng giữa hai đoạn lệnh. Quy ước viết chú thích:  Quy tắc vàng: viết chú thích đầy đủ, dễ hiểu.  Viết chú thích cho từng hàm. THAM KHẢO Bài giảng môn PPLTHĐT của  Thầy Nguyễn Minh Huy (nmhuy@fit.hcmus.edu.vn) TUẦN 01 ÔN TẬP KỸ THUẬT LẬP TRÌNH VỚI C++ Phương pháp lập trình hướng đối tượng Phạm Tú San Lớp TH2012/02 NỘI DUNG Ôn tập kỹ thuật lập trình với C++ Bài tập ÔN TẬP KỸ THUẬT LẬP TRÌNH Hàm là gì? Có mấy cách truyền tham số? Cấu trúc là gì? Cách sử dụng? Nhập xuất trong C++? Hãy viết chương trình cho phép nhập hai phân số, nhân hai phân số đó lại với nhau và xuất ra kết quả? TRUYỀN THAM SỐ VÀ TẦM VỰC Các cách truyền tham số vào hàm?  Truyền tham trị (pass by value)  Truyền tham biến (pass by reference) Tầm vực (phạm vi hoạt động) của biến và hàm? CON TRỎ Con trỏ là gì? Các cách khởi tạo con trỏ? Toán tử &, toán tử *? int x = 5; int *p = &x; int k = *p; printf(“%d\n”, p); printf(“%d\n”, *p); printf(“%d\n”, &p); CON TRỎ (TT) Truyền tham số kiểu con trỏ? CON TRỎ (TT) Con trỏ cấu trúc? Cấp phát và thu hồi bộ nhớ cho con trỏ? Mảng và con trỏ? CON TRỎ VÀ HÀM Giải thích sự khác nhau giữa 3 hàm sau CON TRỎ HÀM Địa chỉ hàm:  Hàm được lưu trong bộ nhớ như biến  Mỗi hàm có 1 địa chỉ Con trỏ hàm là biến giữ kiểu địa chỉ hàm Các hàm có cùng kiểu địa chỉ khi  Cùng kiểu trả về  Cùng danh sách tham số VÍ DỤ CON TRỎ HÀM typedef int (*PhepTinh)(int a, int b); int cong(int u, int v) { return u + v; } int nhan(int u, int v) { return u * v; } int tinhToan(int u, int v, PhepTinh p) { return p(u, v); } void main() { int x = 5; int y = 6; PhepTinh p = cong; int kq1 = p(x, y); int kq2 = tinhToan(x, y, cong); } BÀI TẬP CON TRỎ HÀM Hãy khai báo địa chỉ cho những hàm dưới đây (dùng typedef)  void xuly();  int luythua(int x, int n);  int* nhapmang(int &n);  void xuatMang(int a[], int n);  PhanSo cong(PhanSo p1, PhanSo p2); NỘI DUNG Ôn tập kỹ thuật lập trình với C++ Bài tập BÀI TẬP Bài tập 1.1: Viết chương trình cho phép thực hiện các thao tác trên kiểu phân số: Nhập, xuất phân số. Nghịch đảo, rút gọn phân số. Cộng, trừ, nhân, chia hai phân số. BÀI TẬP 1.1 BÀI TẬP 1.2  Viết chương trình cho phép thực hiện các thao tác trên kiểu dữ liệu điểm:  Nhập, xuất điểm.  Tính khoảng cách giữa hai điểm.  Viết chương trình cho phép thực hiện các thao tác trên kiểu tam giác:  Nhập, xuất tam giác.  Tính chu vi, diện tích tam giác. BÀI TẬP 1.3 Thông tin một học sinh bao gồm: Họ tên. Điểm văn, toán. Viết chương trình cho phép thực hiện các thao tác trên kiểu học sinh: Nhập, xuất thông tin học sinh. Tính điểm trung bình. Xếp loại theo tiêu chí Giỏi (>= 8.0), Khá (>= 7.0).  Trung bình (>= 5.0), Yếu (< 5). BÀI TẬP 1.4 Viết chương trình cho phép thực hiện các thao tác trên kiểu mảng: Nhập, xuất mảng. Lấy phần tử tại vị trí nào đó. Tìm phần tử nào đó trong mảng. Sắp xếp tăng, giảm. BÀI TẬP VỀ NHÀ Code các bài tập: 1.1, 1.2, 1.3, 1.4 và nộp  Mỗi bài trong 1 project, tất cả các project nằm trong solution tên  Khi nộp bài nộp nguyên project, xóa tất cả các folder Debug
Tài liệu liên quan