Tổng hợp các thư viện, xu hướng phát triển của JavaScript trong năm 2018

2666

Trước hết, để cho bạn dễ hình dung thì có thể hiểu rằng software đang thống trị thế giới. Trong đó, web là vua của software, mà JavaScript thì tạo nên web. Đó là xu hướng diễn ra trong những năm gần đây. Cho đến khi 2018 xuất hiện đánh dấu việc React “nuốt trọn” JavaScript.

2018: Năm của React

React vừa chiến thắng cuộc đua về độ phổ biến trong năm 2017. Dù vẫn còn rất nhiều developer đang dùng Angular code bases:

Nhưng với việc React liên tục dành được cảm tình của người dùng, nó nhanh chóng tăng tốc bỏ xa đối thủ.

Vue.js là gì? Có vẻ Hot

Vue.js đã có một năm thành công trong 2017 và được nhiều người quan tâm kì vọng. Và đúng như tôi đã dự đoán, Vue.js cũng chẳng thể nào lung lay được vị trí của React trong năm cũ và có lẽ cũng sẽ không có thay đổi gì trong 2018. Tuy vậy nó vẫn có khả năng chiến thắng Angular trong 2018:

Bạn có thể thấy Vue.js đang ngày càng thu hẹp khoảng cách giữa mình và Angular:

Trong khi đó React vẫn giữ vững ngôi vương với tốc độ phát triển vượt bậc:

Vue.js vẫn đang phát triển nhanh hơn React. Thế thì nó có gì khác so với React vs Angular vào năm 2017?

Đó là trong cuối năm 2016, thế giới JavaScript đã sẵn sàng cho một framework mới. Cùng lúc đó, người sử dụng Angular trở nên vô cùng khổ sở trong khi React user lại rất hài lòng do đó, có rất nhiều người muốn học React và rất ít người muốn học Angular. Vào cuối năm 2017, sự hài lòng của người dùng Angular ở mức 49%.

Câu chuyện trở nên rất khác nhau đối với React vs Vue.js. React đang đánh bại Vue.js trong sự hài lòng của người dùng (93% đến 90%). Nguyên nhân chính khiến nhiều người bỏ React hồi vào đầu năm 2017 là do sự nhầm lẫn đối với giấy phép React. Facebook đã nghe người dùng và chuyển giấy phép.

Ở giai đoạn này, tôi chỉ đơn giản là không thấy bằng chứng thuyết phục rằng thị trường được thúc đẩy chuyển từ React sang bất kỳ đthứ gì khác. Vue.js sẽ có nhiều thời gian hơn để ăn cắp người dùng từ React hơn là họ đang ăn cắp người dùng từ jQuery và Angular.

Có rất nhiều cơ hội cho Vue.js để thu hút được rất nhiều người dùng Angular và jQuery, nhưng có thể họ sẽ vấp phải một bức tường gạch khi họ bắt đầu ăn cắp người dùng từ React để tiếp tục chuỗi tăng trưởng.

Tôi dự đoán sự tăng trưởng của Vue.js sẽ mạnh mẽ  trong một hoặc hai năm nữa, tiếp theo là một trận chiến với React ở vị trí đầu tiên và Vue.js sẽ không chiến thắng trừ khi có một sự thay đổi lớn làm mất cân bằng.

Công việc

React hoàn toàn thổi bay jQuery và mở màng cho một kỉ nguyên mới.

So với năm ngoái:

Điều thực sự thú vị trong những biểu đồ này là các thư viện khác cũng đã phát triển nhiều hơn jQuery. Tổng số công việc mở rộng đề cập đến một khuôn khổ front-end đã tăng hơn 10k so với năm ngoái.

Với mức tăng trưởng việc làm hiện nay, chúng ta cũng nhận thấy mức lương trung bình cũng tăng: $ 110k so với $ 93k vào cuối năm 2016. Lạm phát trong cùng kỳ chỉ ở dưới 2%, chỉ chiếm một tỷ lệ nhỏ trong mức lương đẩy mạnh.

Rõ ràng, nó vẫn là thị trường khá màu mỡ cho ứng cử viên vào năm 2018.

Các Framework nổi bật

Sau khi xem xét số liệu của năm nay, tôi sẵn sàng đề nghị sử dụng React cho hầu hết các trường hợp phát triển ứng dụng chung, bao gồm các ứng dụng dành cho thiết bị di động (PWAs, React Native), các ứng dụng web, hầu hết các ứng dụng văn phòng và ứng dụng sản xuất nội dung phương tiện truyền thông trên máy tính để bàn (xem Electron ).

Các trường hợp ngoại lệ đáng chú ý trong trường hợp một số thứ khác có thể phục vụ bạn tốt hơn bao gồm: Các trang tiếp thị có qui mô lớn, trò chơi 3D, AR / VR. Đối với nội dung 3D, hãy thử Unity, Unreal hoặc PlayCanvas.

Tôi đánh giá rất kĩ tất cả các frameworks năm nay. Và điều này không có nghĩa là chúng không tốt, chỉ không phải là đối thủ của React trong thị trường việc làm. Hãy nhớ rằng, danh sách này là về việc học ROI chứ không phải là công nghệ nào là “tốt nhất”.

Vì sao ai cũng quan tâm tới React?

Duyệt qua các danh sách công việc React, tôi nhận thấy một xu hướng thú vị – rất nhiều trong số đó là cho những thứ mà chúng tôi không nghĩ là công việc web front-end:

React Native (đối với phối cảnh, có nhiều lỗ hổng hơn so Vue.js)

React  cho IoT

React  cho AR / VR (với Oculus Rift dẫn đầu chi phí tuyển dụng)

React  về điều máy tính mơ hồ mà bạn chưa bao giờ nghe

Tính linh hoạt là một trong những điểm mạnh nhất của React. Không giống như nhiều framework khác, việc xài React không bắt buộc phải lo tới data model, hoặc thậm chí browser hoặc DOM. Trên thực tế, tôi đã tìm thấy một số danh sách công việc React mà lại không có đề cập đến JavaScript.

React cũng cung cấp một hệ sinh thái phong phú và sôi động dựa trên các tiêu chuẩn de facto của React – điều mà thế giới JavaScript chưa từng thấy kể từ khi plugin jQuery cai trị web.

Câu hỏi không còn là “Framework nào?”

Câu hỏi đặt ra là “công nghệ nào tốt nhất với React?”

Không có gì đủ soán ngôi React vào năm 2018 (thậm chí có thể là năm 2019). Chúng ta có một framework tuyệt vời để xây dựng các ứng dụng ngay bây giờ, cũng như có một hệ sinh thái tuyệt vời giải quyết xung quanh React.

Bạn nên học những chủ đề nào?

React tuyệt vời là bởi 2 điều:

Deterministic view renders

Tóm tắt view layer khỏi trực tiếp DOM

Với điều đó trong tâm trí, đây là một số chủ đề bạn nên học:

Libraries & Tools

  • React
  • Redux
  • Redux-Saga để quan lí async I/O và cô lập các phản ứng phụ.
  • Next.js — SSR với Node & Express, automatic bundle splitting, styled-jsx
  • Material UI
  • Storybook
  • Cheerio cho unit testing React components
  • Lodash Import chỉ những thứ bạn cần để tránh tăng bundle size.
  • Babel: sử dụng để compile ES6 để chạy những browsers cũ hơn.
  • Webpack:Bundler phổ biến nhất cho việc tìm kiếm JavaScript chuẩn cho các ví dụ về kit/boilerplate config
  • ESLint: Phát hiện syntax errors và style issues từ sớm. Sau code review và TDD, điều tuyệt vời thứ 3 là giảm bớt bug trong code.
  • Ramda
  • Node & Express
  • RxJS

Những công nghệ nổi bật trong 2018

Chúng bao gồm:

  • Progressive Web Apps (PWAs)
  • Blockchain & fintech
  • Medical technology
  • AR/VR
  • 3D printing
  • AI
  • Drones

Máy tính lượng tử cũng sẵn sàng để biến đổi thế giới nhưng sẽ là trong vài năm nữa. Hiện có các máy tính lượng tử đang hoạt động trên mạng, nhưng chúng không thể làm được nhiều. Vẫn còn quá sớm để hầu hết các nhà phát triển thậm chí bắt đầu thử nghiệm hiệu quả. Microsoft gần đây đã công bố ngôn ngữ lập trình Q # cho điện toán lượng tử. Trong khi đó, IBM và Google cũng tiếp tục đầu tư nhiều để sở hữu thị trường điện toán lượng tử phôi thai.

Nếu bạn muốn được chuẩn bị để học máy tính lượng tử, bạn sẽ muốn nghiên cứu về đại số tuyến tính. Ngoài ra còn có các khám phá chức năng của tính toán lượng tử dựa trên phép toán lambda.

Techtalk via Medium

CHIA SẺ