Thực tế không thể dạy lập trình tốt cho những sinh viên đã tiếp xúc với BASIC trước đó: vì các lập trình viên tiềm năng họ bị cắt xén tinh thần ngoài hy vọng tái sinh
Tôi rất tôn trọng Dijkstra nhưng tôi không đồng ý với tất cả những gì anh ấy nói / viết. Tôi không đồng ý đặc biệt với trích dẫn này trên bài báo được liên kết đã viết cách đây 35 năm về việc triển khai Dartmouth BASIC .
Nhiều đồng nghiệp hoặc bạn lập trình viên của tôi bắt đầu với BASIC, các câu hỏi dưới đây có câu trả lời cho thấy nhiều lập trình viên có kinh nghiệm đầu tiên về lập trình tại BASIC. AFAIK nhiều lập trình viên giỏi đã bắt đầu lập trình BASIC.
Tôi không nói về Visual Basic hay các phương ngữ "hiện đại" khác của BASIC chạy trên các máy có đầy đủ tài nguyên. Tôi đang nói về thời xưa BASIC chạy trên máy tính "đồ chơi", rằng lập trình viên phải lo lắng về việc lưu các số nhỏ không cần tính như một chuỗi để lưu byte byte vì máy tính chỉ có vài trăm trong số chúng, hoặc phải sử dụng goto được tính toán vì thiếu tính năng mạnh hơn và nhiều thứ khác đòi hỏi lập trình viên phải suy nghĩ nhiều trước khi làm điều gì đó và buộc lập trình viên phải sáng tạo.
Nếu bạn đã có kinh nghiệm với BASIC thời xưa trên một máy có tài nguyên hạn chế (hãy nhớ rằng một bộ điều khiển vi mô đơn giản ngày nay có nhiều tài nguyên hơn máy tính vào năm 1975, bạn có nghĩ rằng BASIC giúp tâm trí của bạn tìm ra giải pháp tốt hơn, để suy nghĩ giống như một kỹ sư hay BASIC kéo bạn vào mặt tối của lập trình và cắt xén bạn về mặt tinh thần?
Có tốt không khi học một ngôn ngữ lập trình chạy trên máy tính chứa đầy tài nguyên, nơi lập trình viên mới có thể làm tất cả sai và chương trình chạy mà không gặp vấn đề lớn? Hoặc là tốt hơn để tìm hiểu nơi lập trình viên không thể đi sai?
Bạn có thể nói gì về BASIC đã giúp bạn trở thành một lập trình viên tốt hơn / kém hơn?
Bạn có dạy BASIC cũ chạy trên máy 2KB (ảo) cho một lập trình viên sắp tới không?
Chắc chắn, chỉ tiếp xúc với BASIC là xấu. Có thể bạn chia sẻ ý kiến của tôi rằng BASIC hiện đại không giúp được gì nhiều vì BASIC hiện đại, miễn là các ngôn ngữ lập trình khác, cung cấp các phương tiện cho phép lập trình viên không suy nghĩ sâu hơn.
Thông tin bổ sung: Tại sao CƠ BẢN?