Size: a a a

Dart & Flutter по-русски

2020 March 16

EE

Evgenii Elchev in Dart & Flutter по-русски
Evgenii Elchev
Сумма типов. Это это вот enum например. Но он данные с собой не может тянуть.
В котлине, Swift, Scala есть прямо классы с данными, которые можно суммировать.
источник

AK

Artem Krupp in Dart & Flutter по-русски
Evgenii Elchev
Сумма типов. Это это вот enum например. Но он данные с собой не может тянуть.
так есть же миксины
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
Artem Krupp
так есть же миксины
Это не то
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
Миксин подмешивает реализацию
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
А тут тип, который может быть одним из нескольких типов
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
enum State {
  case error(Error)
  case loading
  case loaded(Users)
}
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
И ты можешь типо так сделать
final state = State.loader(User())
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
И потом паттерн матчингом развернуть
источник

n

neikist in Dart & Flutter по-русски
Evgenii Elchev
enum State {
  case error(Error)
  case loading
  case loaded(Users)
}
Эх, и тут дарт котлину уступает
источник

AK

Artem Krupp in Dart & Flutter по-русски
а в котлине такое есть?
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
switch state {
case loaded(let user):
  что то там с user
case error(let error):
  Попап с error
case loading:
  Крутим спинер
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
Artem Krupp
а в котлине такое есть?
Да, силд классы что ли называется, но могу ошибаться с названием
источник

n

neikist in Dart & Flutter по-русски
Artem Krupp
а в котлине такое есть?
sealed class State {
  class Error(Error) : State()
  object Loading: State()
  class Loaded(Users): State()
}
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
neikist
Эх, и тут дарт котлину уступает
Может добавят
источник

n

neikist in Dart & Flutter по-русски
Evgenii Elchev
Может добавят
Хорошо бы, фича удобная.
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
neikist
Хорошо бы, фича удобная.
Очень, я уже хз как без этого жить)
источник

n

neikist in Dart & Flutter по-русски
Разве что в котлине в when проверяется что обработаны все варианты только если when - expression. Хотя могу косячить с терминологией. В общем когда значение возвращает
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
neikist
Разве что в котлине в when проверяется что обработаны все варианты только если when - expression. Хотя могу косячить с терминологией. В общем когда значение возвращает
У нас паттерн матчинг никогда не бывает expression, что не всегда удобно. Но за то явно можно выбирать, проверить все или нет
источник

EE

Evgenii Elchev in Dart & Flutter по-русски
У нас можно только одно сопоставление сделать через if case или родное через switch
источник

AN

Artyom Nesterenko in Dart & Flutter по-русски
neikist
Разве что в котлине в when проверяется что обработаны все варианты только если when - expression. Хотя могу косячить с терминологией. В общем когда значение возвращает
Можно написать extension fun в одну строчку, которая будет заставлять всегда проверять. 😊
источник