Как экспортировать функцию в Go?

Intern
581 просмотров
AFK Offer AI

В Go нет ключевых слов public/private. Экспорт определяется регистром первой буквы:

  • Заглавная → экспортировано (видно из других пакетов)
  • Строчная → неэкспортировано (только внутри пакета)
package user

func CreateUser() {} // экспортирована — доступна как user.CreateUser() func validateAge() {} // не экспортирована — только внутри пакета user

type User struct { Name string // экспортировано email string // не экспортировано }

Это касается всего: функций, типов, переменных, констант, полей структур, методов. Простое и однозначное правило — увидел заглавную букву, значит публичный API.

Следующий вопрос

Что такое usecase layer?