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

1632

Trong phần 1, ta để điểm sơ qua một vài xu hướng Javascript hàng đầu năm 2018, trong bài viết này, ta sẽ đến với những xu hướng còn lại.

Prettier

Như tên gọi của nó, Prettier là một định dạng mà làm cho code của bạn dễ đọc hơn.

foo(reallyLongArg(), omgSoManyParameters(), IShouldRefactorThis(), isThereSeriouslyAnotherOne());

trở thành…

foo(
 reallyLongArg(),
 omgSoManyParameters(),
 IShouldRefactorThis(),
 isThereSeriouslyAnotherOne()
);

Với hơn 18.000 đánh giá star trên Github, các nhà phát triển đang dành nhiều quan tấm đến dự án đơn giản và có giá trị này.

Nó cũng được sử dụng trên nhiều dự án khác mà có thể bạn đã yêu thích, như Webpack, React, Next.js, Babel,…

Một lần nữa, bạn chỉ cần trở thành một Go develper và thậm chí không cần phải cài đặt nó.

Jest and Enzyme

Khi nói đến testing JavaScript, Jest đã chắc chắn là sự lựa chọn dẫn đầu, với Enzyme như một sự bổ sung tuyệt vời khi xây dựng các React app.

Như bạn có thể thấy, Jest hiện đang chiếm ưu thế hơn Jasmine trong việc tải về.

Tính năng Snapshots của Jest đã được tung ra vào năm 2017, làm cho nó để với thử nghiệm. Hãy xem cuộc nói chuyện này từ React Conf 2017 để tìm hiểu về nó.

Enzyme, do team engineering của Airbnb tạo ra, là một thư viện JavaScript để testing React component. Nó đã bùng nổ tới 12.000 đánh giá star trên Github kể từ năm 2016.

Hình ảnh Snapshots của Jest và API cực kỳ đơn giản của Enzyme để testing React component tạo ra một kết hợp thử nghiệm tuyệt vời sẽ tiếp tục phát triển lên trong năm 2018.

Webpack

Webpack đã trở thành gói asset bundler phổ biến nhất. Webpack cũng đã có một năm KHÔNG TƯỞNG.

Thời gian này năm ngoái, Webpack hầu như không có tài liệu và hầu hết các developer không biết làm thế nào để bắt đầu với nó.

Sau đó, vào đầu năm, tôi đã viết về việc Webpack đã tăng 15.000 đô trong 3 tháng (và chúng tôi hạnh phúc như thế nào khi là một trong những nhà tài trợ sớm nhất) để hỗ trợ dự án. Hiện nay họ có hàng trăm ngàn đô la tài trợ.

Webpack không chỉ mở đường cho việc tương lai của các dự án mã nguồn mở có thể phát triển như thế nào, nhưng sự phát triển của dự án đã duy trì động lực to lớn trong suốt cả năm.

Và Sean Larkin may mắn dẫn đầu phong trào Webpack, thực sự khó có thể đưa ra những gì Webpack có khả năng đạt được tiếp theo.

Bởi vì nó hỗ trợ tốt dự án này (và họ quan tâm đến cộng đồng của mình), làm xu hướng nó trở thành dễ đoán nhất năm 2018.

Parcel

Nhưng với mọi xu hướng, một lực lượng các developer không hài lòng ngày càng tăng.

Parcel, một nhà cung cấp dịch vụ vận chuyển, đang nhanh chóng đạt được 12.000 đánh giá star trên Github vào năm 2017 và đi ngay sau Webpack.

Parcel và các gói khác đã trở nên quá cồng kềnh, trong khi Parcel hoạt động nhanh gấp hai lần gói thành Webpack (nhanh hơn 10 lần khi sử dụng bộ nhớ cache).

Nó cũng đi sau khi cài đặt cấu hình hơi khó hiểu của Webpack, như với Parcel, không cần cấu hình.

“Chỉ cần điểm nó ở vị trí vào của ứng dụng của bạn, và nó làm điều đúng.”

Mặc dù đơn giản hoá cấu hình và cải thiện tốc độ là cả hai cải tiến lớn, tôi sẽ không ngạc nhiên nếu Webpack không sao chép những cải tiến này vào nửa đầu năm 2018.

Tương tự như Vue vs React, nó sẽ luôn đổi mới nhanh hơn, nhưng đến với sẽ được truyền cảm hứng bởi sự đổi mới và cải thiện dự án.

Bạn có thể theo dõi toàn bộ cuộc tranh luận ở đây.

Gatsby

Gatsby là một static site generator cho React được xây dựng bởi Kyle Mathews.

Kể từ khi Kyle dành toàn bộ thời gian cho Gatsby, thực sự đáng để đón nhận.

Không có bằng chứng nào tốt hơn về điều đó so với thực tế là trang web React được xây dựng bằng Gatsby.

Gatsby là về hiệu suất và cung cấp trải nghiệm web nhanh nhất có thể trong React.

Sơ đồ này từ trang web này cung cấp cách ý tưởng hoạt động:

Gatsby cũng sử dụng công nghệ web tiên tiến tìm nạp trước tài nguyên cho các trang khác, do đó, trình duyệt với tốc độ rất nhanh.
Mặc dù Gatsby không thống trị ngành công nghiệp bất kỳ phương tiện nào, đó là một giải pháp tuyệt vời để xây dựng các trang web tĩnh sẽ tiếp tục trở nên phổ biến.
Để biết thêm về Gatsby, hãy đọc bài đăng này.
Chúng tôi cũng sẵn sàng tài trợ để phát triển cho Gatsby trong năm nay.

Babel

Babel không cần giới thiệu vào thời điểm này và duy trì là một xu hướng thiết yếu.

Trong tất cả, đây là năm tốt cho Babel, chủ yếu tập trung vào việc xây dựng Babel 7 (hy vọng tung ra đầu năm 2018). Quan trọng nhất, họ đã viết một bài hát 🙂

Mối quan tâm duy nhất của Babel hiện nay (ngoài người bảo trợ phi thường của nó, một khoảng thời gian không rõ ràng / mơ hồ từ dự án), giống như Reason trở thành xu hướng chủ đạo.

Nhưng bây giờ, Babel sẽ tiếp tục mạnh mẽ trong suốt 2018.

Chúng tôi cũng rất vui khi tài trợ cho Babel trong năm.

Flow & Typescript

TypescriptFlow là cả hai lựa chọn tuyệt vời dành cho các nhà phát triển JavaScript để sử dụng để cải thiện chất lượng code của mình.

Chúng ta có thể sẽ không thấy người kia tàn phá như thế nào vào năm 2018, vì cả hai đã sống sót cùng nhau, phục vụ các mục đích khác nhau.

Flow được xây dựng bởi Facebook là sự lựa chọn ưa thích của các nhà phát triển React vì nó dễ dàng tích hợp với Babel,  thường được sử dụng trong các dự án React.

Typescript, được xây dựng bởi Microsoft, phổ biến trong số các nhà phát triển Angular 2+ vì đó là ngôn ngữ chính.

Năm 2018 có thể sẽ trở nên tồi tệ nếu xét về tiến bộ từ hai lựa chọn này, và câu hỏi thực sự trong những năm tới sẽ trở thành một cái gì đó như Reason có thể thay thế cho cả hai.

Immutable.js

Tôi thích cách một redditor mô tả Immutable.js:

“immutableJS đảm bảo rằng các nhà phát triển trên các nhóm lớn không làm điều gì đó ngu ngốc.”

Đơn giản: Immutable.js, một dự án khác của Facebook, đảm bảo rằng nhà nước không bị biến đổi bởi các đối tượng không thay đổi (không thay đổi).

Như một redditor đã chỉ ra, điều này có thể được vô cùng hữu ích trong một team lớn các developer có thể gây thất bại.

Dữ liệu được đóng gói trong một đối tượng Immutable.JS không bao giờ bị biến đổi. Một bản sao mới luôn được trả lại. Điều này ngược lại với JavaScript, trong đó một số thao tác không làm biến đổi dữ liệu của bạn (ví dụ: một số phương pháp Array, bao gồm bản đồ, bộ lọc, concat, forEach,…), nhưng một số khác (pop, push, splice, array).

Có một số hạn chế lớn để sử dụng Immutable.JS, nhưng những hạn chế có thể không quan trọng tùy thuộc vào nhu cầu của bạn. Bạn có thể đọc thêm về chúng tại đây.

Với 20.000 star trên Github hiện tại, Immutable.js đã tăng vào năm 2017 và có dự kiến sẽ tiếp tục tăng trong năm 2018 khi các developer bắt đầu dành thời gian để hiểu khái niệm và cân bằng.

Popmotion

Popmotion là một thư viện chuyển động JavaScript nhanh chóng đạt được các đánh giá trên Github.

Hãy suy nghĩ về cách Flash đáp ứng jQuery.

Bây giờ, tôi nhận ra bằng cách sử dụng hai từ trong cùng một câu không giúp nó trở nên phổ biến.

Nhưng khi bạn càng lún sâu vào dự án này, bạn càng khám phá ra một nhóm những người có sự nhún nhường với cả jQuery và Flash và đơn giản là cần thiết để làm tốt hơn.

Và Popmotion thực sự là một trải nghiệm tốt với rất nhiều đổi mới về web animation. Đây chắc chắn là một năm đáng chờ đợi.

Kiểm tra trang web của họ để bắt đầu bị trêu chọc.

React Native & Electron

React Native cho phép bạn xây dựng ứng dụng React cho thiết bị di động, trong khi Electron cho phép bạn tạo các ứng dụng JavaScript cho máy tính để bàn.

Cả hai đều trở thành các framework thành công trong năm 2017 và cả hai đều là những giải pháp tuyệt vời cho JavaScript đến một ứng dụng gốc.

Một số ứng dụng đáng chú ý được xây dựng bao gồm: Slack, Atom, Github Desktop và Discord.

Và các ứng dụng phổ biến được xây dựng với React Native bao gồm: Facebook, Instagram, Airbnb và UberEATS.

Bạn cũng có thể tạo các ứng dụng React Native cho Windows.

Bất kể, đây là thời điểm tốt để trở thành nhà phát triển JavaScript vì bạn có thể tạo ứng dụng cho cả desktop và mobile dễ dàng hơn trong quá khứ.

Bonus: Web Assembly

Với tất cả 4 trình duyệt hiện hỗ trợ Web Assembly, chúng ta gần như ở đó. Vẫn còn quá sớm để gọi nó là xu hướng cho năm 2018, vì vậy chúng tôi sẽ cập nhật bạn trong 12 tháng.

 

TopDev via Hackernoon

Báo cáo bài viết vi phạm bản quyền>>