▪ 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[r]
(1)Bài 5
(2)Nội dung
1. Nguyên tắc chung
2. Thiết kế giải thuật
(3)1
Nguyên tắc chung
(4)Phẩm chất của
chương trình tốt
▪ Phẩm chất chương trình tốt
▫ Cấu trúc tốt
▫ Logic chương trình + biểu thức diễn đạt theo cách thông thường
▫ Tên dùng 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 để tạo chương trình có phẩm chất tốt
▫ Thiết kế top-down
(5)Nguyên tắc
chung
Đơn giản
▪ Thể giải thuật vốn có, đừng q kỳ bí
▪ Lựa chọn cấu trúc liệu cho việc viết giải thuật NNLT cụ thể đơn giản
▪ Tìm cách đơn giản hóa biểu thức
(6)Nguyên tắc
chung
Trực tiếp
▪ Sử dụng thư viện lúc
▪ Tránh việc kiểm tra điều kiện không cần thiết
Rõ ràng
▪ Dùng cặp dấu đánh dấu khối lệnh để tránh nhập nhằng
▪ Đặt tên biến, hàm, cho tránh nhầm lẫn
(7)Nguyên tắc
chung
Cấu trúc tốt
▪ Tơn trọng tính cấu trúc chương trình theo 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 kiểm thử dựa cấu trúc phân cấp chương trình
▪ Tránh hồn tồn việc dùng goto
(8)2
Thiết kế giải thuật
(9)Thiết kế
giải thuật
▪ Chia toán thành nhiều toán nhỏ
▪ Tìm giải pháp cho tốn nhỏ
▪ Gộp giải pháp cho toán nhỏ thành giải pháp tổng thể cho toán ban đầu
Đơn giản hóa tốn cách trừu tượng hóa: làm thay làm
▫ Ví dụ: hàm mức trừu tượng
▸ Hàm xếp mảng số nguyên
▸ Hàm nhập vào / xuất ký tự: getchar() , putchar()
(10)Thiết kế từ lên
Bottom-up design
▪ Bottom-up design
▫ Thiết kế chi tiết phần
▫ Thiết kế chi tiết phần khác
▫ Lặp lại hết
▪ Bottom-up design in programming
▫ Viết phần CT cách chi tiết hết
▫ Viết phần CT cách chi tiết hết
▫ Lặp lại hết
1