Giới thiệu về ReactJS

Bài viết này không viết lại khái niệm cơ bản vì tốn giấy mực!
Bài viết thuộc series Làm webapp hay ho.

ReactJS là thư viện làm web tầng view

Ngay trên trang của facebook định nghĩa ReactJS"A JavaScript library for building user interfaces".
Tại sao ReactJS không được gọi là framework mà chỉ là library? Nếu bạn đã tiếp xúc với các framework khác như Wordpress, AngularJS, Drupal... thì bạn sẽ thấy các framework này hoạt động bên phía server bao gồm nhận request từ client, chạy code logic, truy vấn dữ liệu và trả về response theo kiểu html. Tấc cả hành vi trên được thực hiện trên phía server. Còn riêng ReactJS thì không giống thế.

Hãy tưởng tượng sản phẩm viết bằng ReactJS cũng giống như các App mobile trên Google store. Store chỉ là nơi chứa bộ cài. Khi ta muốn sử dụng ứng dụng thì ta download bộ cài về cài đặt và sử dụng, sau khi đã cài đặt xong thì tất cả các tài nguyên nằm trên local điện thoại, ví dụ như app báo thức chẳng hạn, sau khi tải thì mọi xử lý logic hay hiển thị ra cái gì, hẹn giờ ra sao đều xử lý ở phía client hết. Ngoài ra đối với những app online như app chat thì app sử dụng các đoạn call api lên server riêng của app để đẩy dữ liệu lên hoặc lấy dữ liệu xuống.

Tương tự với ứng dụng viết bằng ReactJS, ứng dụng ReactJS khi build ra sẽ có các file tài nguyên như image, html... và đặt biệt là file bundle js. Khi người dùng truy cập vào web app thì hầu như các file trên được trình duyệt web load về local. Việc xử lý trên webapp như thế nào, render ra sao đều tiến hành ở phía client. Ngoài ra, cũng tương tự như app online, webapp cần dữ liệu online, truy vấn database chẳng hạn thì WebApp cũng sẽ call api...

ReactJS và nguồn gốc xuất xứ

ReactJS được phát triển bởi Facebook và được sử dụng rộng rãi trong các dự án lớn nhỏ trong đó có cả Facebook, Instagram, ngoài ra ReactJS còn là thư viện mã nguồn mở đứng sau là một cộng đồng hổ báo cáo chồn.

ReactJS được tạo ra bởi Jordan Walke, một kỹ sư làm việc tại facebook. Đến 2011 thì thư viện này được triển khai lên facebook, sau đó đến năm 2012 thì được instagram.com triển khai cho sản phẩm của mình. Đến 5/2013 thì ReactJS trở thành dự án mã nguồn mở. Từ đấy cuộc đời ReactJS nở hoa còn cuộc sống của dân php thì bế tắc :p!

Lập trình viên ReactJS làm việc với Javascript

Bạn đừng nhầm lẫn Javascript với Java nhé. Mặc dù cả 2 thằng này đều có Jav <_

Javascript là ngôn ngữ lập trình rất phổ biến hiện nay, với cú pháp lỏng lẻo, free style thì javascript trở nên được yêu thích với những ai muốn triển khai ứng dụng nhanh, cần tập trung vào code business để hoàn thành app chứ không phải code chi li cặn cẽ từng biến, từng vùng bộ nhớ hay tối ưu từng dòng code. Cá nhân mình từng làm ứng dụng với C/C++ nên đã trải qua cảm giác vất vả khi code những đoạn xử lý cỏn con mà mất hàng trăm dòng code. Khi chuyển qua code javascript mình cảm thấy thực sự sướng tay.

Đối với ReactJS như ta nói ở trên thì ReactJS là thư viện tầng view, việc sử dụng javascript càng hợp lý vì đối với tầng view, việc quan trọng là đưa dữ liệu ra để hiện thị, không nặng phần xử lý bussiness code (phần này chủ yếu ở server).

Lập trình viên ReactJS làm việc với Javascript không những không phải là một thiệt thòi mà còn là một lợi thế bởi vì ngôn ngữ này còn sử dụng cho react native làm app mobile, ngoài ra phía server còn có NodeJS sử dụng Javascript và vô vàn thư viện đi kèm đều bằng javascript. Nói chung "javascript every where!"

Kết luận

Đáng đồng tiền bát gạo để học và triển khai ứng dụng trong đó sử dụng ReactJS

comments powered by Disqus