Cuối cùng các trường đại học lớn đã nhận ra Java là một ngôn ngữ tệ hại nếu dùng để dạy nhập môn lập trình

CS 106A là khóa học nhập môn lập trình của trường đại học danh tiếng Standford University. Chương trình học được đăng tải công khai trên YouTube, giới thiệu về những nguyên tắc lập trình cơ bản theo cách dễ tiếp cận nhất cho sinh viên. Với mong muốn khi kết thúc khóa học này, kiến thức sinh viên thu được sẽ là nền tảng để học lập trình chuyên sâu cũng như học những ngôn ngữ lập trình mới.

Suốt từ khi ra đời, khóa học này đã sử dụng ngôn ngữ lập trình Java, một ngôn ngữ phổ biến, tất nhiên, nhưng nó cũng phức tạp, rối rắm và khiến nhiều sinh viên "ngu" người. Rất may, Standford cuối cùng cũng nhận thấy sự tệ hại đó và trong "phiên bản mới" của CS 106A là CS 106J, ngôn ngữ để dạy nhập môn lập trình đã được đổi thành JavaScript.

Theo như Standford, CS 106J cũng bao gồm các tài liệu như CS 106A nhưng sử dụng JavaScript thay vì Java. Bởi JavaScript là ngôn ngữ phổ biến nhất để xây dựng nên những trang web tương tác.

Quyết định loại bỏ Java thật sự là sáng suốt, bởi bất cứ một sinh viên nào từng học Java đều nhận thấy rằng đây là ngôn ngữ khắc nghiệt nhất mà mình phải học khi mới bắt đầu. Nói thẳng ra là nó quá khủng khiếp.

Đoạn code đầu tiên khi lập trình với Java thường sẽ là:

class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, world!");
}
}

Hãy nghĩ lại ngày đầu tiên bạn học lập trình mà xem, đoạn code trên đáng sợ biết nhường nào?

Bạn có thốt lên: "Mẹ ơi!, "class" là cái quái gì vậy? "public static void" nữa, tất cả những thứ này là sao? Lập trình khó quá, chắc con chọn nhầm ngành rồi!" hay không?

Trong khi đó, cả đoạn code trên nếu chuyển sang JavaScript thì chỉ còn như thế này:

alert('Hello, world!');

Nó đã "dễ tiêu" hơn rất nhiều, dù chưa biết gì về lập trình, chưa viết một dòng code nào trong đời, chỉ cần nhìn bạn cũng có thể hiểu được đoạn code này sẽ thực hiện công việc gì.

Bạn không còn phải chịu gánh nặng, áp lực ngay lập tức, dù biết rằng trước sau gì cũng phải đối mặt với nó, nhưng ít nhất là cho đến khi bạn quen với lập trình, lúc đó, những thứ như class, lập trình hướng chức năng, lập trình hướng đối tượng được đưa vào vẫn chưa muộn.

Lập trình vốn là một môn học thú vị, đầy cơ hội để sáng tạo và có thể là chìa khóa để sinh viên có được một sự nghiệp tuyệt vời sau này. Thế nhưng khi bài học lập trình đầu tiên là những đoạn code cồng kềnh, rườm rà, khó hiểu của Java thì lập trình lại trở thành một môn học tẻ nhạt, khô khan, khó nuốt, khiến họ nản lòng và muốn tìm kiếm một ngành học khác.

Chúng ta không thể phủ nhận sự thịnh hành của Java trong thực tế, nhưng nó đang dần thu hẹp độ phủ sóng của mình trong vai trò ngôn ngữ nhập môn cho lập trình.

Khảo sát về ngôn ngữ nhập môn lập trình năm 2005

Năm 2005, một cuộc khảo sát về ngôn ngữ nhập môn lập trình của các trường đại học đã được tổ chức bởi học giả Bernard Chalk đến từ đại học London South Bank và Karen Fraser từ Ulster. Gần 60% trường đại học trong số này sử dụng Java làm ngôn ngữ nhập môn, 10% dùng C++ và chỉ có 3% sử dụng Python.

Đó là chuyện của hàng chục năm trước, giờ đây, mọi thứ đang thay đổi, Java không còn là ngôn ngữ nhập môn được ưa chuộng.

Theo nghiên cứu của Philip Guo trên trang web của Hiệp hội máy tính ACM năm 2014, Python hiện mới là ngôn ngữ phổ biến nhất thế giới trong việc giảng dạy nhập môn Khoa học máy tính ở Hoa Kỳ.

8 trong số 10 khoa Khoa học máy tính hàng đầu của Hoa Kỳ và 27 trong số 39 trường đại học top đầu sử dụng Python để giảng dạy những nguyên tắc cơ bản của Khoa học máy tính. Các ngôn ngữ khác trong danh sách bao gồm MATLAB, C, C++, Scheme, Scratch và tất nhiên có cả Java... dù có thể nó sẽ sớm không còn được sử dụng trong khóa học nhập môn nữa.

Nếu đang cân nhắc chọn ngôn ngữ đầu tiên khi bước chân vào học lập trình, hy vọng bài viết này có thể giúp ích cho bạn. Còn nữa, ngôi trường bạn theo học đã và đang dạy ngôn ngữ nhập môn lập trình nào, hãy chia sẻ với chúng tôi nhé!

Xem thêm:

Thứ Năm, 28/06/2018 09:07
4,510 👨 10.941
0 Bình luận
Sắp xếp theo