Trào lưu ngôn ngữ lập trình: Sự trỗi dậy của dữ liệu lớn  
 

Năm nay là năm thứ ba tạp chí IEEE Spectrum thực hiện việc xếp hạng hàng năm các ngôn ngữ lập trình, và chúng ta bắt đầu thấy được một số trào lưu. Những ngôn ngữ nào lên hạng? Những ngôn ngữ đang đuối sức? Và những chỉ số đánh giá xếp hạng nào góp phần nhiều nhất cho những thay đổi này?

Các ngôn ngữ được cho là có khả năng xử lý dữ liệu lớn, chẳng hạn như Julia, Python, R và Scala
FPT-APTECH-trao-luu-ngon-ngu-lap-trinh-su-troi-day-cua-du-lieu-lon

Bài viết này tập trung vào các ngôn ngữ được cho là có khả năng xử lý dữ liệu lớn, chẳng hạn như Julia, Python, R và Scala. Hầu hết các ngôn ngữ này được xây dựng nhằm xử lý lượng lớn con số, có các "gói" (hay mô-đun) có thể dùng để xây dựng nhanh chóng chức năng phân tích dữ liệu lớn. Những ngôn ngữ này đang ngày càng trở nên quan trọng vì chúng cho phép khai thác các tập dữ liệu lớn hiện có ở hầu hết các lĩnh vực từ khoa học đến thương mại.

Ngôn ngữ phát triển mạnh nhất trong thể loại này là Go, ngôn ngữ nguồn mở được Google tạo ra để giải quyết các vấn đề của công ty trong việc mở rộng hệ thống và lập trình song song hồi năm 2007. Theo xếp hạng của Spectrum, Go tăng 10 bậc so với năm 2014 để leo lên vị trí thứ 10 năm nay. Các ngôn ngữ dữ liệu lớn khác cũng thăng hạng so với năm 2014 là R và Scala, R tăng 4 bậc còn Scala tăng 2 bậc (mặc dù giảm 2 bậc so với năm 2015). Julia được đưa vào danh sách các ngôn ngữ đánh giá trong năm 2015, trong năm qua thứ hạng của nó lên xuống trong khoảng 40-33, vẫn còn là một "cầu thủ dự bị" nhưng rõ ràng rất có tiềm năng.

Sự thăng hạng nhanh chóng của Go chính là nhờ sự gia tăng mạnh mẽ các hoạt động liên quan trên kho mã nguồn GitHub. Kể từ năm 2014, tổng số kho mã trên GitHub dùng Go làm ngôn ngữ chính đã tăng lên gấp hơn 4 lần, nếu chỉ xem xét các kho GitHub đang hoạt động thì tăng gần 5 lần. Ngoài ra, số bài đăng trên Reddit đề cấp đến Go ũng nhiều hơn, số liệu của Spectrum cho thấy tăng gấp 3 lần.

Một ngôn ngữ khác cũng liên tục thăng hạng kể từ năm 2014 là R, giờ ở vị trí thứ 5. R được nâng hạng nhờ việc xử lý được nhiều câu hỏi hơn trên site Stack Overflow – nhiều hơn khoảng 46% so với năm 2014. Tuy nhiên, điều quan trọng hơn đó là R được đề cập ngày càng nhiều trong các tài liệu khoa học. Việc xếp hạng Spectrum dựa nhiều vào dữ liệu từ IEEE Xplore, nguồn này lập chỉ mục hàng triệu bài báo khoa học, tiêu chuẩn, và sách trong cơ sở dữ liệu IEEE (Institute of Electrical and Electronics Engineers). Trong bảng xếp hạng năm 2015 của Spectrum chỉ có 39 tài liệu đề cập đến ngôn ngữ này, trong khi đó năm nay có đến 244 tài liệu.

Ngược với những bước tiến đáng kể của các ngôn ngữ nguồn mở như Go, Julia, R, và Scala, các ngôn ngữ phân tích dữ liệu độc quyền như Matlab và SAS lại rớt hạng: Matlab rớt 4 bậc so với năm 2014 còn SAS rớt 7 bậc. Tuy nhiên, điều quan trọng cần lưu ý là cả hai ngôn ngữ này cũng có tiến bộ; chỉ có điều chúng không tiến nhanh như một số ngôn ngữ thay thế vị trí của chúng.

Khi đối chiếu thứ hạng với việc làm, các ngôn ngữ được sử dụng nhiều như Java và Python chiếm ưu thế. Nhưng trong năm 2016 các nhà tuyển dụng quan tâm đến R và Scala nhiều hơn hẳn so với năm 2014. Trong năm 2014 chỉ có 136 việc làm yêu cầu Scala trên các website tuyển dụng CareerBuilder và Dice. Nhưng đến năm 2016 thì có tới hơn 631 việc làm, tăng hơn gấp 4 lần.

Sự tăng trưởng này gợi lên câu hỏi liệu R có thể lật đổ Python hay Java là những ngôn ngữ hàng đầu cho dữ liệu lớn. Tuy R đã có những bước tiến rất lớn trong vài năm qua, nhưng Python và Java thực sự là những tượng đài lớn. Ví dụ, số lượng việc làm Python gấp 15 lần yêu cầu tuyển dụng lập trình viên R. Và trong khi chỉ có 63.000 mã nguồn R mới trên GitHub trong năm qua, thì có đến gần 458.000 mã nguồn Python. Mặc dù R có thể tuyệt vời cho việc phân tích và đồ họa thống kê và rõ ràng phổ biến với các học giả nghiên cứu, nhưng Python có lợi thế đáng kể trong các môi trường ứng dụng thực tế: Nó tích hợp với các quy trình dữ liệu thực tế dễ dàng hơn, và vì là ngôn ngữ đa năng nên nó có phạm vi ứng dụng rộng hơn.

Những con số trên cho thấy mặc dù một số lập trình viên muốn đánh giá các ngôn ngữ chỉ thuần túy về các chỉ số kỹ thuật nội tại như sự gọn gàng của cú pháp hay mức độ sử dụng các lớp, nhưng sự phổ biến của một ngôn ngữ luôn phụ thuộc nhiều vào khả năng ứng dụng mà nó nhắm đến, hoặc là do thiết kế hoặc có sẵn các thư viện hỗ trợ.

FPT APTECH mở ra cho các bạn đam mê học tin học, học công nghệ thông tin chuyên sâu về học lập trình cơ hội được đào tạo Công Nghệ Thông Tin trong môi trường tiêu chuẩn chất lượng quốc tế ISO 9001

Học CNTT - Học Aptech - Học tại FPT

Thanh Phong
(theo PCWorldVN)

Khối Giáo dục FPT – fpt.edu.vn

Trường Đào Tạo Lập Trình Viên Quốc Tếfpt.aptech.edu.vn

Tin liên quan:



 
 

 
     
 
Công nghệ khác:


Top 10 ngôn ngữ lập trình 2016Một lập trình viên trong cơn tức giận đã "hủy diệt" Internet chỉ bằng 11 dòng code
Nguồn mở: hiểm họa tiềm tàng trong ứng dụng doanh nghiệp7 chiêu lập trình xấu xí nhưng được việc
Hãy cân nhắc những điều này trước khi quyết định ghi danh một khóa học code10 ứng dụng Android dành cho nhà phát triển
  Xem tiếp    
 
Lịch khai giảng của hệ thống
 
Ngày
Giờ
T.Tâm
TP Hồ Chí Minh
Hà Nội
 
   
New ADSE - Nhấn vào để xem chi tiết
Mừng Sinh Nhật Lần Thứ 20 FPT-APTECH
Nhấn vào để xem chi tiết
Bảng Vàng Thành Tích Sinh Viên FPT APTECH - Nhấn vào để xem chi tiết
Cập nhật công nghệ miễn phí cho tất cả cựu sinh viên APTECH toàn quốc
Tiết Thực Vì Cộng Đồng
Hội Thảo CNTT
Những khoảnh khắc không phai của Thầy Trò FPT-APTECH Ngày 20-11