重构 #4
							
								
								
									
										23
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										23
									
								
								main.go
									
									
									
									
									
								
							| @@ -1,5 +1,26 @@ | |||||||
| package main | package main | ||||||
|  |  | ||||||
| func main() { | import ( | ||||||
|  | 	"log" | ||||||
|  |  | ||||||
|  | 	"git.huangwc.com/pig/pig-farm-controller/internal/core" | ||||||
|  | ) | ||||||
|  |  | ||||||
|  | func main() { | ||||||
|  | 	// 1. 创建应用实例 | ||||||
|  | 	// 所有复杂的初始化逻辑都已封装在 NewApplication 中 | ||||||
|  | 	app, err := core.NewApplication("config.yml") | ||||||
|  | 	if err != nil { | ||||||
|  | 		// 在应用启动的最早期阶段,如果核心组件创建失败, | ||||||
|  | 		// 我们的自定义 logger 可能还未初始化,因此这里使用标准库的 log.Fatalf | ||||||
|  | 		log.Fatalf("应用初始化失败: %v", err) | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	// 2. 启动应用 | ||||||
|  | 	// Start 方法会阻塞,直到应用被关闭 | ||||||
|  | 	if err := app.Start(); err != nil { | ||||||
|  | 		// 如果 Start 过程(主要是优雅关闭阶段)出现错误, | ||||||
|  | 		// 此时我们的 logger 已经是可用的,可以用它来记录错误。 | ||||||
|  | 		app.Logger.Errorf("应用启动或关闭时发生错误: %v", err) | ||||||
|  | 	} | ||||||
| } | } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user