Main () yöntemi, prosedürel programlamaya çirkin bir geri dönüş olup uygulamaya giriş noktasını sağlar. Çeşitli programlama dillerinde onu kapsüllemek için girişimler yapılır, ancak doğası bunu zorlaştırır (halka açık ve statik olması gerekir, ancak ASLA programdaki son derece çelişkili herhangi bir şeyden çağrılmamalıdır). WPF başarılı oldu (main () WPF uygulama projesinin bağırsaklarının derinliklerinde saklanarak ve özel işleme için yapılandırılabilir "kancalar" sağlayarak) Java'da olduğu gibi (Android uygulamaları için de benzer şekilde), ancak WinForms ve diğer birçok tür uygulamalar hala main () ile ilgilenmenizi sağlar.
Bu nedenle, uzmanların çoğu main () işlevinin LOC değerinin olabildiğince düşük olması gerektiğini söylüyor. Main () işlevinin bir satırı olduğu bir yaklaşım (ki biraz abartılı olduğunu düşünüyorum) vardır:
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()
}
}
Bu biraz fazla, ama temel ilkeye katılıyorum; main (), nesne yönelimli, olay güdümlü uygulamanızı "hazır" duruma getirmek için mümkün olduğunca az olmalıdır.