Javascript Night: Hà Nội thất thủ với kiến thức “nóng phỏng tay” về AngularJS, ReactJS, VueJS!

3902

Tối ngày 03/03 vừa qua, sự kiện Topdev Techtalk #56 Javascript Night: Cuộc chiến vương quyền Frontend – ReactJS, AngularJS, VueJS đón nhận sự hưởng ứng nhiệt liệt của hơn 100 developer tại Hà Nội.

Chuyện gì đã khiến Hà Nội “thất thủ” như vậy?

ReactJS, AngularJS, VueJS – 3 cái tên chưa bao giờ hết hot trong cộng đồng IT Việt Nam cũng như trên thế thới với những dự án đình đám trong năm 2016 vừa qua điển hình như việc Evan cùng Alibaba cho ra đời Weex – A framework for building Mobile cross-platform UI. Bên cạnh đó là hàng loạt công nghệ mới được ra đời trong năm 2017 hứa hẹn sẽ mang đến một năm công nghệ đầy bùng nổ.

Chính vì lý do đó, Topdev quyết định mở ra cuộc đại chiến ReactJS, AngularJS, VueJS để các anh hào developer hội tụ 2 miền Bắc – Nam, cùng tranh luận đâu là framework/ thư viện tốt nhất. Mở màn sự kiện là topic 1 “So sánh AngularJS và ReactJS trong giải pháp fullstack cho việc xây dựng 1 startup” do anh Phạm Thanh Tú – CTO của AgileTech trình bày.

Theo anh Tú, 3 vấn đề được quan tâm chính là:

  • Tại sao Angular lại chậm thế và React lại nhanh hơn khi render
  • Khi thuê 1 người làm cắt html/css nó viết inline thì khi thay đổi xử lý ra sao vì sẽ có sai lệch
  • Hai component cùng logic nhưng khác template xử lý ra sao?

BTC Topdev Techtalk đã “phục kích” anh Tú thành công và đây là câu trả lời “nóng phỏng tay” cho 3 vấn đề trên!

  • Angularjs sử dụng template, giả sử bạn đang bind 1 list data, khi nó thay đổi bạn phải lặp lại toàn bộ và đương nhiên chậm, trái lại, react dùng virtual dom, render list đó nhưng dùng key là id để track lại, nên chỉ render lại item nào thay đổi.
  • Khi làm giao diện template, bạn bắt buộc phải component hoá thành bộ ui kit, cái này sẽ nhanh về sau, nếu cho rằng có cách để đồng bộ thì bạn đã sai từ cách làm việc rồi. Phải chia ra các component và scss chẳng hạn riêng, đặt các tham số về color, size, font, là 3 cái cơ bản. Có bạn bảo đặt cho nó cái key để tự động extract ra inline css rồi map merge vào cái cũ, tưởng rất hay nhưng đây là việc làm ko hề hay tẹo nào, mình sẽ lấy ví dụ hay gặp đó là conflict css khi dùng git để merge, nếu bạn lấy từ server thì mất thay đổi ở client, nếu bạn lấy cả 2 thì bị conflict ví dụ hay gặp đó là hack css cho trình duyệt IE. Hơn nữa khi thay đổi lại layout bạn lại phải tìm và mark lại, theo mình đó là làm điều đơn giản bằng điều đơn giản khác, mất chi phí so khớp giữa template và component, trừ khi bạn dùng nguyên cục template như smarty, còn ứng dụng growing nhất định phải chia. Vì vậy nên tìm designer có kỹ năng về css để họ tham gia trực tiếp sửa css hay hơn, tất cả nên tư duy function hoá mới tái sử dụng nhiều nhất.
  • 2 component cùng logic nhưng khác template ở angularjs sẽ dùng chung controller và 2 template khác nhau, còn react cách tốt nhất là dùng 2 component khác nhau còn logic nằm ở redux, vì thế mới dễ tái sử dụng do component mô tả chỉ có prop mà thôi, connect nó qua redux.

Nhìn chung, Angular là MVC architecture đầy đủ nhưng chậm hơn React. React thì có hệ sinh thái “ngầu hơn”, nhanh, có thể xử lý binding dữ liệu lớn nhưng các lập trình viên cần phải xác định được controller và model của riêng mình.

TopDev Techtalk: Javascript Night –  ReactJS, AngularJS, VueJS – Cuộc chiến vương quyền Front-end

*Hà Nội: 18h00 – 21h00 ngày 03/03/2017
*Hồ Chí Minh: 18h00 – 21h00 ngày 10/03/2017

9

“Tiếp chiêu” từ anh Tú, diễn giả Thân Văn Nghĩa đến từ Techmaster Việt Nam mang đến 1 chủ đề với topic khá “kêu”: Vuejs – Lựa chọn mới cho project Frontend của bạn!

Sau khi điểm qua tình hình “nóng bỏng” của VueJS trong 2 năm trở lại đây, anh Nghĩa tiếp tục phân tích sâu hơn 2 core concepts của VueJS, chính là: Declarative & Reactive Rendering và Component Oriented Architecture.

Theo anh Nghĩa, các vấn đề thường gặp khi phát triển các app lớn chính là: chia sẻ các state giữa các components và không thể dự tính được bao nhiêu hàm để xử lý dẫn đến khó kiểm soát trong khi code.

Xem ra trận chiến AngularJS, ReactJS, VueJS vẫn còn để lại nhiều dư âm đối với các frontend dev. Liệu các chiến binh Sài Gòn có nóng lòng tới đêm Javascript Night vào ngày 10/03 chưa?

Tham gia ngay để biết thêm về cuộc chiến tại HCM ngày 10/03

Những slot chỗ ngồi cuối cùng đang chờ bạn!