【问题标题】:How much code should be in the main method of a program?程序的 main 方法中应该有多少代码?
【发布时间】:2016-09-12 08:46:58
【问题描述】:

我是创建自己的软件的新手。我是一名学生,所以我创造了一些逐步布置好的东西,但我自己从来没有真正完成过这个过程。

我一直在尝试实现良好的设计技术并充分利用 OOP,但我担心我的代码写得不是很好。

我主要担心的是主要方法。在我制作聊天程序的地方,我创建了一个 ChatClient 类来容纳主要方法。但我发现我真正需要放入 main 方法的所有代码都是对 JFrame 类的调用,告诉它显示程序的界面。从这里开始,程序的整个功能都在其他类中处理。

我应该更多地控制程序运行到 main 方法的方式吗?或者主要方法只有一行真的没问题吗?

【问题讨论】:

  • 一个简短的主要方法是完全正常的。一旦 jframe 被实例化,其余的程序流程就是事件驱动的。
  • 我认为这样的事情是个人偏好/意见,并不能真正决定您是否遵循良好的 OOP 原则。您应该专注于理解多态性、继承和封装等原则。您布置主要方法以及程序其余部分的方式应该基于对这些原则的良好实现。跨度>
  • 一般来说,你的 main 方法包含一两行。如果你必须做任何命令行参数(args)解释,你应该在从主方法执行的静态方法中做。

标签: java oop


【解决方案1】:

理想情况下,main 方法及其周围的类应仅用作启动程序的入口点。

您开发的每个课程都应该是独立的,并且有自己的职责,因为将来它们实际上可能对其他程序/项目有用。您应该始终以低耦合和高内聚的项目为目标(更多关于此问题的信息:https://stackoverflow.com/a/14000957/6341202)。

所以,回到你原来的问题,在 main 方法中只有一行代码来初始化你的 JFrame 完全没问题!

【讨论】:

    【解决方案2】:

    在 main 方法中,好的做法是调用将要执行程序的其他方法。

    public static void main(String[] args){
        Classname program = new Classname();
        program.start();
    }
    
    public program(){
        //The code that you want in the main
    }
    

    【讨论】:

      【解决方案3】:

      如果您以松散耦合的方式编写代码并且可以对现有代码进行必要的修改,而不是将所有代码填充在 main() 方法中,那就更好了。 可维护性

      【讨论】:

        【解决方案4】:

        只要您使用良好的 OOP 概念在其他类和方法中编写工作流程,在 main 方法中使用单行代码就足够了。

        【讨论】:

          【解决方案5】:

          main 方法是唯一不能为其分配有意义名称的方法。因此它不应该做任何意想不到的事情。

          理想情况下,它只包含一个函数调用。异常处理和一些日志记录(程序版本、构建日期)也应该没问题。但仅此而已。

          【讨论】:

            猜你喜欢
            • 2010-10-11
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2017-11-02
            • 1970-01-01
            • 1970-01-01
            • 2021-12-19
            • 1970-01-01
            相关资源
            最近更新 更多