type UserService struct  :4-6
type Repository interface  :8-11
  FindById(id string) → (*User, error)  :9-9
  Save(user *User) → error  :10-10
func NewUserService(repo Repository) → *UserService  :13-15
func (s) GetUser(id string) → (*User, error)  :17-19
func (s) CreateUser(data CreateUserDto) → (*User, error)  :21-24
func HashPassword(password string) → (string, error)  :26-28
