Những ngôn ngữ lập trình nên học năm 2017

Cập nhật ngày 03/06/2017

Bài viết sau được dịch từ simpleprogrammer.com bởi tác giả John Sonmez về top những ngôn ngữ lập trình nên học năm 2017. Bạn có thể đọc bản gốc bài viết bằng tiếng anh tại đây. Trong trường hợp, tiếng anh của bạn chưa đủ hoặc đơn giản là bạn ngại mở máy tính để tra từ điển thì xin mời đọc bản dịch của tôi sau đây.

Chú ý: Sau đây, "tôi" chính là John Sonmez, không phải tác giả blog Complete JavaScript.

Rất nhiều người hỏi tôi về ngôn ngữ lập trình mà họ nên học. Tôi cảm thấy hơi bí vì đây là một câu hỏi rất khó để trả lời. Có nhiều thứ quan trọng cần phải cân nhắc trước khi đưa ra quyết định. Đặc biệt là liên quan đến ngôn ngữ lập trình mà bạn nên học.

Một trong những cách dễ nhất để quyết định xem ngôn ngữ lập trình mà bạn nên học năm 2017 là tìm hiểu và lắng nghe thị trường. Thị trường chắc chắn sẽ nói cho bạn biết về ngôn ngữ lập trình nào sẽ là xu hướng cho tương lai.

Vậy, bạn biết như thế nào về ngôn ngữ lập trình được mong muốn nhất trong năm 2017?

Dựa theo nghiên cứu của tôi, sau đây là những ngôn ngữ lập trình bạn nên tập trung trong năm 2017:

  • JavaScript
  • Python
  • Elixir
  • Rust
  • Swift

Bạn có đồng ý với tôi không? Suy nghĩ của bạn là gì? Hãy để lại bình luận dưới video sau:

Góc bình luận

(Phần này sẽ là tôi - Lam Pham, không phải là John Sonmez)

Anh John Sonmez đề cập tới 2 lớp lập trình viên: người mới bắt đầu - chưa biết gì về lập trình hoặc biết rất ít và những người có kinh nghiệm về lập trình - đã biết một hay nhiều ngôn ngữ lập trình.

Đối với những lập trình viên mới

Nếu bạn chưa biết gì về lập trình thì bạn không nên chọn học một ngôn ngữ theo xu hướng. Cái mà bạn nên chọn là một ngôn ngữ lập trình "có truyền thống lâu đời". Nghĩa là nếu biết ngôn ngữ lập trình này thì bạn sẽ luôn luôn có cơ hội xin việc hay bạn dễ dàng hơn để học những ngôn ngữ lập trình khác.

Theo John Sonmez, ngôn ngữ lập trình nên học đầu tiên là Java, sau đó C#, C++ và tiếp theo là JavaScript.

Tại sao Java lại là sự lựa chọn tốt và hơn nữa, nó rất phổ biến?

Trước tiên, Java có lịch sử khá lâu đời và rất nhiều hệ thống chạy bằng Java. Do đó, nếu bạn có kinh nghiệm, kiến thức nền tảng thì bạn dễ dàng kiếm được những công việc đó (bảo trì, nâng cấp hệ thống...).

Đối với người mới, Java là một ngôn ngữ lập trình khá cơ bản, không quá dễ nhưng cũng không quá khó. Java dễ hơn C++. Nó dễ sử dụng và có rất nhiều thư viện để bạn áp dụng, qua đó việc lập trình trở nên đơn giản hơn rất nhiều.

Theo tôi thấy, Java có tính thực dụng cao. Khi học Java, tôi dễ dàng làm đươc một ứng dụng trên desktop. Sau đó, tôi tiếp tục học Java để lập trình cho Android cũng khá nhanh và dễ dàng.

Rõ ràng, Java là sự lựa chọn tốt cho ngôn ngữ lập trình nên học năm 2017.

C# thì sao?

C# cũng gần giống như Java. Nó khá cơ bản, dễ học. Nếu bạn từng biết về hai ngôn ngữ này thì chắc hẳn bạn sẽ thấy chúng có nhiều nét tương đồng về cấu trúc, cú pháp.

C# là ngôn ngữ lập trình được sáng tạo ra bởi Microsoft - một trong những ông trùm trong giới công nghệ. Gần đây, Microsoft đã mua lại Xamarin. Với việc sử dụng Xamarin, bạn có thể viết ứng dụng cho Android, iOS,... chỉ với một ngôn ngữ là C#.

Tôi chưa có cơ hội làm việc nhiều với C#. Không nhầm thì tôi từng làm đồ án với C# - một ứng dụng trên desktop. Nhìn chung, việc viết code khá nhanh và đơn giản.

Nếu như bạn chọn C# là ngôn ngữ lập trình đầu tiên để học thì đây cũng là một lựa chọn tốt.

C++

Nếu so sánh với Java và C# thì rõ ràng C++ khó hơn. Hay nói cách khác thì C++ "cơ bản hơn". Đúng vậy, "cơ bản hơn" nghĩa là khó hơn. Vì bạn sẽ phải viết nhiều hơn, bạn cần có nhiều kĩ năng hơn, thậm chí là phải có kiến thức về khoa học máy tính nữa.

Đặc biệt, có rất nhiều ứng dụng, hệ thống được viết bằng C++ và hiện tại chúng chạy rất ổn định và nhanh. Vì vậy, gần đây xuất hiện một xu hướng là viết code native (C++) cho các ứng dụng Android, IOS.

Tiếp theo, có rất nhiều thư viện về xử lý hình ảnh, âm thanh, video như OpenCV, OpenCL, OpenGL, FFMPEG, BOOST,... Chúng đều là mã nguồn mở và chạy cực kì nhanh.

Như đã nói trong phần giới thiệu, tôi đã từng học C++ và cực kì thích ngôn ngữ lập trình này.

Cuối cùng là JavaScript?

Nếu như bạn muốn lập trình web thì JavaScript là ngôn ngữ lập trình không thể bỏ qua. Tuy nhiên, bây giờ tôi sẽ không nói nhiều về JavaScript. Bạn cứ đọc tiếp rồi sẽ rõ lí do tại sao. Tiếp theo tôi sẽ nói về những ngôn ngữ lập trình nên học năm 2017 dành cho những lập trình viên đã có kinh nghiệm.

Ngôn ngữ lập trình nên học dành cho những lập trình viên có kinh nghiệm

JavaScript everywhere

JavaScript

JavaScript đã có thời gian tưởng chừng như biến mất. Nhưng giờ đây, khi có rất nhiều framework khác nhau được viết dựa trên JavaScript như: NodeJs, AngularJs, ReactJs, React-Native... bạn có thể sử dụng ở front-end, server, desktop, mobile,...

Dĩ nhiên, khi mới làm quen với JavaScript thì bạn sẽ thấy ngôn ngữ lập trình này khá lộn xộn, cú pháp không được chuẩn hoá,... Nhưng khi đã quen rồi thì mọi thứ trở nên rất đơn giản và thậm chí là tiện dụng. Đặc biệt, ECMAScript là một chuẩn hoá của JavaScript - giúp bạn dễ học JavaScript hơn.

Có thể bạn sẽ lựa chọn học một framework nào đó như NodeJs - vì bạn chỉ muốn làm việc với server thôi. Hay bạn sẽ học React-Native - vì bạn chỉ muốn viết ứng dụng cho điện thoại... Bạn hoàn toàn có thể. Tuy nhiên, theo tôi, bạn nên dành thời gian học JavaScript thuần trước. Khi bạn đã nắm vững được những kiến thức cơ bản rồi thì việc học các framework là chuyện "dễ như ăn kẹo".

Bạn có thể tham khảo JavaScript cơ bản tại đây.

Python

Nếu bạn làm việc trong một số ngành khoa học hay xử lý hình ảnh, âm thanh thì Python là một ngôn ngữ lập trình phù hợp. Python có nhiều thư viện phục vụ cho những việc này.

Đặc biệt hơn nữa, nếu bạn có hứng thú tìm hiểu và học về Machine Learning thì chắc chắn không thể bỏ qua Python.

Python có cú pháp khá đơn giản, sử dụng "thụt đầu dòng" để phân tách code. Qua đó, code Python thường được chuẩn hoá, nên rất dễ đọc.

Hãy thử học Python và chắc chắn bạn sẽ thấy thích ngôn ngữ lập trình này.

Elixir

Tôi thì không biết gì về ngôn ngữ lập trình này. Nhưng theo John Sonmez thì đây là một ngôn ngữ lập trình mới, khá thú vị và là một phiên bản dễ đọc, "giàu tính biểu cảm" của Ruby. Đã có rất nhiều người học Elixir.

Tuy nhiên, sẽ là hơi mạo hiểm khi học Elixir vì ngôn ngữ này có thể đi xuống và đặc biệt, không có nhiều cộng đồng phát triển Elixir.

Nhưng nếu bạn đã là một lập trình viên có kinh nghiệm thì những sự mạo hiểm này chắc cũng không đáng là bao.

Rust

Đây lại là một ngôn ngữ lập trình mà tôi không biết, nên không dám chém bừa.

Rust is really good. It's this low level systems language. It's more elegant, more refined than C and C++ and is a good replacement for those languages and it just keeps on picking up steam. I think this is going to be a really popular language. I think it's going to replace some of these legacy programming languages and some systems.

Tức là, Rust là một ngôn ngữ lập trình mức thấp, có thể thay thế cho C/C++. Và chắc chắn Rust sẽ trở nên rất phổ biến (cái này phải cần thời gian để kiểm chứng - vì hiện tại có rất nhiều hệ thống đang chạy bằng C/C++).

Taylor Swift

Swift

Nếu bạn là fan hâm mộ của Taylor Swift thì nên thử học ngôn ngữ lập trình này.

Đùa chút thôi, nếu bạn muốn lập trình cho iOS thì nên học ngôn ngữ lập trình này. Vì Objective-C có vẻ như đã "chết". Nên việc học ngôn ngữ lập trình Swift sẽ rất có ý nghĩa nếu bạn muốn chuyên tâm phát triển ứng dụng cho iOS.

Kết luận

Nếu bạn là một người mới bước chân vào thế giới của lập trình viên thì bạn có thể lựa chọn học:

  • Java
  • C#
  • C++
  • JavaScript

Ngược lại, bạn là một lập trình viên có kinh nghiệm và mong muốn thử thách bản thân với một ngôn ngữ lập trình mới thì có thể thử học:

  • JavaScript
  • Python
  • Elixir
  • Rust
  • Swift

Có nhiều ý kiến khác nhau về việc lựa chọn ngôn ngữ lập trình nên học năm 2017. Riêng tôi thì tôi rất đồng ý với anh John Sonmez. Còn bạn thì nghĩ sao về vấn đề này? Tôi rất mong để biết được suy nghĩ của bạn (mặc dù bây giờ đã là giữa năm 2017 rồi, hehe).

Xin chào và hẹn gặp lại bạn ở bài viết tiếp theo, thân ái!

★ Nếu bạn thấy bài viết này hay thì hãy theo dõi mình trên Facebook để nhận được thông báo khi có bài viết mới nhất nhé:

Ảnh chế vui #7: IP man 4 phiên bản lập trình viên
Cách học lập trình mà không có tutorials hay tài liệu
Chia sẻ:

Bình luận