
Bài viết được tôi dịch lại từ một bài tại Hackernoon, nhằm củng cố thêm các kiến thức về lập trình, công nghệ, cũng như trau dồi thêm kiến thức tiếng Anh và có bài mới để post. Có đôi chút trong sự diễn đạt, rất mong nhận được sự góp ý từ tất cả các bạn.
Một trong những câu hỏi phổ biến nhất mà tôi lấy được từ những học sinh của tôi là “Làm thế nào để dạy Node.js và không phải PHP trong khoá học của tôi”. Tôi trả lời rằng “hãy tin tưởng ở tôi, tôi là người làm việc trong ngành”, đơn giản như vậy là không đủ. Vì thế, lý do của tôi lúc này là chèn thêm Node.js vào trong khoá học và hỏi tại sao bạn muốn đầu tư kiến thức này cho tương lai giống như một developer, bạn nên bỏ PHP. Mặc dù tôi sử dụng cả 2 ví dụ này, ở trong bài viết này, tôi sẽ chỉ cho bạn thấy một framework để quyết định dùng công cụ nào, ngôn ngữ, bộ khung và các thư viện nên học trong chặng đường tiếp theo của nghề lập trình viên
Với lượng thời gian hạn chế của bạn như một nhà phát triển, bạn có thể ra quyết định là nên đầu tư thời gian vào cái gì để có được lợi ích nhiều nhất trong sự đầu tư này.
Bây giờ, câu hỏi bạn nên tự hỏi mình là : Tôi có thể đầu tư thời gian và cố gắng trong học tập để có được giá trị lớn nhất trong nghề nghiệp tương lai như một nhà phát triển trong các điều kiện của hiểu biết, lương và sự thài lòng.
Điều này không có nghĩa là chọn con đường dễ nhất. Nó có nghĩa là cho phép bạn chọn những công cụ thích hợp và cạnh tranh trong nhiều năm tới cho đến khi những kỹ năng của bạn phát triển như một nhà phát triển lâu năm.
Ở trong phần kết luận của bài viết, bạn sẽ tìm thấy tất cả những công nghệ tôi giới thiệu trong năm 2018 nếu bạn muốn trở thành một nhà phát triển web hãy sử dụng những phân tích dưới đây. Bạn biết đấy, bạn có thể bỏ qua cho đến hết nếu bạn nóng vội. Nếu không thì, hãy tích cực trao đổi, kết hợp, làm bằng tình yêu và chúng ta hãy đi như một cuộc phiêu lưu
Chúng ta sẽ phân tích 2 loại trong bài này : Phân tích triển vọng nghề nghiệp và phân tích kỹ thuật. Nào ! Chúng ta cùng đi.
Contents
Node.js vs PHP – Phân tích triển vọng nghề nghiệp
Chúng ta sẽ sử dụng Stackoverflow developer survey và LinkedIn trong nghiên cứu này. Chúng ta cũng sẽ chỉ tập trung vào những công nghệ liên quan tới phát triển web.
Sự nổi tiếng
Trong 5 năm liên tiếp, Javascript vẫn đang là ngôn ngữ được sử dụng phổ biến nhất. Lần đầu tiên Python vượt qua PHP trong 5 năm. Vậy Node.js đang ở đâu ? Node.js là một công nghệ javascript thời gian thực. Trong kỹ thuật không nói tới : Node.js là một cách sử dụng Javascript như PHP phía máy chủ. Bây giờ, hãy nghĩ Node.js như là Javascript.
Như bạn có thể nhìn thấy, Node.js và Javascript có thứ hạng cao nhất trong khi PHP lại phổ biến ít hơn.
Trong 5 năm ở Stackoverflow đã thu thập dữ liệu trong Developer Survey, họ từng nhìn thấy ngôn ngữ như là Javascript và Node.js trở lên phổ biến, trong khi đó lượng người sử dụng ngôn ngữ như PHP lại dần thu hẹp lại.
React là một trong số các công nghệ được các nhà phát triển yêu thích nhất, tuy nhiên, Node.js lại được quan tâm nhất và yêu thích nhất.
Mức lương và cơ hội
Developers sử dụng các ngôn ngữ ở phía dưới dòng màu xanh trong biểu đồ dưới đây, như là Go, Rust và Clojure đang được trả nhiều hơn với bao nhiêu năm kinh nghiệm của họ. Developers sử dụng các ngôn ngữ phía dưới dòng màu nhanh như PHP, tuy nhiên, lại được trả ít hơn trong khi có nhiều năm kinh nghiệp. Kích cỡ của các hình tròn trong biểu đồ, đại diện cho có bao nhiêu dev đang sử dụng ngôn ngữ đó so với các phần còn lại. PHP dường như cũng đáng để các nhà phát triển khen ngợi ít nhiều và ít hơn so với số năm kinh nghiệm mà họ có.
Trong LinkedIn Jobs, bạn có thể thấy công việc được đăng trên toàn thế giới cho các nhà phát triển Node.js vượt xa PHP gần 10000. Mặc dù ở đây, thực tế Node.js là công nghệ trẻ hơn nhiều so với PHP, và thực tế là PHP được sử dụng nhiều nhất với WordPress, chiếm tới 30% các website trên internet.
Cuối cùng, bạn có thể thấy mức lương trung bình cho các ngôn ngữ theo khu vực (tôi không đưa vào tab Worldwide ở phía dưới vì PHP thậm chí không có ở trong đó).
Lần nữa, chúng ta không gây hấn với PHP tại đây. Chúng ta chỉ nhìn vào những con số để quyết định lựa chọn học cái gì. Nó rõ ràng là xếp hạng một cách nhất quán dưới các công nghệ khác như Javascript và Node.js.
Tính tới thời điểm hiện tại. Stackoverflow đã đưa ra kết quả của khảo sát năm 2018. Sự suy giảm của PHP đang gia tăng.
Node.js vs PHP – Phân tích công nghệ
Chúng ta cùng phân tích những ưu, nhược điểm của 2 công nghệ này nhé !
Node.js
- Ưu điểm :
- Đặc biệt phù hợp cho các ứng dụng đòi hỏi yêu cầu real time (thời gian thực) giữa người dùng và server. Các công cụ như socket.io làm cho việc xây dựng ứng dụng chat trở nên dễ dàng.
- Làm việc dễ dàng với JSON và các yêu cầu AJAX
- Học Javascript, học luôn Node.js. Không cần phải học một ngôn ngữ khác như PHP, điều đó có nghĩa là có thể dành tất cả thời gian và nỗ lực cho Javascript.
- Có nhiều framework phía người dùng như React, Vue, Angular được viết bằng Javascript. Kết hợp với Node.js. Cả phía người dùng và phía máy chủ đều sử dụng cùng một ngôn ngữ. Rất đồng bộ phải không nào.
- Sử lý yêu cầu phía người dùng nhanh hơn
- Có thư viện và gói phần mềm hỗ trợ như NPM, YARN.
- Hỗ trợ nhiều APIs mới.
- Hiệu suất cao, đạt được của V8 là thông dịch viên Javascript.
- Nhược điểm :
- Cần hệ thống xử lý đa luồng để tối ưu và tăng tốc độ.
- NPM đã nói ở trên có rất nhiều thư viện, khiến bạn không biết đâu là lựa chọn tốt nhất.
PHP
Ưu điểm :
- Cộng đồng mạnh, hỗ trợ tốt vì tuổi đời lâu hơn.
- Có các bộ mã nguồn mạnh mẽ để xây dựng nhanh chóng, dễ dàng các trang web, như WordPress, Joomla, Drupal…
- PHP sinh ra thiết kế đặc biệt cho Web. Cung cấp các giải phát máy chủ tuyệt vời.
- PHP7 và HHVM (hỗ trợ bởi facebook) làm tăng hiệu năng PHP.
Nhược điểm :
- PHP chỉ sử dụng ở phía Backend. Điều này có nghĩa bạn sẽ cần phải học Javascript nếu bạn muốn làm việc phía người dùng, hoặc trở thành 1 lập trình viên full stack.
- Điều hướng trang chậm hơn so vs Node.js, Node.js phù hợp hơn với hướng phát triển web bây giờ.
Nhìn chung PHP hay Node.js đều giúp tạo ra các website mạnh mẽ, tuyệt vời, mỗi thứ có ưu và nhược điểm riêng. Nhưng các đánh giá dần dần cho thấy rằng, Javascript nói riêng và Node.js nói chung đang phát triển mạnh mẽ hơn, yêu cầu cao hơn, lương hấp dẫn hơn.
source : aduka.asia