Lập trình cấu trúc

Mẫu hình lập trình
  • x
  • t
  • s

Lập trình cấu trúc là một tập con của lập trình thủ tục. Trong một chương trình máy tính, các khối chức năng có thể được thực hiện không chỉ theo trình tự mà còn có thể theo các tình huống và lặp lại nhiều lần. Phương pháp lập trình cấu trúc được dựa trên các mô hình toán học của Bohm và Guiseppe, theo đó, một chương trình máy tính có thể được viết dựa trên ba cấu trúc: trình tự, quyết định và vòng lặp.

Trình tự nghĩa là các câu lệnh được thực hiện theo trình tự nhất định: trên xuống.

Quyết định là sự quy định sẽ thực hiện chương trình như thế nào phụ thuộc vào sự thoả mãn các điều kiện nhất định.

Vòng lặp thể hiện sự thực hiện có tính lặp một số đoạn lệnh của chương trình khi các điều kiện nào đó vẫn được thỏa mãn.

Thông qua các cấu trúc trên, mã chương trình trở nên sáng sủa và dễ đọc.

Phương pháp lập trình thủ tục hay lập trình cấu trúc thường đi đôi với phương pháp phân tích trên xuống (top-down). Theo phương pháp này, người thiết kế hệ thống chia các chức năng (hàm) chính của hệ thống thành các chức năng nhỏ hơn, đến lượt mình, các chức năng nhỏ này lại được chia tiếp thành các chức năng nhỏ hơn nữa cho đến khi được các khối (hàm) chương trình đủ nhỏ. Việc phân tích này được thể hiện trực quan theo sơ đồ khối.

Các ngôn ngữ hỗ trợ lập trình hướng cấu trúc phổ biến là Pascal, C, Foxpro.

Lưu đồ Nassi–Shneiderman là một trong các lưu đồ nhất quán với lý thuyết của lập trình cấu trúc.

Tham khảo

Bài viết này vẫn còn sơ khai. Bạn có thể giúp Wikipedia mở rộng nội dung để bài được hoàn chỉnh hơn.
  • x
  • t
  • s
  • x
  • t
  • s
Những lĩnh vực chính của khoa học máy tính
Các nền tảng toán học
Lý thuyết phép tính
Độ phức tạp Kolmogorov · Lý thuyết Automat · Lý thuyết tính được · Lý thuyết độ phức tạp tính toán · Lý thuyết điện toán lượng tử
Các cấu trúc dữ liệu
các giải thuật
Phân tích giải thuật · Thiết kế giải thuật · Hình học tính toán · Tối ưu hóa tổ hợp
Các ngôn ngữ lập trình
Các trình biên dịch
Tính song hành,
Song song,
và các hệ thống phân tán
Công nghệ phần mềm
Phân tích yêu cầu · Thiết kế phần mềm · Các phương pháp hình thức · Kiểm thử phần mềm · Quy trình phát triển phần mềm · Các phép đo phần mềm · Đặc tả chương trình · LISP · Mẫu thiết kế · Tối ưu hóa phần mềm
Kiến trúc hệ thống
Kiến trúc máy tính · Tổ chức máy tính · Các hệ điều hành · Các cấu trúc điều khiển · Cấu trúc bộ nhớ lưu trữ · Vi mạch · Thiết kế ASIC · Vi lập trình · Vào/ra dữ liệu · VLSI design · Xử lý tín hiệu số
Viễn thông
Mạng máy tính
Các cơ sở dữ liệu
Các hệ thống thông tin
Hệ quản trị cơ sở dữ liệu · Cơ sở dữ liệu quan hệ · SQL · Các giao dịch · Các chỉ số cơ sở dữ liệu · Khai phá dữ liệu · Biểu diễn và giao diện thông tin · Các hệ thống thông tin · Khôi phục dữ liệu · Lưu trữ thông tin · Lý thuyết thông tin · Mã hóa dữ liệu · Nén dữ liệu · Thu thập thông tin
Trí tuệ nhân tạo
Lập luận tự động · Ngôn ngữ học tính toán · Thị giác máy tính · Tính toán tiến hóa · Các hệ chuyên gia  · Học máy · Xử lý ngôn ngữ tự nhiên · Robot học
Đồ họa máy tính
Trực quan hóa · Hoạt họa máy tính · Xử lý ảnh
Giao diện người-máy tính
Khả năng truy cập máy tính · Giao diện người dùng · Điện toán mang được · Điện toán khắp mọi nơi · Thực tế ảo
Khoa học tính toán
Cuộc sống nhân tạo · Tin sinh học · Khoa học nhận thức · Hóa học tính toán · Khoa học thần kinh tính toán · Vật Lý học tính toán · Các giải thuật số · Toán học kí hiệu
Chú ý: khoa học máy tính còn có thể được chia thành nhiều chủ đề hay nhiều lĩnh vực khác dựa theo Hệ thống xếp loại điện toán ACM.