Các xu hướng JavaScript đáng để theo dõi ( Phần 1)

Nếu bạn đang chôn chân trong các dự án trong suốt năm 2017, đây thật sự là bài viết dành cho bạn.

Rất nhiều thứ đã xảy ra vào năm 2017 khiến cho 2018 cho rất nhiều đổi mới.

Bạn cũng có thể sử dụng bài viết này như một hướng dẫn để lên kế hoạch cho sự phát triển vào năm 2018 để giúp bạn có được những dự án sáng tạo hơn.

React vs. Vue.js

Chúng ta hãy đón nhận những điều tốt đẹp: Không ít người tin rằng Vue sẽ trở thành đối thủ lớn của React, nhưng không thể bỏ qua Vue trong năm nay, thậm chí bỏ qua Angular vì sự phát triển của nhà phát triển.

Khi nhìn về phía trước đến năm 2018, chúng ta sẽ bắt tay vào cuộc chiến kéo dài 2 năm đầy những sự phát triển cho Vue.

React vẫn có sự hỗ trợ về tài chính từ một trong những công ty giàu nhất trên thế giới, chưa kể đến một số nhà đầu tư vô cùng tài năng.

Nhưng Vue đang làm tất cả những điều khiến cho các nhà phát triển thực sự thoải mái:

Vue nhẹ, dễ học, có các công cụ đặc biệt, quản lý nhà nước tuyệt vời và định tuyến tích hợp sẵn,…

Cộng đồng của Vue chắc chắn không lớn như của React, nhưng các cộng đồng phát triển dựa trên việc nhóm có những người tuyệt vời và lắng nghe cộng đồng của họ (cả hai đều có sẵn).

Khi nói đến làm hài lòng các nhà phát triển, chúng ta đừng quên việc Facebook đã thất bại với BSD + Patents license snafu đối với thực sự tốt với các nhà phát triển.

Chúng tôi đã thực sự đạt đến vị trí mà bạn cũng có thể bắt đầu mọi dự án với Vue để đơn giản hóa cuộc sống, và đó là một thành tựu ấn tượng của nhóm.

Dưới đây là một bài viết về React vs. Vue vs Angular trong năm nay.

Nếu bạn là một nhà phát triển Angular, người chỉ từ chối học React, Vue.js sẽ nhanh chóng trở thành lựa chọn tốt hơn cho con đường sự nghiệp của bạn khi các cơ hội góc cạnh chết đi (vì Vue có một số cú pháp tương tự như Angular 1).

Mỗi nhà phát triển JS vẫn nên xem xét việc học Vue.js, vì nó được tạo cơ hội đủ lớn đến nơi mà chúng tôi bắt đầu thấy các yêu cầu được thuê của các nhà phát triển của Vue.js, có nghĩa là bạn có thể tạo ra một số giá trị cho chính mình ít nhất trong ngắn hạn.

Next.js

Và rồi có Next.js, ngôn ngữ chúng tôi sẽ gọi là ‘insurance for React.”

Ngay cả khi Facebook không bao giờ vượt trội trong cuộc đua hay sự đổi mới cùng một thời gian như Vue, React cùng với Next.js giúp bạn gần gũi hơn với Vue về công cụ, chia tách code, định tuyến và quản lí, cho phép bạn giữ lại và hỗ trợ hệ sinh thái React.

Tiếp theo cũng hữu ích cho các ứng dụng được hiển thị ở phía máy chủ được xây dựng trong React, với xu hướng ngày càng tăng.

Hơn nữa, hãy thêm vào Now.js (tạo bởi cùng một nhóm) và bạn có một cách nhanh chóng để triển khai các ứng dụng React.

Khi cuộc chiến giữa Vue vs React vẫn cứ tiếp tục, chúng ta mong đợi rằng sẽ ngày càng có nhiều sự chấp thuận của Next  với React để làm cho người dùng React cảm thấy thoải mái hơn.

Angular

Bất chấp những khó khăn ngày càng nhiều của Angular, nó vẫn sẽ tiếp tục là một framework được sử dụng rộng rãi vào năm 2018.

Nhiều công ty đã chấp nhận Angular 1.0 và khi họ chuyển sang một thứ gì đó tốt hơn vào năm 2018,19, họ sẽ xem React hoặc Vue.js là những lựa chọn thay thế tốt hơn cho Angular 2.

Những người ủng hộ còn lại của Angular đã đưa ra quan điểm rằng Angular sẽ là JS framework được lựa chọn của nhiều doanh nghiệp, nhưng điều này vẫn chưa được chứng minh và có thể sẽ không được nhắc đến vào năm 2018.

Reason

Reason luôn luôn có giá trị chú ý đến mọi thứ mà Facebook đang sử dụng trong sản xuất.

Facebook hiện đang sử dụng Reason (OCaml đã được thiết lập sẵn) cho phiên bản web của Facebook Messenger, trong số các dự án khác (WhatsApp, Instagram, Quảng cáo, v.v.).

Năm 2017, họ cũng phát hành reason-react, thứ đã tạo ràng buộc với React để bạn thực sự có thể viết Reason code để biên dịch thành ReactJS.

Vì vậy hãy tưởng tượng không cần phải cài đặt Babel (+ nhiều plugin), Flow, v.v … và chỉ cần sử dụng sức mạnh của OCaml + Reason (hiện hỗ trợ kết hợp React). Đó là một xu hướng lớn đang chuẩn bị bùng nổ trong năm tới.

Reason đã thu hút được sự chú ý của năm 2017 trong lĩnh vực JS so với hầu hết các ngôn ngữ lập trình khác, do đó chắc chắn là một để tiếp tục xem với năm 2018.

GraphQL

GraphQL là một ngôn ngữ truy vấn cho các API (think: a modern take on REST).

GraphQL đã rất thịnh hành vào năm 2017, vì các công ty lớn như Yelp, Spotify, Github, Walmart, NYTimes, v.v … đều dựa trên API GraphQL.

Một số các API này thậm chí còn độc quyền GraphQL, và không có tùy chọn REST nào có sẵn. Nói một cách đơn giản: các công ty sáng tạo đang đặt cược vào GraphQL.

Các API này chắc chắn sẽ không còn tồn tại, nhưng một lần nữa, nhìn vào xu hướng khởi động của các công ty mới, GraphQL là một lựa chọn phổ biến.

Mặt khác, các giải pháp thay thế như Falcor hầu như chưa bao giờ được thảo luận nữa.

Đây chắc chắn là thời gian để bắt đầu học GraphQL nếu bạn muốn có được việc làm tại các công ty sáng tạo.

Redux, Relay Modern và Apollo

Redux là dự án của Dan Abramov / Andrew Clark mà nổi tiếng đã trở thành giải pháp cho việc quản lí của quản lý nhà nước và thu thập dữ liệu trong React.

Nhưng GraphQL đã thực sự gây rắc rối cho Redux, đặc biệt là khi tìm kiếm dữ liệu.

Bây giờ chúng ta đã có Relay Modern (tạo ra bởi Facebook) và Apollo, client framework GraphQL cho phép bạn lấy và truyền dữ liệu GraphVN vào ứng dụng React của bạn hiệu quả hơn Redux.

Giống như một nhà phát triển chỉ ra về Relay / Apollo / Redux:

“Những framework và lợi ích của chúng không phải là loại trừ lẫn nhau. Trong thực tế, sử dụng cùng nhau có thể cung cấp một sự tách biệt tốt đẹp của mối quan tâm đó là rất quan trọng trong phát triển web.”

Điều này có nghĩa là bạn vẫn có thể sử dụng Redux song song với Relay, sử dụng Redux cho trạng thái cục bộ và một số trạng thái phi máy chủ phức tạp và sau đó dùng Relay để nạp lại.

Nhưng cộng đồng đang lo lắng cho một cái gì đó để đơn giản hóa điều này (và cho đến nay các phản ứng duy nhất là Vuex / Vue.js / Apollo hoặc Cashay).

Storybook

Storybook là một môi trường để tìm, phát triển và thử nghiệm các thành phần UI.

Nó bắt nguồn từ thực tế đã chết vào đầu năm, để phổ biến rộng rãi vào giữa năm 2017 nhờ vào nỗ lực lớn từ cộng đồng. Đây là một câu chuyện đầy cảm hứng về cách làm việc với mã nguồn mở đáng để đọc.

Nó vô cùng hữu ích (và thậm chí thú vị khi sử dụng), cho phép bạn xây dựng và thử nghiệm thành phần giao diện người dùng một cách độc lập. Nó giống như một UI style guide mà cung cấp giá trị thực cho nhà phát triển.

Bạn đã có thể gặp một dự án mã nguồn mở bằng cách sử dụng Storybook đã có, nhưng để xem nó trong hoạt động không, hãy kiểm tra Storybook bằng date picker của Airbnb.

Nếu bạn muốn nổi lên như một nhà phát triển vào năm 2018, hãy thể hiện bằng Storybook với dự án gần đây nhất của bạn.

Bonus: Kiểm tra react-bluekit, một Storybook thay cho các team kĩ sư tại Netflix đang sử dụng cho các components library.

Còn tiếp…

Techtalk via Hackernoon

Tham khảo các vị trí tuyển dụng Javascript hấp dẫn tại đây