Его долгое время не было запрограммировано на C++, но я знаю, что на C++ классы организованы в файлы .h и .cpp. Также многие другие языки извлекают выгоду из разделения кода на логические группы в структуре каталогов для улучшения организации.Лучший способ организовать интерфейс Go
Ну, я пытаюсь научиться Идите сейчас, и я читал статью Go for C++ Programmers, когда сталкивался с интерфейсами. В статье объясняется, что интерфейсы в Go существенно заменяют классы и показывают, как их настроить довольно хорошо.
Что я пытаюсь выяснить, так это как мне организовать интерфейс в файлы? Например, должен ли интерфейс находиться в одном файле, а реализация - в другом?
myInterface.go
type myInterface interface {
get() int
set(i int)
}
myImplementation.go
type myType struct { i int }
func (p *myType) set(i int) { p.i = i }
func (p *myType) get() int { return p.i }
Мой код здесь может быть неправильным, так как я не совсем знаю, что я делаю, пока (и если я неправ, пожалуйста, поправьте меня), но будет ли это лучшим способом установить это? Мне очень тяжело, пытаясь обернуть голову, как организовать код в Go, поэтому любая помощь приветствуется!
Метрополис
Я очень поздно в шоу. Но я обычно придерживаюсь стиля исходного кода: https://golang.org/src –