Расскажите о вашем практическом опыте применения принципов объектно-ориентированного программирования в проектах

В Go, несмотря на отсутствие классической объектно-ориентированной модели с наследованием, можно применять основные принципы ООП — инкапсуляцию, полиморфизм и композицию.

Короткий ответ

Что ответить на собеседовании

В Go, несмотря на отсутствие классической объектно-ориентированной модели с наследованием, можно применять основные принципы ООП — инкапсуляцию, полиморфизм и композицию.

Подробный разбор

Ответ с пояснениями

В Go, несмотря на отсутствие классической объектно-ориентированной модели с наследованием, можно применять основные принципы ООП — инкапсуляцию, полиморфизм и композицию.

Например, для инкапсуляции используют структуры и методы:

package main
import "fmt"

type User struct {
    name string
    age  int
}

func (u *User) Greet() {
    fmt.Printf("Привет, меня зовут %s и мне %d лет\n", u.name, u.age)
}

func main() {
    user := User{name: "Иван", age: 30}
    user.Greet()
}

Полиморфизм достигается через интерфейсы:

type Greeter interface {
    Greet()
}

func SayHello(g Greeter) {
    g.Greet()
}

Таким образом, в проектах я использовал структуры с методами и интерфейсы для создания гибкой архитектуры, что облегчало поддержку и расширение кода.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее