Try   HackMD

2023 年 05 月 - 如何做架構選擇

工程師真的有在做工程嗎?

  • 前期:選擇問題不大的方案
    短期的

目標

// UserUseCase ==> 8byte void listUser(void *ptr) { usecase = (struct UserUseCase)ptr }
func (uc *UserUseCase) ListUsers() schema.ListUserResponse { w.Write(...) } // grpc ... // rest func main() { // getRouter() Handler r := gin.Default() r.GET("/ping", func(c *gin.Context) { res := userUseCase.ListUser(c.Writer) // 組 JSON }) http.ListenAndServe(":3000", r) }
func main() { r := chi.NewRouter() r.Use(middleware.Logger) r.Get("/", func(w http.ResponseWriter, r *http.Request) { userUseCase.ListUser(c.Writer) }) http.ListenAndServe(":3000", r) }

題目

  • SQL 效能
  • 溝通
  • code review