首页 > 解决方案 > 您如何重构应用程序中的入口点类?

问题描述

我有这个现有的课程设置。这是我的入口点类。

public class AppManager {

    public AppManager() {

    }

    public void startApp(){
        doInit();
        if(doTask1())
            doTask2();
        else
            doTask3();
        createUI()
    }

    public void doInit() {
        InitClass initClass = new InitClass();
        initClass.init();
    }

    public boolean doTask1() {
        Task1 task1 = new Task1();
        return task1.doTask();
    }

    public boolean doTask2() {
        Task2 task2 = new Task2();
        return task2.doTask();
    }

    public boolean doTask3() {
        Task3 task3 = new Task3();
        return task3.doTask();
    }

    public void createUI() {
        UIManager uiManager = new UIManager();
        uiManager.createUI();
    }
    
    public static void main(String[] args) {
        AppManager appManager = new AppManager();
        appManager.startApp();
    }

}

我想对它进行一些重构。我认为它正在做一些事情,但我不知道如何?我尝试创建任务特定类,以便我可以将工作委派给他们。

但我认为我的入口点类仍在做很多事情。根据良好的设计“一个类应该只做一件事”。

为简洁起见,我有意省略了其他任务。

不确定我的问题是否清楚,但我只是想改进我的代码。

在这种情况下,我使用了 java 代码,但我认为这仍然适用于其他语言。

如何重构?

标签: oopdesign-patternsooad

解决方案


推荐阅读