Backbone là **MVC framework client-side** (nhiều khi gọi là MV* — View đóng vai cả Controller).
Core value
- Model: Data + validation + sync server (REST/JSON). Trigger
"change"event khi attribute đổi. - View: Listen model
change→ re-render tự động. Declarative event handling (events: { "click .btn": "handler" }). - Collection: Rich API:
add,remove,sort,filter,map,forEach... Trigger event khi model thay đổi. - Router: Client-side routing, bookmarkable URL.
Lợi ích
- Không cần manually bind DOM ↔ Model — Backbone lo data binding qua event.
- Code organized, maintainable, testable.
- RESTful JSON interface out-of-the-box.
- Nhẹ (~7KB gzipped), flexible, không ép opinion nặng như Angular.
Khi nào dùng: App medium complexity, cần structure nhưng muốn tự do chọn template engine, build tool, CSS approach.