Tôi nghĩ rằng Cấu trúc và Giải thích các Chương trình Máy tính là một cuốn sách tuyệt vời để đọc. Tuy nhiên, có một vài vấn đề với nó.
Vấn đề lớn nhất trong kinh nghiệm của tôi là, trong khi cuốn sách đòi hỏi hoàn toàn không có kiến thức lập trình, và là hướng tới người mới hoàn thành, nó được hướng tới người mới hoàn thành người nghiên cứu tại MIT . Và vì vậy, mặc dù nó không có bất kỳ kiến thức lập trình nào, nhưng nó lại thừa nhận khá nhiều kiến thức về miền , ví dụ như trong các lĩnh vực kỹ thuật điện, vật lý và toán học. Lưu ý: những điều này không liên quan gì đến các khái niệm được dạy, chúng chỉ cần thiết để hiểu các bài tập và ví dụ .
Những người lớn hơn tôi đã giải thích nó tốt hơn nhiều, trong một bài báo có tiêu đề thông minh Cấu trúc và diễn giải của chương trình giảng dạy khoa học máy tính . May mắn thay, họ không chỉ là người than vãn, thay vào đó họ đã viết cuốn sách của riêng mình : Cách thiết kế chương trình . Nếu bạn nghĩ về việc đọc SICP, trước tiên bạn có thể muốn đọc HtDP: nó bao gồm nhiều nền tảng giống như SICP, nhưng nó chỉ giả định kiến thức miền trung học cấp trung bình. (Trên thực tế, nó được viết để dạy cho học sinh trung học.)
Sau khi bạn đã hoàn thành HtDP, bạn vẫn có thể quay lại và đọc SICP, vì bây giờ một số kiến thức tên miền còn thiếu sẽ không còn gây hại nữa vì bạn đã thấy khái niệm này trước đây.
Lưu ý: có một bản nháp cho phiên bản thứ hai của HtDP , mà bạn có thể muốn đọc thay vì phiên bản đầu tiên. Tài liệu về lập trình mệnh lệnh đã bị xóa và sẽ được trình bày trong tập thứ hai chưa được ghi nhận Cách thiết kế các thành phần , nhưng bạn có thể lấy chúng từ phiên bản đầu tiên hoặc từ SICP hoặc cả hai.