Size: a a a

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

2021 April 15

KB

Kirill Bubochkin in Dart & Flutter по-русски
потому что это final поля, а не константы 🙂 Запустите такой код:

import 'dart:math';

void main() {
 const x = X(R());
 
 print(x.r.n);
 print(x.r.n);
 print(x.r.n);
}


class X {
 const X(this.r);
 
 final R r;
}


class R {
 const R();
 
 int get n => Random().nextInt(100);
}
источник

at

alexey tracevsky in Dart & Flutter по-русски
зачем мне там функция? и при чем она вообще к константной переменной?
источник

KB

Kirill Bubochkin in Dart & Flutter по-русски
Затем, что этот код показывает, что final поля у const класса не являются константами.
источник

at

alexey tracevsky in Dart & Flutter по-русски
геттер это не поле, а метод
источник

KB

Kirill Bubochkin in Dart & Flutter по-русски
поле – это тоже геттер. Во, придумал понагляднее пример:

import 'dart:math';

void main() {
 const X x = Y(1);
 
 print(x.r);
 print(x.r);
 print(x.r);
}

class X {
 const X(this.r);
 
 final int r;
}

class Y extends X {
 const Y(int r) : super(r);

 int get r => Random().nextInt(100);
}
источник

at

alexey tracevsky in Dart & Flutter по-русски
на мой взгляд, вы перевернули с ног на голову. когда вы говорите, что у класса есть публичное final поле, вы по сути объявляете интерфейс в котором есть публичный метод получения r. пока интерфейсы совпадают, все ок. в вашем примере, вы можете перевернуть наследование, и код точно так же будет валидным.
источник

KB

Kirill Bubochkin in Dart & Flutter по-русски
с точки зрения синтаксиса, у класса X есть final поле r. И у меня есть константа x типа X. При этом x.r – не константа. ЧТД. Я ничего не переворачивал 🤷‍♂️
источник

at

alexey tracevsky in Dart & Flutter по-русски
...
где там мем с Брежневым
источник

KB

Kirill Bubochkin in Dart & Flutter по-русски
я же не говорю, что так надо делать. Я объясняю, почему компилятор не дает использовать final поле в качестве константы – потому что это может быть совсем не константа. Вот и все.
источник

PP

PR Promo in Dart & Flutter по-русски
С помощью чего лучше разбить ListBuilder (элементы) так, что бы они шли в 2 колонки с пролистыванием (что то вроде как на авито)?
источник

at

alexey tracevsky in Dart & Flutter по-русски
gridbuilder есть же
источник

PP

PR Promo in Dart & Flutter по-русски
ща погуглю, спасибо
источник

КБ

Константин Бобров... in Dart & Flutter по-русски
Привет всем, есть у кого информация по протоколу воспроизведению аудио?
источник

КБ

Константин Бобров... in Dart & Flutter по-русски
По потоковому*
источник

☕️ CunningFox in Dart & Flutter по-русски
Протокол какой?
источник

КБ

Константин Бобров... in Dart & Flutter по-русски
Я плох в этом. Просто предстоит задача, а как решать даже представления не имею
На бэке будет храниться запись и ее надо будет воспроизводить по запросам
источник

КБ

Константин Бобров... in Dart & Flutter по-русски
Как в каком-нибудь плеере, когда запись подгружается на ходу
источник

☕️ CunningFox in Dart & Flutter по-русски
Тут больше не фронтовая задача, посмотри в сторону webrtc например, без вводных сложно что-то сказать
источник

КБ

Константин Бобров... in Dart & Flutter по-русски
Спасибо за наводку
источник

C

Crystal in Dart & Flutter по-русски
Всем привет, ребята подскажите, если хочу написать приложение под небольшой интернет магазин, 30-40 наименований товара. Есть какие то сервисы которые предоставляют бэкэнд написанный уже, чтобы админка там была, заказы падали туда и тд, база данных хранилась. Firebase не предоставляет все это случаем?
источник