Một sinh viên phần mềm hỏi: “Ngày nay có bao nhiêu ngôn ngữ lập trình? Ngôn ngữ nào là tốt nhất? Tại sao mọi người phải học ngôn ngữ lập trình? Điều này có vô lý không? Tôi cần biết ngôn ngữ nào?”


Tôi trả lời: Có lẽ hiện nay có nhiều ngôn ngữ lập trình hơn ngôn ngữ nói trên thế giới. Cứ vài tháng, ai đó lại tạo ra một ngôn ngữ lập trình mới ở đâu đó. Ngôn ngữ lập trình đã tiến hoá từ ngôn ngữ của máy tính thế hệ thứ nhất hay ngôn ngữ số thức của 0 và 1 sang ngôn ngữ của máy tính thế hệ hai được phân loại như “hợp ngữ” nơi mã có thể được viết và được chuyển đổi thành mã máy bằng quá trình gọi là hợp dịch. Ngôn ngữ thế hệ thứ ba có một vài nhóm: Ngôn ngữ mệnh lệnh như Cobol, Fortran và Pascal; ngôn ngữ hướng đối tượng như Java, C++, và Smalltalk; ngôn ngữ hàm như Lisp và ML; và ngôn ngữ logic như Prolog. Ngày nay, sinh viên quen thuộc với ngôn ngữ thế hệ thứ tư khi họ thiết kế cho các mục đích chuyên dụng như SQL cho truy vấn dữ liệu; Powerbuilder, Delphi, Focus, và Access cho ứng dụng cơ sở dữ liệu; Visual basic và TCL cho làm bản mẫu; và HTML 5, và Javascript cho các ứng dụng trên miền web, vv.



Không “ngôn ngữ nào có thể coi là tốt nhất” vì mỗi ngôn ngữ phục vụ cho một mục đích và đóng góp cho công nghệ vào thời điểm nào đó. Khi còn học trong trường, tôi đã học FORTRAN, COBOL nhưng khi làm việc, tôi đã học thêm Ada và tôi nghĩ Ada là tốt, đặc biệt trong các ứng dụng nhúng. Khi C và Unix tới cho phép tôi làm nhiều thứ, tôi nghĩ ngôn ngữ này là hoàn hảo nhưng mọi thứ lại thay đổi. Với mọi thế hệ ngôn ngữ lập trình, có rất nhiều phát kiến mới để cải thiện cho ngôn ngữ tốt hơn so với thế hệ trước. Ngày nay có rất nhiều ngôn ngữ mới như R, Go, Ruby, Python Objective C, Swift vv. Tôi chắc còn nhiều ngôn ngữ nữa sẽ được phát minh trong tương lai gần.


Trong thế giới được dẫn lái bởi công nghệ này, mọi người đều cần những kỉ năng căn bản như biết sử dụng máy tính, biết truy cập vào Internet, biết gửi tin nhắn, biết sử dụng điện thoại thông minh vv. Tuy nhiên theo thời gian, mọi người cần phải biết thêm về ngôn ngữ lập trình để ra lệnh cho máy tính và các thiết bị công nghệ làm việc. Theo tôi nghĩ, ngôn ngữ lập trình sẽ trở nên thông dụng như đọc và viết. Cách đây hơn trăm năm, chỉ một số ít người biết đọc và biết viết. Ngày nay hầu hết mọi người đều biết đọc và viết nhưng họ sẽ phải học về lập trình và có lẽ hai mươi năm nữa, lập trình cũng trở nên thông dụng và hầu hết ai cũng có thể lập trình.


Là kĩ sư phần mềm, bạn có lẽ đang học về C, C++, C# hay Java ở trường. Chúng là các ngôn ngữ lập trình rất phổ biến ngày nay nhưng ngôn ngữ thay đổi theo thời gian, và người kĩ sư phải có khả năng học ngôn ngữ mới. Tôi chắc chắn bạn sẽ phải học một vài ngôn ngữ mới khi công nghệ thay đổi trong vài năm tới.


- Nguồn: Professor John Vu