Trong lập trình web với ASP.net, các bạn có thể sử dụng ViewState để quản lý ASP.net WebForm, các trang ASP.net đều có lifecycle, postback và dùng
các web controls,
các event để thực hiện các hành động cho UI (User Interface) khi có sự tương tác với người dùng nên hầu hết ASP.net WebForm
xử lý chậm.
- ASP.net MVC chia ra làm 3 phần: Models, View, Controller.
Mọi tương tác của người dùng với Views sẽ được thực hiện hành động trong
Controllers, không còn postback, lifecycel và events.
- Việc kiểm tra (test), gỡ lỗi (debug) với ASP.net WebForm
đều phải chạy tất cả các tiến trình của ASP.net, và sự thay đổi ID của bất kỳ
Controls nào cũng ảnh hưởng đến ứng dụng. Đối với MVC thì việc đó có thể sử
dụng các unit test có thể thẩm định rất dễ dàng các Controllers thực hiện
như thế nào.
- Sau đây là bảng so sánh các tính năng của ASP.net WebForm
với ASP.net MVC
|
Các tính năng
|
ASP.net WebForm
|
ASP.net MVC
|
|
Kiến trúc chương
trình
|
Kiến trúc mô hình
WebForm –> Bussiness –> Database
|
Kiến trúc sử dụng
việc phân chia chương trình thành: Models, Views, Controllers
|
|
Cú pháp chương trình
|
Sử dụng cú pháp của
WebForm, tất cả các sự kiện và controls do server quản lý
|
Các sự kiện được
điều khiển bởi controllers, các controls không do server quản lý.
|
|
Truy cập dữ liệu
|
Sử dụng hầu hết các
công nghệ truy cập dữ liệu trong ứng dụng
|
Phần lớn dùng LINQ
và SQL class để tạo mô hình truy cập đối tượng.
|
|
Debug
|
Debug phải thực hiện
tất cả bao gồm các lớp truy cập dữ liệu, sự hiển thị, điều khiển các
controls.
|
Debug có thể sử dụng
các unit test để
kiểm tra các phương thức trong controllers.
|
|
Tốc độ phân tải
|
Tốc độ phân tải chậm
khi trong trang có quá nhiều các controls vì ViewState quá lớn
|
Phân tải nhanh hơn
do không phải quản lý ViewState để quản lý các controls trong trang.
|
|
Tương tác với JavaScript
|
Tương tác với
JavaScript khó khăn vì các controls được điều khiển bởi server
|
Tương tác với
JavaScript dễ dàng vì các đối tượng không do server quản lý điều khiển không
khó
|
|
URL address
|
Cấu trúc địa chỉ URL
có dạng:
<filename>.aspx?&<các tham số> |
Cấu trúc địa chỉ
rành mạch theo dạng Controllers/Action/ID
|
Không có nhận xét nào:
Đăng nhận xét