Іменування конвенцій для класів Java, які мають основний статичний метод?


21

Прочитавши відповідь gnat на " Чому статичний основний метод у Java та C #, а не конструктор? Я вважаю, що його відповідь означає, що мета класу Java зі статичним основним методом полягає в define a program entry pointтому, що це не сама програма.

Можливо, є кращий спосіб зробити це, але зазвичай у мене є клас зі статичним основним методом, щоб зробити щось просте, як це:

public class MenuLauncher
{
    public static void main(String[] args) {
        Menu menu = new Menu();
        menu.run();
    }
}

Чи буде наведений вище код найкращою практикою для OOP, коли клас зі статичним основним не робить багато іншого, ніж запуск або запуск програмної логіки, що міститься в окремому нестатичному об'єкті; адже головне є статичним, чи не буде сам клас MenuLauncher дуже обмеженим? Оскільки main є початковою точкою, я не бачу іншої мети для класу, крім точки вступу.

Чи існує угода про іменування Java, яка зазвичай використовується для класів, які містять основний метод і служать цілі вступу до програми?


1
Зазвичай я називаю свою Program.
Роберт Харві

1
Я називаю це, Mainі це, як правило, менше 20 рядків (з невеликим вилученням винятків та аналізом параметрів).
assylias

останні 5 написаних мною тестів були Test1, Test2, Test3, Test4 і Test5 :) Писала невеликі тести і не хотіла витрачати час на продумання описових імен, оскільки це все-таки було скиданням коду.
jwenting

Відповіді:


18

Ні, для цього немає широко використовуваних конвенцій про іменування. Приклади , які я бачив це Main, Application, XLauncherабо X, де X це ім'я проекту / програми.

І так, я думаю, що для цього класу добре, щоб він містив лише мінімальний логіку / код, необхідний для налаштування програми та запуску. Але я впевнений , що є багато Бога Об'єкти і великі кулі з бруду минула з mainметодом прикріпив на кілька тисячі ліній каліцтва.


Я знаю, що це через кілька років, але ваше останнє речення змусило мене впасти зі свого крісла. Дякую за сміх.
користувач0000001

@ user0000001: ласкаво просимо!
Майкл Боргвардт

9

Їх називають " Основним класом" , незалежно від того, називаються вони "Основними", і мало чи багато вони чи ні.

Зазвичай вони мають логіку, необхідну для запуску програми.

У програмах CLI вони зазвичай перевіряють параметри.

У додатку Настільний вони відкривають головне меню, як ваше, або відкривають головне вікно.

Якщо ви читаєте MANIFEST файли у файлі jar, ви виявите, що вони так називаються.

Manifest-Version: 1.0
Created-By: xxx
Built-By: xxx
Build-Jdk: 1.6.0_04
Main-Class: myPackage.MenuLauncher
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.