NỘI DUNG BÀI VIẾT
Hiện nay, có khoảng 600 ngôn ngữ lập trình trên mạng. Nhu cầu và sự phổ biến của các ngôn ngữ lập trình biến động hàng năm. Ngoài ra, các ngôn ngữ lập trình mới đang ra mắt với các tính năng hấp dẫn.
Vậy bạn nên học ngôn ngữ lập trình nào? Học một ngôn ngữ lập trình mới luôn đòi hỏi khoản đầu tư thời gian và chất xám. Nếu bạn là một developer dày dặn kinh nghiệm hoặc nếu bạn đã biết một số ngôn ngữ lập trình thì việc học một ngôn ngữ mới rất thích hợp.
Nhưng nếu bạn bắt đầu sự nghiệp lập trình của mình bây giờ hoặc nếu bạn muốn học ngôn ngữ lập trình thứ nhất hoặc thứ hai của mình, thì bạn nên học một trong những ngôn ngữ lập trình chính thống và đã có tên tuổi. Ở đây, mình sẽ liệt kê top 10 ngôn ngữ lập trình dựa trên các tiêu chí sau:
- Trở thành xu hướng chủ đạo và vững chắc trong ngành Phát triển Phần mềm.
- Được xếp hạng hàng đầu trong các trang web xếp hạng ngôn ngữ lập trình nổi tiếng.
- Mức độ phổ biến đang tăng lên hoặc ổn định và không giảm mạnh.
- Có số lượng lớn các thư viện, khuôn mẫu, hỗ trợ nhiều công cụ và có một cộng đồng đông đảo.
- Nhu cầu của thị trường với mức lương khởi điểm tốt.
Ngoài ra, mình sẽ tóm tắt các ngôn ngữ lập trình cùng với bối cảnh lịch sử, mức độ phổ biến và ứng dụng của nó.
1. Python
Khi Guido van Rossum phát triển Python vào những năm 1990 như một dự án phụ của mình, không ai nghĩ rằng một ngày nào đó nó sẽ là ngôn ngữ lập trình phổ biến nhất. Xem xét tất cả các bảng xếp hạng được công nhận và xu hướng ngành, mình đặt Python là ngôn ngữ lập trình số một về tổng thể.
Python đã quá phổ biến ở thời điểm hiện tại như các ngôn ngữ khác như Java, C/C++.
Ngoài ra, Python là một ngôn ngữ lập trình được thiết kế với ưu điểm mạnh là dễ đọc, dễ học và dễ nhớ. Bởi vì hình thức rất sáng sủa, cấu trúc rõ ràng nên nó rất thuận tiện cho người mới học lập trình. Nhưng ngay từ đầu, Python đã tập trung vào trải nghiệm của nhà phát triển và cố gắng giảm rào cản đối với lập trình để học sinh cũng có thể viết mã cấp sản xuất.
Vào năm 2008, Python đã trải qua một cuộc đại tu và cải tiến lớn với chi phí đưa ra những thay đổi đột phá bằng cách ra mắt Python 3.
Mức độ phổ biến
Trong vài năm gần đây, Python đã chứng kiến sự tăng trưởng mạnh mẽ về nhu cầu mà không có dấu hiệu chậm lại. Trang web xếp hạng ngôn ngữ lập trình PYPL đã xếp hạng Python là ngôn ngữ lập trình số một trong năm 2020:
Ngoài ra, Python đã vượt qua Java và trở thành ngôn ngữ phổ biến thứ 2 theo đóng góp của kho lưu trữ GitHub:
Ngoài ra, cuộc khảo sát dành cho nhà phát triển StackOverflow đã xếp hạng Python là ngôn ngữ lập trình phổ biến thứ 2:
Ứng dụng
- Khoa học dữ liệu (Data Science)
- Phân tích dữ liệu (Data Analytics)
- Trí tuệ nhân tạo, Học sâu (Artificial Intelligence, Deep Learning)
- Xử lý ảnh, tin sinh học (Image Processing, Bioinformatics)
- Phát triển ứng dụng Web (Web Application Development)
2. JavaScript
Trong cuộc chiến trình duyệt đầu tiên, Netscape đã giao cho Brendan Eich phát triển một ngôn ngữ lập trình mới cho Trình duyệt. Brendan Eich đã phát triển 1 bản mẫu chỉ trong mười ngày. Các nhà phát triển phần mềm thường chế nhạo JavaScript trong những ngày đầu vì thiết kế ngôn ngữ nghèo nàn và thiếu tính năng của nó.
Trong những năm qua, JavaScript đã phát triển thành một ngôn ngữ lập trình bậc cao rất linh hoạt. Bước đột phá quan trọng đầu tiên của JavaScript là vào năm 2009 khi Ryan Dahl đã phát hành JavaScript runtime Node.js đa nền tảng và cho phép JavaScript chạy trên Server Side.
Bước đột phá to lớn khác của JavaScript đến vào khoảng năm 2010 khi Google phát hành 1 framework front-end Web dựa trên JavaScript là AngularJS.
Ngày nay, JavaScript là một trong những ngôn ngữ lập trình được sử dụng rộng rãi nhất trên thế giới và chạy trên hầu hết mọi nơi: Trình duyệt, Máy chủ, Thiết bị di động, Đám mây, Bộ điều khiển vi mô,…
Mức độ phổ biến
JavaScript là một trong những ngôn ngữ lập trình được xếp hạng hàng đầu vì nó được sử dụng phổ biến trong tất cả các nền tảng và được áp dụng hàng loạt.
Octoverse đã đưa JavaScript trở thành ngôn ngữ lập trình số một trong 5 năm liên tiếp bởi sự đóng góp của kho lưu trữ GitHub:
Ngoài ra, cuộc khảo sát dành cho nhà phát triển của StackOverflow năm 2019 đã xếp hạng JavaScript là ngôn ngữ lập trình và Công nghệ phổ biến nhất:
Một trang web phổ biến về ngôn ngữ lập trình khác PYPL đã xếp hạng JavaScript là ngôn ngữ lập trình phổ biến thứ 3:
Ứng dụng
- Phát triển ứng dụng Web (Web Application Development)
- Phát triển Backend (Backend Development)
- Phát triển ứng dụng di động (Mobile App Development)
- Điện toán không máy chủ (Serverless Computing)
- Phát triển trò chơi trên trình duyệt (Browser Game Development)
3. Java
Java là một trong những ngôn ngữ lập trình đột phá nhất cho đến nay. Quay trở lại những năm 90, các ứng dụng kinh doanh chủ yếu được phát triển bằng C ++, khá phức tạp và phụ thuộc vào nền tảng. James Gosling và nhóm của ông ở Sun đã hạ thấp rào cản để phát triển các ứng dụng kinh doanh bằng cách cung cấp một ngôn ngữ lập trình thông dịch, hướng đối tượng, đơn giản hơn và hỗ trợ đa luồng.
Java đã đạt được sự độc lập về nền tảng bằng cách phát triển Máy ảo Java (JVM). Java được coi là ngôn ngữ “Viết một lần, chạy mọi nơi” đầu tiên. Ngoài ra, JVM còn cung cấp khả năng quản lý vòng đời của Đối tượng.
Trong những năm gần đây, Java đã đánh mất một số thị trường vào tay các ngôn ngữ hiện đại với sự trỗi dậy của các ngôn ngữ khác, đặc biệt là Python, JavaScript. Ngoài ra, JVM không hoàn toàn thân thiện với đám mây vì kích thước cồng kềnh của nó. Oracle gần đây đã đưa ra mức phí cấp phép khổng lồ cho JDK, điều này làm giảm mức độ phổ biến của Java.
May mắn thay, Java đang khắc phục những thiếu sót của nó và cố gắng làm cho Java phù hợp với Đám mây thông qua sáng kiến GraalVM. Java vẫn là ngôn ngữ lập trình số một cho các doanh nghiệp, rất nhiều hệ thống đã, đang và sẽ tiếp tục dùng Java bởi các tính năng của nó (Đặc biệt là hệ thống Core-banking của các ngân hàng).
Mức độ phổ biến
Chỉ sau 5 năm phát hành, Java trở thành ngôn ngữ lập trình phổ biến thứ 3 và luôn nằm trong top 3 danh sách trong hai thập kỷ tiếp theo. Đây là lịch sử lâu dài của Java trong bảng xếp hạng TIOBE phổ biến:
Tính phổ biến của Java đã giảm dần trong vài năm qua, nhưng nó vẫn là ngôn ngữ lập trình phổ biến nhất, theo TIOBE, như hình dưới đây:
Theo đóng góp của kho lưu trữ GitHub, Java đã đứng ở vị trí số một trong suốt 2014 – 2018 và chỉ tụt xuống vị trí thứ 3 từ năm 2019:
Ứng dụng
- Phát triển ứng dụng doanh nghiệp (Enterprise Application Development)
- Phát triển ứng dụng Android (Android App Development)
- Dữ liệu lớn (Big Data)
- Phát triển ứng dụng Web (Web Application Development)
Tham khảo: Trở thành lập trình viên Java Full-stack từ con số 0
4. C#
Vào năm 2000, gã khổng lồ công nghệ Microsoft đã quyết định tạo ra ngôn ngữ lập trình Hướng đối tượng dựa vào ngôn ngữ C trong ý tưởng .NET của họ, sẽ được quản lý (chạy trên Máy ảo như Java). Nhà thiết kế ngôn ngữ kỳ cựu Anders Hejlsberg đã thiết kế C# như một phần của nền tảng Sáng kiến Ngôn ngữ Chung (CLI) của Microsoft, trong đó nhiều ngôn ngữ khác (chủ yếu là các ngôn ngữ của Microsoft) được biên dịch thành một định dạng trung gian chạy trên Thời gian chạy có tên là Thời gian chạy ngôn ngữ chung (CLR).
Trong những ngày đầu, C# bị chỉ trích là một bản sao của Java. Nhưng sau đó, cả hai ngôn ngữ đều khác nhau. Ngoài ra, việc cấp phép trình biên dịch/thời gian chạy C# của Microsoft không phải lúc nào cũng rõ ràng.
Ngày nay, C# là một ngôn ngữ lập trình đa mô hình được sử dụng rộng rãi không chỉ trên nền tảng Windows mà còn trên nền tảng iOS/Android (nhờ Xamarin) và nền tảng Linux.
Mức độ phổ biến
Trang web xếp hạng ngôn ngữ phổ biến TIOBE đã xếp thứ 5 với mức tăng đáng kể:
Cuộc khảo sát dành cho nhà phát triển StackOverflow đã xếp C# là ngôn ngữ phổ biến thứ 4 (Công nghệ phổ biến thứ 7 trong năm 2020):
Ứng dụng
- Lập trình phía Server (Server-Side programming)
- Phát triển ứng dụng (App development)
- Phát triển ứng dụng Web (Web Application development)
- Phát triển trò chơi (Game Development)
- Phần mềm cho Nền tảng Windows (Software for Windows Platform)
5. C
Trong những năm 1960 và 1970, mỗi chu kỳ của CPU và mỗi byte bộ nhớ đều rất đắt tiền. Dennis Ritchie, một kỹ sư phòng thí nghiệm Bell, đã phát triển một ngôn ngữ lập trình thủ tục với mục đích chính là có thể biên dịch trực tiếp sang ngôn ngữ máy trong giai đoạn 1969-1973. Ngôn ngữ C cung cấp quyền truy cập mức thấp vào bộ nhớ và cho phép toàn quyền kiểm soát phần cứng.
Trong những năm qua, C trở thành một trong những ngôn ngữ lập trình được sử dụng nhiều nhất. Bên cạnh đó, C được cho là ngôn ngữ lập trình đột phá và có ảnh hưởng nhất trong lịch sử và đã ảnh hưởng đến hầu hết các ngôn ngữ khác trong danh sách này mặc dù C thường bị chỉ trích vì độ phức tạp, lập trình không an toàn và thiếu tính năng. Ngoài ra, C còn phụ thuộc vào nền tảng, tức là mã C không linh hoạt. Nhưng nếu bạn muốn tận dụng tối đa phần cứng của mình, thì C/C ++ hoặc Rust là lựa chọn duy nhất của bạn.
Mức độ phổ biến
C là ngôn ngữ lập trình lâu đời nhất trong danh sách này và đã thống trị ngành công nghiệp trong 47 năm. C cũng đã thống trị xếp hạng mức độ phổ biến của ngôn ngữ lập trình hơn bất kỳ ngôn ngữ nào khác rõ ràng trong lịch sử xếp hạng lâu dài của TIOBE:
Theo bảng xếp hạng TIOBE, C là ngôn ngữ phổ biến thứ hai với mức độ phổ biến lớn trong năm 2019:
Trang PYPL đã xếp hạng C là ngôn ngữ lập trình phổ biến thứ 6 cùng với C++:
Ứng dụng
- Lập trình hệ thống (System Programming)
- Phát triển trò chơi (Game Development)
- Hệ thống IoT và thời gian thực (IoT and Real-Time Systems)
- Học máy, Học sâu (Machine Learning, Deep Learning)
- Hệ thống nhúng (Embedded Systems)
Vậy theo các bạn, những người mới học lập trình thì nên học ngôn ngữ nào đầu tiên, hãy cùng bình luận ở phía bên dưới nhé!
Tham khảo: Top 10 ngôn ngữ lập trình đáng học nhất năm 2021 (phần 2)
Các bạn có thể tham khảo các bài viết hay về JavaScript tại đây.
Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.