Метод main () - это простой возврат к процедурному программированию, обеспечивающий точку входа в приложение. Предпринимаются попытки инкапсулировать его на разных языках программирования, но сама его природа делает это трудным (оно должно быть открытым и статичным, но его НИКОГДА не следует вызывать из чего-либо еще в программе, что весьма противоречиво). WPF преуспел (скрыв main () от вас глубоко в недрах проекта приложения WPF и предоставив настраиваемые «зацепки» для пользовательской обработки), как и Java (аналогичным образом для приложений Android), но WinForms и большинство других типов приложения по-прежнему заставляют вас иметь дело с main ().
Итак, большинство экспертов говорят, что LOC функции main () должен быть как можно ниже. Есть один подход (который я считаю немного излишним), в котором функция main () имеет одну строку:
public class Program
{
private Program(string[] args)
{
//parse args and perform basic program setup
}
//Reduce the ugliness to the absolute minimum
public static void main(string[] args)
{
new Program(args).Run();
}
private void Run()
{
//kick off the driving O-O code for the app; i.e. Application.Run()
}
}
Это немного, но я согласен с основным принципом; Функция main () должна как можно меньше привести ваше объектно-ориентированное приложение, управляемое событиями, в состояние готовности.