Bài giảng Lập trình hướng đối tượng - Bài 13: Thiết kế theo mô hình MVC - Nguyễn Mạnh Hùng

Mô hình MVC (2)
M - model:
 Đóng gói dữ liệu, thông tin
 Chức năng biểu diễn, vận chuyển thông tin
để trình diễn (view) và xử lí (control)
6
Mô hình MVC (3)
C - control:
 Định nghĩa các hành vi, hoạt động, xử lí
của hệ thống
 Đối chiếu hành động của user (nhận từ
view), vào tập chứ năng để xử lí, đồng thời
chọn hành động đưa view ra để show 
pdf 23 trang thiennv 07/11/2022 4720
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình hướng đối tượng - Bài 13: Thiết kế theo mô hình MVC - Nguyễn Mạnh Hùng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfbai_giang_lap_trinh_huong_doi_tuong_bai_13_thiet_ke_theo_mo.pdf

Nội dung text: Bài giảng Lập trình hướng đối tượng - Bài 13: Thiết kế theo mô hình MVC - Nguyễn Mạnh Hùng

  1. Các lớp điều khiển  Cập nhật thông tin vào DB (thông tin chứa trong các thực thể)  Thực hiện các tính toán, xử lí trung gian  Đối chiếu hành động của user (nhận từ view), vào tập chứ năng để xử lí, đồng thời chọn hành động đưa view ra để show 11
  2. Các lớp giao diện  Các frame, cửa sổ của ứng dụng (javaSwing)  Các trang giao diện web: html, jsp  Các bảng, mẫu biểu, báo cáo in ra 12
  3. Ví dụ: điều khiển đăng nhập từ dòng lệnh
  4. Login: Model public class LoginModel { String userName; String password; public LoginModel(){} public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } } 14
  5. Login: View (1) import java.io.Scanner; import java.io.IOException; public class LoginView { public LoginView(){ } public void showMessage(String smg){ System.out.println(smg); } 15
  6. Login: View (2) public LoginModel getUserInfo(){ LoginModel user = new LoginModel(); try{ Scanner input = new Scanner(System.in); System.out.print("Username: "); user.setUserName(input.nextLine()); System.out.print("Password: "); user.setPassword(input.nextLine()); input.close(); }catch(IOException e){ System.out.println(e); } return user; } } 16
  7. Login: Control (1) public class LoginControl { LoginModel user; LoginView view; public LoginControl(LoginView view){ this.view = view; while(true){ user = view.getUserInfo(); if(checkLogin()){ view.showMessage("success!"); break; }else{ view.showMessage("wrong username or password!"); } } } 17
  8. Login: Control (2) private boolean checkLogin(){ if ((user.getUserName().equals("sa")) &&(user.getPassword().equals("sa") )){ return true; } return false; } } 18
  9. Login: main public class LoginMVC { public static void main(String[] args){ LoginView view = new LoginView(); LoginControl control = new LoginControl(view); } } 19
  10. Bài tập (1) Bài toán tìm USCLN: người dùng nhập vào hai số nguyên dương a và b. Chương trình hiện lên USCLN của chúng.  Viết model cho bài toán này  Viết phần view cho bài toán này  Viết phần control cho bài toán này 20
  11. Bài tập (2) Bài toán giải phương trình bậc hai: người dùng nhập vào các hệ số a, b, c. chương trình hiện lên số nghiệm và giá trị các nghiệm của phương trình  Viết model cho bài toán này  Viết phần view cho bài toán này  Viết phần control cho bài toán này 21
  12. Bài tập (3) Cài đặt lại ví dụ đăng nhập đã cho trong bài, với thông tin về người dùng được lưu trong CSDL.  Viết model cho bài toán này  Viết phần view cho bài toán này  Viết phần control cho bài toán này 22
  13. Questions?