LINUX.ORG.RU

История изменений

Исправление rtxtxtrx, (текущая версия) :

Там своеобразное «ООП»:

type Car struct {
  // ...
}

type Batmobil struct {
  Car // наследум свойства и методы
}

Абстракция (есть везде и тут в тч, поэтому не рассматривается), Наследование (простое встраивание), Инкапсуляция (нет ее, мы не можем взять какой-то компонент фреймворка и переопределить что-то неэкспортируемое), Полиморфизм (через интерфейсы, в данном случае черех жопу). Структуры - это не классы. У классов есть конструкторы/деструкторы, публичные, приватные и защищенные свойства/атрибуты/методы/поля… Разработчики Go стремились сделать язык в который можно вкатиться за пару вечеров. У них это вышло в тч благодаря отсутствию ООП.

В Go самое крутое - это каналы, сборщик мусора и то, что он сам создает треды, те тебе этим заниматься не надо. Для сишников, конечно, это все сомнительные вещи, они привыкли закатывать солнце вручную… Это язык для вебни. На нем можно какие-то консольные утилиты делать, но там все так или иначе сводится к сети, сокетам… Это замена тормозной Java (она уже в принципе только с мобилками ассоциируется и серверным легаси) для тех, кто не хочет связываться с M$ с его сисярпом.

Исправление rtxtxtrx, :

Там своеобразное «ООП»:

type Car struct {
  // ...
}

type Batmobil struct {
  Car // наследум свойства и методы
}

Абстракция (есть везде и тут в тч, поэтому не рассматривается), Наследование (простое встраивание), Инкапсуляция (нет ее, мы не можем взять какой-то компонент фреймворка и переопределить что-то неэкспортируемое), Полиморфизм (через интерфейсы, в данном случае черех жопу). Структуры - это не классы. У классов есть конструкторы/деструкторы, публичные, приватные и защищенные свойства/атрибуты/методы/поля… Разработчики Go стремились сделать язык в который можно вкатиться за пару вечеров. У них это вышло в тч благодаря отсутствию ООП.

В Go самое крутое - это каналы, сборщик мусора и то, что он сам создает треды, те тебе этим заниматься не надо. Для сишников, конечно, это все сомнительные вещи, они привыкли закатывать солнце вручную… Это язык для вебни. На нем можно какие-то консольные утилиты делать, но там все так или иначе сводится к сети, сокетам… Это замена тормозной Java для тех, кто не хочет связываться с M$ с его сисярпом.

Исправление rtxtxtrx, :

Там своеобразное «ООП»:

type Car struct {
  // ...
}

type Batmobil struct {
  Car // наследум свойства и методы
}

Абстракция (есть везде и тут в тч, поэтому не рассматривается), Наследование (простое встраивание), Инкапсуляция (нет ее, мы не можем взять какой-то компонент фреймворка и переопределить что-то неэкспортируемое), Полиморфизм (через интерфейсы, в данном случае черех жопу). Структуры - это не классы. У классов есть конструкторы/деструкторы, публичные, приватные и защищенные свойства/атрибуты/методы/поля… Разработчики Go стремились сделать язык в который можно вкатиться за пару вечеров. У них это вышло в тч благодаря отсутствию ООП.

В Go самое крутое - это каналы, сборщик мусора и то, что он сам создает треды, те тебе этим заниматься не надо. Для сишников, конечно, это все сомнительные вещи, они привыкли закатывать солнце вручную… Это язык для вебни. На нем можно какие-то консольные утилиты делать, но там все так или иначе сводится к сети, сокетам…

Исходная версия rtxtxtrx, :

Там своеобразное ООП:

type Car struct {
  // ...
}

type Batmobil struct {
  Car // наследум свойства и методы
}

Абстракция (есть везде и тут в тч, поэтому не рассматривается), Наследование (простое встраивание), Инкапсуляция (нет ее, мы не можем взять какой-то компонент фреймворка и переопределить что-то неэкспортируемое), Полиморфизм (через интерфейсы, в данном случае черех жопу). Структуры - это не классы. У классов есть конструкторы/деструкторы, публичные, приватные и защищенные свойства/атрибуты/методы/поля… Разработчики Go стремились сделать язык в который можно вкатиться за пару вечеров. У них это вышло в тч благодаря отсутствию ООП.