Nhiều người vẫn hay lầm tưởng framework và library là một, nhưng thực chất chúng lại là hai công cụ hoàn toàn khác nhau. Vậy làm thế nào để phân biệt chúng?
Về khái niệm
Library
Library là một tập hợp các functions, gồm các Class được viết sẵn và có thể tái sử dụng.
Mỗi function hoặc class phục vụ cho một công việc cụ thể nào đó.
Framework
Framework là tập hợp các library đã được đóng gói, nhằm hỗ trợ quá trình phát triển ứng dụng dựa trên framework đó.
Đồng thời, nó cũng cung cấp các nguyên tắc, cấu trúc trong ứng dụng buộc người dùng phải tuân thủ theo.
Về định nghĩa
Framework được xem là một khung chương trình, người dùng bổ sung code và tuân theo quy tắc để tạo ra ứng dụng.
Còn library chỉ cung cấp các chức năng tiện ích hay các Class để sử dụng trong quá trình xây dựng ứng dụng.
Về cách thức hoạt động
Đối với framework
Framework hoạt động chủ động.
Do đó, nó có thể đưa ra các quyết định gọi hoặc bị gọi bởi các library hay ứng dụng nào đó.
Để sử dụng được framework, cũng như các functions mà nó cung cấp, bạn cần thay đổi cấu trúc code của dự án dựa trên các quy tắc của framework đó.
Đối với library
Library hoạt động bị động.
Nên nó chỉ được gọi khi nào chúng ta cần dùng tới.
Với library, bạn có thể dễ dàng sử dụng trực tiếp các functions mà không phải mất thời gian thay đổi cấu trúc của code trong project.
Mục đích hoạt động
Framework hoạt động nhằm mục đích cung cấp khả năng phát triển nhanh chóng hơn cho các ứng dụng.
Còn library được tạo ra nhằm mục đích hỗ trợ cho nhà phát triển mã và trình biên dịch mã trong quá trình xây dựng và chạy ứng dụng.