01/10/2018, 10:59

Phân biệt thư viện javacsript với framework javascript

Chào mọi người,
Mọi người có thể giúp mình đưa ra khái niệm của thư viện và frame work, qua đó cho mình hỏi cái nào là thư viện cái nào là framework javascript và tại sao không ạ: JQuery, AngularJS, ExtJS, NodeJS, Dojo.
Mình xin cảm ơn!

Nguyễn Văn Khoa viết 13:08 ngày 01/10/2018

Theo mình cách tốt nhất là lên homepage của cái đó mà xem thôi.

Henry viết 12:59 ngày 01/10/2018

Mình chắc chắn JQuery là một lib. Vì trang chủ của nó đã nói rõ rồi. AngularJS là một framework, cái này docs trên trang chủ của nó cũng đã nói. ExtJS này hình như cũng là framework. Mình thấy nó được so sánh với AngularJS, nên chắc là thế. NodeJs chả phải framework, mà cũng chả phải lib. Nó chỉ là một môi trường để giúp Javascript làm back-end server-side thôi. Dojo, cái này là framework này.
Để phân biệt được cái nào là lib, nào là frame thì cứ nghĩ đơn giản
Lib giúp định nghĩa một số thứ sẵn rồi, bạn dựa vào đó viết theo. Dạng một cái guide
Framework thì lại là một cái lõi, bạn làm thêm nhân.
Ví dụ:
Khi làm bài tập toán, các công thức trong sách chính là lib hỗ trợ bạn việc giải bài toán. Còn framework nó giống như những dòng mẫu ghi sẵn lời giải, bạn chỉ cần ghi đáp án vào thôi.

Phan Bá Hải viết 13:12 ngày 01/10/2018

Không riêng gì Js, khái niệm Framework và Library mình giải thích thế này

Framework là một tập hợp các thư viện gắn kết với nhau dưới dạng module để hỗ trợ viết ứng dụng. Cứ hiểu đơn giản framework là một dây chuyền sản xuất bánh (từ nhào bột, làm nhân, nướng bánh, in bao bì, đóng gói) . Mỗi công đoạn lớn trong đó được coi là một thư viện (Library)

Framework hỗ trợ viết ứng dụng trên nền tảng đó như AngularJS. Còn thư viện là những thứ đã viết sẵn giúp thêm chức năng, phát triển ứng dụng đơn giản hơn như jQuery

Thành Minh viết 13:02 ngày 01/10/2018

Thư viện thì chỉ là các class có các method mà bạn cần dùng, và bạn gọi nó, bạn kiểm soát được nó, còn framework thì sẽ gọi lại code của bạn vào lúc cần thiết, cái này bạn nên đọc thêm Inversion of Control để hiểu thêm :))

Bài liên quan
0