Câu hỏi phỏng vấn Design pattern
Câu hỏi

Design pattern Factory là gì?

Câu trả lời

Factory thuộc nhóm design pattern creational. Ở đây các đối tượng được tạo mà không để lộ logic của việc tạo ra cho client. Bởi vì các đối tượng tham chiếu đến interface chung.

Ví dụ: Ta có 3 lớp Square, TriangleRectangle. Ta sẽ sử dụng design pattern factory cho tạo đối tượng từ 3 lớp mà không để lộ logic tạo bằng cách dùng lớp ShapeFactory. Lớp Driver sẽ truyền thông tin như RECTANGLE/SQUARE/TRIANGLE đến đối tượng cần thiết. Sơ đồ UML cho trường hợp này:

Design pattern Factory là gì?

Bây giờ ta triển khai code cho ví dụ trên:

Bước 1: Tạo interface Shape

//Shape.java
public interface Shape {
    void draw();
}

Bước 2: Tạo lớp cụ thể Rectangle, Square, Triangle sử dụng triển khai interface Shape.

//Rectangle.java
public class Rectangle implements Shape {
    @Override
    public void draw() {
        System.out.println("Rectangle Drawn");
    }
}
//Square.java
public class Square implements Shape {
    @Override
    public void draw() {
        System.out.println("Square Drawn");
    }
}
//Triangle.java
public class Triangle implements Shape {
    @Override
    public void draw() {
        System.out.println("Triangle Drawn");
    }
}

Bước 3: Tạo lớp ShapeFactory và tạo một phương thức gọi là getShapeInstance() cho tạo đối tượng ở lớp cụ thể:

//ShapeFactory.java
public class ShapeFactory {
    //the method will be used to get object of require...
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Design pattern Adapter là gì?

middle

Design pattern Observer là gì?

middle

Design pattern nào trong thư viện JDK của Java?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào