Bài giảng Kỹ thuật lập trình: Bài 5 - ThS. Nguyễn Thành Trung

pdf
Số trang Bài giảng Kỹ thuật lập trình: Bài 5 - ThS. Nguyễn Thành Trung 43 Cỡ tệp Bài giảng Kỹ thuật lập trình: Bài 5 - ThS. Nguyễn Thành Trung 1 MB Lượt tải Bài giảng Kỹ thuật lập trình: Bài 5 - ThS. Nguyễn Thành Trung 0 Lượt đọc Bài giảng Kỹ thuật lập trình: Bài 5 - ThS. Nguyễn Thành Trung 5
Đánh giá Bài giảng Kỹ thuật lập trình: Bài 5 - ThS. Nguyễn Thành Trung
4.1 ( 14 lượt)
Nhấn vào bên dưới để tải tài liệu
Đang xem trước 10 trên tổng 43 trang, để tải xuống xem đầy đủ hãy nhấn vào bên trên
Chủ đề liên quan

Nội dung

Trịnh Thành Trung (ThS) trungtt@soict.hust.edu.vn Bài 5 THIẾT KẾ CHƯƠNG TRÌNH Nội dung 1. Nguyên tắc chung 2. Thiết kế giải thuật 3. Thiết kế dữ liệu 1. Nguyên tắc chung Trong thiết kế chương trình Phẩm chất của chương trình tốt ▪ Phẩm chất của 1 chương trình tốt ▫ Cấu trúc tốt ▫ Logic chương trình + các biểu thức được diễn đạt theo cách thông thường ▫ Tên dùng trong chương trình có tính chất miêu tả ▫ Chú thích hợp lý ▫ Tôn trọng chiến lược divide/conquer/association ▪ Làm thế nào để tạo ra chương trình có phẩm chất tốt ▫ Thiết kế top-down ▫ Tinh chỉnh từng bước Nguyên tắc chung Đơn giản ▪ Thể hiện giải thuật như nó vốn có, đừng quá kỳ bí ▪ Lựa chọn cấu trúc dữ liệu sao cho việc viết giải thuật bằng NNLT cụ thể là đơn giản nhất ▪ Tìm cách đơn giản hóa các biểu thức ▪ Thay những biểu thức lặp đi lặp lại bằng CT con tương ứng Nguyên tắc chung Trực tiếp ▪ Sử dụng thư viện mọi lúc có thể ▪ Tránh việc kiểm tra điều kiện không cần thiết Rõ ràng ▪ Dùng các cặp dấu đánh dấu khối lệnh để tránh nhập nhằng ▪ Đặt tên biến, hàm, .. sao cho tránh được nhầm lẫn ▪ Không chắp vá các đoạn mã khó hiểu mà nên viết lại Nguyên tắc chung Cấu trúc tốt ▪ Tôn trọng tính cấu trúc của chương trình theo từng mô thức lập trình: ▫ Module: hàm/ thủ tục ▫ Hướng đối tượng: lớp ▫ Hướng thành phần: thành phần ▫ Hướng dịch vụ: dịch vụ ▪ Viết và kiểm thử dựa trên cấu trúc phân cấp của chương trình ▪ Tránh hoàn toàn việc dùng goto  Nếu cần thì nên viết giải thuật bằng giả ngữ, rồi mới viết bằng 1 NNLT cụ thể 2. Thiết kế giải thuật Algorithms Thiết kế giải thuật ▪ Chia bài toán ra thành nhiều bài toán nhỏ hơn ▪ Tìm giải pháp cho từng bài toán nhỏ ▪ Gộp các giải pháp cho các bài toán nhỏ thành giải pháp tổng thể cho bài toán ban đầu  Đơn giản hóa bài toán bằng cách trừu tượng hóa: làm cái gì thay vì làm như thế nào ▫ Ví dụ: các hàm ở mức trừu tượng ▸ Hàm sắp xếp 1 mảng các số nguyên ▸ Hàm nhập vào / xuất ra các ký tự: getchar() , putchar() ▸ Hàm toán học : sin(x), sqrt(x) Thiết kế từ dưới lên Bottom-up design 1 2 ▪ Bottom-up design  ▫ Thiết kế chi tiết 1 phần ▫ Thiết kế chi tiết 1 phần khác … ▫ Lặp lại cho đến hết ▪ Bottom-up design in programming 1 2 ▫ Viết phần đầu tiên của CT 1 cách chi tiết cho đến hết 3 ▫ Viết phần tiếp theo của CT 1 cách chi tiết cho đến hết 4 … ▫ Lặp lại cho đến hết
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.