เมธอด main () เป็นวิธีการเขียนโปรแกรมแบบโพรเซสซิงซึ่งเป็นจุดเริ่มต้นที่น่าเกลียด มีความพยายามในการเขียนโปรแกรมภาษาต่าง ๆ เพื่อห่อหุ้มมัน แต่ธรรมชาติของมันทำให้มันยาก (ต้องเป็นสาธารณะและไม่ขยับเขยื้อน แต่มันไม่ควรถูกเรียกจากสิ่งอื่นใดในโปรแกรมซึ่งขัดแย้งกันอย่างมาก) WPF ประสบความสำเร็จ (โดยการซ่อน main () จากคุณในส่วนลึกของแอพพลิเคชั่น WPF และมอบ "hooks" ที่สามารถกำหนดค่าได้สำหรับการประมวลผลแบบกำหนดเอง) เช่นเดียวกับ Java (ในทำนองเดียวกันสำหรับแอป Android) แต่ WinForms และประเภทอื่น ๆ แอพยังคงทำให้คุณจัดการกับ main ()
ดังนั้นผู้เชี่ยวชาญส่วนใหญ่กล่าวว่าฟังก์ชั่น LOC ของ main () ควรจะต่ำที่สุด มีวิธีหนึ่ง (ซึ่งฉันคิดว่าเป็น overkill เล็กน้อย) ซึ่งฟังก์ชัน 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 () ควรให้น้อยที่สุดเท่าที่จะเป็นไปได้เพื่อให้แอปพลิเคชันเชิงวัตถุขับเคลื่อนเหตุการณ์เข้าสู่สถานะ "พร้อม"