Professional Documents
Culture Documents
Lab 8 KTHT
Lab 8 KTHT
Model: Mô hình đại diện cho một đối tượng hoặc JAVA POJO mang dữ liệu. Nó cũng có thể
có logic để cập nhật khi Controller yêu cầu thay đổi.
View: Chế độ xem biểu thị trực quan hóa dữ liệu mà Model chứa.
Controller: Bộ điều khiển hoạt động trên cả Model (mô hình) và View (xem, trình bày). Nó
kiểm soát luồng dữ liệu vào đối tượng của Model và cập nhật View bất cứ khi nào dữ liệu thay
đổi. Nó giữ View và Model riêng biệt.
2/. Thực hiện: (dùng ngôn ngữ Java minh họa)
Chúng ta sẽ tạo một đối tượng Student hoạt động như một Model. StudentView sẽ là một lớp xem
có thể in thông tin chi tiết về sinh viên trên bàn điều khiển và StudentController là lớp điều khiển
chịu trách nhiệm lưu trữ dữ liệu trong đối tượng Student và cập nhật chế độ xem StudentView tương
ứng.
MVC PatternDemo, gói / lớp Application / demo của chúng ta, sẽ sử dụng StudentController để
chứng minh việc sử dụng mẫu MVC.
Cho class Student như sau:
Chúng ta cần 04 bước thực hiện cho MVC Pattern như sau:
2.1/. Tạo Model: khai báo lớp Student trên nền tảng OOP.
package Model;
public class Student
{
private String rollNo;
private String name;
// có thể có nhiều constructor
// phải có phương thức getter, setter cho các thuộc tính
public Student()
{
}
package View;
public class StudentView
{
public void printStudentDetails(String studentName, String
studentRollNo)
{ // hiển thị thông tin của sinh viên
System.out.println("Student: ");
System.out.println("Name: " + studentName);
System.out.println("Roll No: " + studentRollNo);
}
}
package Controller;
import Model.*;
import View.*;
public class StudentController
{
private Student model;
private StudentView view;
// khai báo model, view
package Application;
import Model.*;
import View.*;
import Controller.*;
controller.updateView();
//update model data Cập nhật dữ liệu trong Model
controller.setStudentName("Elon Musk");
controller.updateView();
}
}
Kết quả:
3/. Các Parttern khác trong ngôn ngữ lập trình Java:
Lab 8AB
Sinh viên xây dựng Pattern bằng ngôn ngữ Java, chụp ảnh các gói (package) của Project
Explorer, copy code vào file Lab8_Họ tên sv.docx.
Nộp bài tại N:\Lab8_N1 | N:\Lab8_N2
Bài tập
Thiết kế OOP pattern và MVC pattern cho Class sau:
A/. Lớp_Học Phần
Giải:
Model:
package Model;
public class Lop_HocPhan
{
private String maLopHP, monHoc;
private int soTC, soSVDK;
// các constructor
public Lop_HocPhan()
{
}
View:
package View;
public class Lop_HocPhanView
{
public void printLop_HocPhan(String maLopHP, String monHoc, int soTC, int soSVDK)
{
System.out.println("Lớp Học Phần:");
System.out.println("Mã lớp học phần " + maLopHP);
System.out.println("Môn học: " + monHoc);
System.out.println("Số tín chỉ: " + soTC);
System.out.println("Số sinh viên đăng ký: " + soSVDK);
}
}
Controller:
package Controller;
import Model.*;
import View.*;
public class Lop_HocPhanController
{
private Lop_HocPhan model;
private Lop_HocPhanView view;
// constructor
public Lop_HocPhanController(Lop_HocPhan model, Lop_HocPhanView view)
{
this.model=model; this.view = view;
}
Application:
package Application;
import Model.*;
import View.*;
import Controller.*;
Bài tập
Thiết kế OOP pattern và MVC pattern cho Class sau:
B/.Hàng Hóa
Giải: cách làm tương tự Lab8A trên, chú ý cách đặt tên.