Top 5 ngôn ngữ lập trình đáng học cho năm 2018

Năm cũ vừa hết, năm mới lại qua. Đầu năm mới, mình viết bài này để chia sẻ về những ngôn ngữ lập trình đáng học trong năm 2018 nhé.

Trong số các ngôn ngữ lập trình này, thứ nào cũng có cái hay cái mạnh riêng nên mỗi người sẽ có cái nhìn khác nhau. Do vậy, trong bài này mình sẽ viết khách quan hết mức có thể!

Trong bài viết này, các ngôn ngữ được mình lựa chọn, đánh giá xếp hạng theo sức mạnh của ngôn ngữ, độ phổ biến, nhu cầu tuyển dụng, khả năng tìm việc v..v nha,

JavaScript

Năm 2017 vừa qua là một năm khá huy hoàng cho JavaScript. Chắc hẳn không chỉ mình mà nhiều blogger và các trang web về programming chắc cũng đồng ý JavaScript là một ngôn ngữ mạnh mẽ và đáng học nhất hiện nay.

Cộng đồng JavaScript hiện nay đang rất sôi động. Các library/framework cho JavaScript cả front-end lẫn back-end đều lũ lượt ra đời như nấm sau mưa.

JS bây giờ viết được web front-end, viết được server back-end, viết được app di động, viết được chat bot, viết được code Adruino. Gần đây có LSK blockchain cho phép ta code bằng JavaScript đấy. (Hôm sau đấy mình sẽ viết riêng một bài về những thứ JS có thể làm).

Nói chung là, trừ khi bạn làm hệ thống nhún, làm game hoặc mobile thì không cần JavaScript. Đã làm web là bắt buộc phải học JavaScript để làm front-end, không thể né tránh JavaScript đâu nhé!

Tuy nhiên, có một điều nên lưu ý là bản chất ngôn ngữ JavaScript rất sida và có nhiều chỗ khiến cả những developer lâu năm cũng điên đầu với nó. Có thể nói nó là một ngôn ngữ “easy to learn, hard to master”, dễ học nhưng khó giỏi.

Vì vậy nên nếu mới học lập trình thì đừng học JavaScript vội nhé. Khi đã học qua C,C++, Java,C# , hiểu sơ các khái niệm lập trình cơ bản rồi thì qua cũng chưa muộn. Ngoài ra, muốn nắm vững JavaScript, hãy xem lại series JavaScript sida của mình nhé.

Java

Nếu ví JavaScript là thanh niên trai tráng 6 múi tươi trẻ hót hòn họt gì Java là cụ già gân, già mà vẫn còn khoẻ còn dai.

Java không nổi cũng không hot như JavaScript, cũng không được nhiều lập trình viên khen ngợi hay ưa thích. Nhưng nó vẫn là một trong những ngôn ngữ có số lượng công việc lẫn số lượng lập trình viên đông đảo nhất.

Mặc dù nhiều người vẫn chê Java là ngôn ngữ dài dòng, lôi thôi, nhưng vì nó tường minh, lại có nhiều thư viện hỗ trợ free nên nó vẫn được các công ty lớn ưa dùng.

Đa phần các startup thích xây dựng sản phẩm bằng NodeJS (JavaScript) hoặc Ruby on Rail (Ruby), tuy nhiên các doanh nghiệp vẫn chuộng Java để viết ERP và các ứng dụng enterprise hơn. Chưa kể Java còn làm được app di động nữa.

Nếu mới học lập trình, mình khuyên các bạn nên học Java. Đây là một ngôn ngữ trong sáng, tường minh, dễ học dễ viết. Học xong tà tà ra trường cũng không khó xin việc vì các công ty nước ngoài lẫn trong nước đều tuyển Java rất nhiều.

C#

C# là ngôn ngữ ưa thích của mình. Ngày xửa ngày xưa, nó ăn theo Java, nhưng càng về những phiên bản sau, C# lại càng mạnh mẽ hơn.

C# cũng code được khá nhiều thứ hay ho. Engine Unity hỗ trợ C# nên một số game cũng viết bằng C# luôn. Hoặc dùng Xamarin thì có thể code app di động luôn.

Ngoài ra, bản chất ngôn ngữ cũng có nhiều thứ thú vị như async/await, LINQ, functional programming… nên khi viết code rất thoải mái. C# cũng được các công ty lớn ưu chuộng vì code tường minh, dễ đọc, thư viện hỗ trợ tận răng. Số lượng việc làm C# chỉ ít hơn Java một xíu nên học cũng không lo thất nghiệp.

Còn một điểm khá quan trọng nữa! Ngày xưa C# chỉ chạy được trên Windows, lại phải tốn tiền mua bản quyền MS SQL, Visual Studio nên nhiều người không thích.

Gần đây khi .NET Core ra đời, C# đã có thể chạy trên Mac, Ubuntu, Linux. Code thì dùng VS Community hoặc VS Code, free mà vẫn code bay tóc. Hôm trước mình vừa deploy project C# trên con Ubuntu Digital Ocean 500MB RAM, chạy vô tư phà phà luôn.

Do đó, nếu phải lựa chọn giữa Java và C# thì… chọn cái nào cũng sung sướng như nhau cả, khỏi cần suy nghĩ nhé.

Python

Đây là một ngôn ngữ khá hay ho, cú pháp ngắn gọn tường minh , dễ đọc dễ viết (Không có {} dài dòng như Java, C#) nên các bạn mới làm quen với lập trình rất nên học. Các trường Đại Học nước ngoài cũng dùng ngôn ngữ này làm ngôn ngữ nhập môn lập trình.

Do cú pháp ngắn gọn, có nhiều thư viện hỗ trợ nên python thuường dược dùng để viết các script tự động hoá nho nhỏ, viết nhanh chạy nhanh.

Tuy nhiên, điểm mạnh của Python là nó có nhiều thư viện xử lý số liệu, đồ thị, ma trận rất mạnh mẽ (matplotlib, numpy), thế nên các thư viện machine learning, data mining cũng được viết bằng Python luôn. Điểm hình là tensorflow, thư viện vô cùng bá đạo của Google.

Do vậy, nếu muốn đi theo con đường Machine Learning hay Data Scientist thì các bạn nên học Python từ bây giờ đi nhé.

PHP

Cá nhân mình không thích PHPbản thân ngôn ngữ nó sida nhưng phải thừa nhận nó có khá nhiều ưu điểm.

  • PHP dễ học, chỉ học khoảng 1,2 tuần là viết được web (code như shit hoặc nhiều lỗ hổng bảo mật kệ, chạy được là ok).
  • PHP dễ kiếm server Linux để deploy code.
  • Với các CMS mạnh mẽ như WordPress, Zoomla, PHP vô cùng phù hợp để làm  cáctrang tin tức, web bán hàng. So sách về thời gian hoàn thành + giá cả là đủ cho C# và Java hít khói dài dài.
  • Nhu cầu tuyển dụng cũng cao. Xét về thị trường việc làm thì C# và Java cũng ngang ngang PHP chút. Còn về freelance thì lượng công việc PHP cao hơn C# và Java khá nhiều, phần lớn là các project như viết theme, viết plugin cho các site nhỏ lẻ.

Tuy bản thân mình ghét PHP (Có nhiều điều để ghét, hôm nào sẽ xả sau) nhưng các framework PHP như CodeIgnitor, Symphony cũng khá mạnh và có rất nhiều điều hay ho cho các bạn học hỏi.

Tuy nhiên, lời khuyên chân thành của mình là nếu mới học thì dừng nên học PHP nhé! Nếu không học bài bản, có người chỉ dạy mà làm theo hướng dẫn trên mạng thì sẽ tạo nhiều thói quen xấu rất khó bỏ (Viết code HTML PHP chung 1 file, không phân thách module, …) đấy.

Các ngôn ngữ khác

Trong bài viết này, mình chỉ đề cập tới top 5 ngôn ngữ nên học cho nó ngắn gọn.

Ngoài 5 ngôn ngữ này ra, còn một số ngôn ngữ hiếm gặp hơn như Kotlin (Viết app Android), Swift (App iOS), Ruby (với framework Ruby on Rails), Go (Viết back-end high performance), Scala (Viết back-end và Data Mining).

Các ngôn ngữ này đều có cái hay riêng, công việc tuy không quá nhiều nhưng lương không hề thấp nhe.

Còn C, C++ ấy à? Đây là hai ngôn ngữ mạnh mẽ, được dùng cũng khá nhiều nhưng hầu như chỉ được dùng làm game, làm nhúng, viết driver hoặc OS.

Hai ngôn ngữ này khó học, code cũng cực, đòi hỏi trình cao nên code trâu, tầm senior thì lương 2-3k hoặc hơn là bình thường. Tuy vậy, ở Việt Nam số lượng công ty tuyển ko nhiều bằng các ngôn ngữ trên đâu nhé!

Kết

Bài viết cũng dài rồi, mình kết thúc tại đây thôi! Chốt lại là, nếu bạn vẫn còn đang phân vân không biết nên học ngôn ngữ gì thì cứ học đại JavaScript và 1 trong 4 ngôn ngữ còn lại nhé! Ít nhiều gì cũng không lo thất nghiệp đâu.

Hoặc nếu bạn cảm thấy trong số 5 ngôn ngữ này không phù hợp với mình thì có thể chọn theo phong thủy như bảng dưới đây nha. Đã có nhiều người làm theo và thành công rồi đấy.

Advertisements

30 thoughts on “Top 5 ngôn ngữ lập trình đáng học cho năm 2018”

  1. Bản thân là PHP dev và cũng đồng ý với Hoàng là người mới bắt đầu không nên học PHP. Tốt nhất là nên học bài bản một ngôn ngữ static type nào đó như Java, C# rồi chuyển sang PHP cũng chưa muộn. Nếu không thì… thốn lắm =))

    Liked by 1 person

      1. Mình không giỏi frontend lắm, chỉ biết AngularJS dùng typescript, nó là ngôn ngữ được transpile sang JS. Vì vậy bạn không cần học JS trước cũng được, nhưng nếu biết căn bản JS rồi thì tốt hơn.

        Liked by 1 person

  2. Anh Hoàng cho e hỏi, e muốn học js từ cơ bản đến nâng cao thì nên bắt đầu như thế nào ạ

    Like

  3. “Nếu ví JavaScript là thanh niên trai tráng 6 múi tươi trẻ hót hòn họt gì Java là cụ già gân, già mà vẫn còn khoẻ còn dai.” – e thích cái ví dụ của a :))

    Like

  4. Bài viết quá hay, cách viết thì gần gũi dễ hiểu. Mình rất thích bài này
    P/s: Java vẫn luôn là người bạn đồng hành của mình trên khắp các mặt trận và tương lai cũng vậy

    Liked by 1 person

  5. Bài viết rất hay, e cũng là lập trình viên C# nhưng hệ điều hành e đang dùng là Ubuntu 16.04 và server trên vultr là Debian 9. Ngoài 2 editor a Hoàng có nêu ở bài viết ra e xin giới thiệu 1 bộ sản phẩm IDE cho code đó là Jetbrains, hiện tại e đang dùng Jetbrain Rider để viết .Net Core 2.0 và ASP.Net MVC trên Ubuntu. Mọi người có thể dùng License server trên mạng nếu không đủ chi phí. :D. Nếu design có Abobe thì code có Jetbrains (full combo).
    P/s: Một lần nữa cảm ơn tác giả.

    Like

  6. E thấy bài viết khá hay, e thì đang học về java, nhung em thấy hơi lo do nhu cầu việc làm thì tương đối nhưng đòi hỏi trình độ cao còn về phần Android thì nó dần bị thay thế bởi kotlin rồi, anh có thể chia sẻ thêm không?

    Like

  7. Anh có bài viết nào về những quyển sách hay nên đọc khi học java không? Từ nhập môn đến nâng cao ấy. Em học từ community college transfer lên State University. Mà chua cái là thằng States nó dùng Java trong khi em học ở community lại là C++.

    Like

  8. Viễn đã học và làm với Java, C#, Gosu. Đang phân vân việc học thêm PHP hay Python. Mình đang có tham vọng học công nghệ, ngôn ngữ lập trình để áp dụng và bước song song cùng với con đường kinh doanh(đã bắt đầu kinh doanh rồi). Mình muốn tự xây dựng và phát triển web, quảng cáo,… bằng tvốn kiến thức mình đã học và sẽ học.

    Chúc mọi người ngày mới vui vẻ! 🙂

    Like

  9. Mình từ đó giờ lập trình bên C# , nhưng mạng Kim thì thấy hợp với JS , Python và Objective-C . Liệu có nên học thêm 3 ngôn ngữ đó bạn? 🙂

    Like

  10. các bạn ơi cho mình hỏi làm thế nào để có 1 sidebar widgets bên phải màn hình như trang của admin vậy chỉ mình với cảm ơn các bạn nhiều

    Liked by 1 person

  11. Mấy chú cứ yên tâm mà học PHP, PHP rất mạnh và linh hoạt, mình trở thành tỉ phú cũng nhờ vào PHP cả, chỉ cần giỏi thì sử dụng PHP càng mạnh nữa, các bạn nên nhớ lấy câu “Không có võ công vô địch thiên hạ, chỉ có người dùng võ công để vô địch thiên hạ” :))

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s