Bootstrap
8.1 Masalah dengan Inisialisasi Langsung
func run() error {
// Tanggung jawab 1: Inisialisasi komponen
cfg, err := config.LoadConfig() // β inisialisasi
db, err := database.OpenDB(cfg) // β inisialisasi
// Tanggung jawab 2: Orchestration
userRepository := repository.NewUserRepository(db)
userService := service.NewUsers(userRepository)
userHandler := handler.NewUserHandler(userService)
// ... server setup dan graceful shutdown
}8.2 Solusi: Struct App sebagai Container
8.3 Implementasi Bootstrap
8.4 Update Server Main
8.5 Perbandingan Sebelum dan Sesudah
Aspek
Sebelum Bootstrap
Sesudah Bootstrap
8.6 Diagram Alur Bootstrap
8.7 Update CLI Main (Opsional)
8.8 Manfaat untuk Testing (Preview)
Ringkasan Bab 8
Last updated