Псевдоним типа и определение типа в Go

Я наткнулся на псевдоним этого типа в коде:

type LightSource = struct {
  R, G, B, L float32
  X, Y, Z, A float32
  //...
}

У меня вопрос: по какой причине использовать такой псевдоним типа для определения struct, а не делать это?

type LightSource struct {
  R, G, B, L float32
  //...etc
}

person ᆼᆺᆼ    schedule 28.01.2019    source источник


Ответы (1)


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

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

person rob74    schedule 28.01.2019