Тот же changeNotifier если его правильно писать не хуже
kk boomer
Да вот не знаю, видел в вакансиях просят, сейчас делаю приложение и думал с ним намутить
Dmitry Bannikov
Ну они просят под свой проект
kk boomer
ну а что тогда посоветуешь лучше
Dmitry Bannikov
Если тебе для быстрого старта то провайдер лучше
Dmitry Bannikov
Он проще и понятнее
kk boomer
а в чем отличия
Dmitry Bannikov
В блок более фрагментированый
Dmitry Bannikov
Там под каждый чих делаешь блок
Dmitry Bannikov
Мне иза этого не нравится
Dmitry Bannikov
К примеру в ChangeNotifier + provider
Dmitry Bannikov
Хранилище одно
Dmitry Bannikov
Просто подписываешь слушателей к разным данным
Adel Gilyazeev
Блок это идея
Adel Gilyazeev
А провайдер это механизм
Adel Gilyazeev
По сути тоже идея
Adel Gilyazeev
Но первое это идеалогия
kk boomer
а есть че по материалам на провайдер
Dmitry Bannikov
По провайдеру много материала
Dmitry Bannikov
И все работает там с обратной совместимостью более менее
Adel Gilyazeev
У реакта например, почитай про контекст)
Adel Gilyazeev
Тут важно понимании идеи
Dmitry Bannikov
Как первый Паттерн то Provider лучше
Dmitry Bannikov
С провайдера потом при желании легко на Redux
Dmitry Bannikov
Блок тоже поймёшь , там в принципе тоже самое .
Dmitry Bannikov
У блока недостаток что в больших приложениях с ним тяжело будет
Dmitry Bannikov
Заблудишься в блоках
Пашка
дак с чего это
Пашка
скок пишу ещё не разу такого не было
Пашка
и так же товарища могу код открыть и все будет норм
Dmitry Bannikov
Может привычка
Дмитрий Щербаков
Наоборот в больших его фишка) все чотенько по полочкам
Dmitry Bannikov
Если долго с ним работать то он как дом родной .
Dmitry Bannikov
На вкус и цвет товарищей нет .
Dmitry Bannikov
Что идет и тем работаешь .
Andrey Unger
ты просто не умеешь их готовить)
Dmitry Bannikov
Блоком даже не умел
Adel Gilyazeev
Если долго с чем либо работать, то оно будет как пятка на носу
Adel Gilyazeev
Любой класс состояния делаем Listneble и потом делаем AnimatedBuilder и там строим зависимые виджеты... В самом классе в нужных местах дергаем notify
Adel Gilyazeev
Не осуждайте, я прост извращенец слегка
Andrey Unger
вот, мне всегда импонировала способность людей говорить плохо/хорошо о технологиях даже их не зная
Adel Gilyazeev
Сама идея блока по мне так заебись, прост у меня нет такого масштаба где он бы пригодился... Я вообще CLI приложения делаю...
Andrey Unger
блок отлично работает и без флаттера)
Dmitry Bannikov
Такие умные деньки обычно все в тихаря держат , а потом как древние языки , не найдешь спецов на них .
Adel Gilyazeev
Ну я пока в нем не нуждался... У меня парсеры, хуярсеры... Там как такового состояния нет, всё внутри
Dmitry Bannikov
Проблема технологий не в том кто-то умничает , а кто-то ошибается .
Adel Gilyazeev
Я вообще не понимаю чё такое бизнес логика
Timur M.
Учи блок Много где его просят Нужно знать А то приходит такой соискатель, Его спрашивают - нужно знать блок, умеете? А, но:- у вас говно, ща я вам на провайдер и нотифаеоры все перепишу. - Спасибо, до свидания, мы подумаем
Timur M.
Ну и не показывай ))))
kk boomer
ахахахаха
Andrey Unger
+1. Блоком не обязательно пользоваться, но уметь это делать необходимо даже для джуна я считаю
kk boomer
А есть линк на кой-то добротный материал по блоку?
Adel Gilyazeev
Так блок это разве не идея? Потому что нотифаеры и провайдеры это лишь инструмента доставки состояния и их изменения
Dmitry Bannikov
GitHub через поиск все что найдешь все твое
Adel Gilyazeev
Да вроде есть перевод офф сайта, или чёт такое... Там всё добротно... Просто как с Любой новой для себя технологией/науки, понимание приходит со временем...
Adel Gilyazeev
Главное не забывать повторять... Я который раз читаю про ФП одно и тоже, но всё равно кажется как будто что-то новое открываю
Andrey Unger
посмотри стрим Фокса по блокам, достаточно доходчиво объясняет
[
"что самое интересное, BLoC - ",
{
"type": "bold",
"text": "B"
},
"usiness ",
{
"type": "bold",
"text": "Lo"
},
"gic ",
{
"type": "bold",
"text": "C"
},
"omponent, но если исходить из понятий чистой архитектуры, он находится на презентейшен уровне и всю бизнеслогику из него надо выносить)"
]
Миша
Никто не сталкивался с такой штукой: создаю apk, все норм, но потом мне начинает писать, что Android App Bundle был собран в режиме отладки, хотя это не так
Миша
И еще, сейчас решил посмотреть, запустить flutter clean еще раз, но почему-то мои переменные все стали красными
Миша
блин, не дает скрин в беседу скинуть(
Миша
где объявлял переменные, теперь требует добавит late, а где просто создавался класс (Key key) теперь требует (Key? key), с чем это связано может быть? Ибо я погуглил, нигде ответа нет
Michael Lazebny
Наоборот) правильный блок обладает масштабируемой архитектурой и в больших проектах будет не сложно
Michael Lazebny
pub get
Миша
сделал
Michael Lazebny
А в чем проблема
Миша
но у меня именно переменные а-ля массивы стринговские подсвечиваются
Миша
могу в лс скрин кинуть
Миша
тут не дает
Michael Lazebny
Давай
Miller777
А это не после обновления Flutter?
Ilya Platonov
Ребят, подскажите, есть ли какой-то быстрый способ обернуть виджеты в другой виджет? Нужно почти все виджеты(кнопки, поля ввода и т.д.) где происходит взаимодетсвие с полmзователем обернуть в виджет Semantics
Yerassyl Maikhanov
mixin?
Ilya Platonov
Подробней можно?
Yerassyl Maikhanov
ты можешь написать mixin на виджет и его просто импортом прописать
Yerassyl Maikhanov
например mixin на StatefulWidget и там чуть изменить метод build
Ilya Platonov
понял, попробую, спасибо
tdesc
он не находится на презентейшн, он находиться над ним. вообще проще всего познакомится с unidirectional data flow и mvi
Yerassyl Maikhanov
[
"из-за чего такая ошибка вылетает? \n",
{
"type": "pre",
"text": "lib/pages/home/home_page.dart:10:5: Error: Type argument 'Object' doesn't conform to the bound 'BlocBase
Yerassyl Maikhanov
я понять не могу, в этой мапе я храню 3 блока, 2 из них валидные, а 3-й ругается с ошибкой
я понимаю, но в чем именно, если блоки 0 и 1 валидные а 2 ошибку выкидывает
tdesc
в дарте есть такая штука < > классы шаблонные с типом Т
tdesc
вот неплохо бы везде прописать
Yevhen Ivanov
Первый и второй валью одного типа, а третий иного
Yerassyl Maikhanov
окей я раскопал, не применяйте var для словарей, он каст не мог нормально сделать
Євгеній Сергійович
Сколько мегабайт может хранить shared_preferences?
Yerassyl Maikhanov
кажется 5-15 мб
Євгеній Сергійович
Я вот слышал вроде хром уже sqlite подерживает
Миша
неа… Я вообще не понял, что произошло. Думал, что флаттер обновился, проверил версию, оказалось, что нет. А дальше пошла в ход цыганская магия:) Перезапустил VSCode и все заработало
ManBearPig
[
"Тут как откуда такие данные ?\nМакс размер вроде как равен строке, которую туда положили \n",
{
"type": "link",
"text": "https://groups.google.com/g/android-developers/c/SVTxgNi3HyE"
},
""
]
Yerassyl Maikhanov
я как то пытался туда сохранять картинки в base64, больше чем 15мб я не смог положить
ManBearPig
[
"Ну это из андроида, и это хранилище для каких то небольших объёмов, для остального- есть бд.\nНа сайте об ограничениях нет ни слова \n",
{
"type": "link",
"text": "https://developer.android.com/training/data-storage/shared-preferences"
},
""
]
ManBearPig
По сети получали ? Иначе , сложно представить, зачем )
Yerassyl Maikhanov
да) там писали прилагу под 3 платформы, и не могли sqlite использовать, сначала хотели в SP засунуть, потом нашли hive и его использовали)
ManBearPig
Зы sqllite если по сети, ..... И то, 15 мб на 1 объект......) Это практически raw формат ) jpg это каким разрешением должен быть , что бы 15 мб весил, с учётом, разрешения телефона )
ManBearPig
Ну если писали уже в рамках flutter то да....web не поддерживает
Yerassyl Maikhanov
не помню чтобы на один, я помню что потом перешли на hive из-за чего-то с ограниченностью памяти
ManBearPig
Точно ограничения по памяти ? Что то из области фантастики, если честно )
Yerassyl Maikhanov
я сейчас и не вспомню, это было года 2 назад, но я помню что я точно видел где-то эти ограничения 5-15
ManBearPig
sqllute отличная бд, но есть у неё один недостаток, когда нужно не транзакцией сразу n элементов сохранить , а по 1 , с n периодом == будет подтормаживать
ManBearPig
Ну, мб кто то написал , но в документации, ограничений как то не видел .... Ровно как и не видел потребности в изображениях по 15мб)??
Miller777
Было такое, какое-то шаманство помогло, а какое - уже не помню.
Помню, что другую Flutter точно не помог: я накануне обновил версию Flutter и грешил на это.
Dmitry Bannikov
есть ли виджет во flutter в который могу положить функцию и прикрерить child ?
Dmitry Bannikov
чтото вроде ontap только без нажатий автоисполнение
Dmitry Bannikov
checkbox без галочек
ManBearPig
Написать самому можно ) В чем вопрос то ?
Dmitry Bannikov
рано мне еще писать самому
Dmitry Bannikov
зеленый еще
Dmitry Bannikov
пока на всем готовом выживаю
ManBearPig
Ну ответ тогда был выше,.... ну и успехов в обучении )
ManBearPig
Вот это зря) Имхо)
Dmitry Bannikov
чтобы писать самому нужно очень хорошо изучить дев тулс
ManBearPig
Как Вы планируете развиваться если на попи-пасте сидите?)
Dmitry Bannikov
не копи паст
Dmitry Bannikov
скорее собери конфетку из того что есть и из того что знаешь
Нужно для начала основы, хотя бы языка , отложить в сторону записи индусов, взять документацию/codebook ну или курс, тут многие хвалят нашего форумчанина)
Dmitry Bannikov
вот плеер мне нужно вынести его влючиние чуть ниже
Dmitry Bannikov
там где проверку на иконку хотябы
Dmitry Bannikov
или мне его из виджета в нотифаер убрать и там включать
Dmitry Bannikov
еслибы можно было чемто обернуть child и там функцию написать
Alexandr Drobyshev
чем просто файлы не подходят?) получил по сети бейз64, перевел в жпг, положил в файл image.jpg ??
Alexandr Drobyshev
или в файл писать тоже незя?
Dmitry Bannikov
легче изучать чужой опыт , почему сразу индусов , есть готовые примеры реализаций.
Dmitry Bannikov
flutter это тоже большой копи пас , который все используют
Dmitry Bannikov
хочешь развиватся пиши свой движок
Alexandr Drobyshev
я писал свои двидки пока учился и разирался шо за паттерны. и для чего))
Alexandr Drobyshev
а для работы потом лучше юзать шо то что пишут больше чем 1 чел и всем миром правят))
Добрый день. Наверное, простая задача, но не понимаю, как сделать плейсхолдер для такого текстового поля ввода 4-значного кода. Когда ничего не введено, то 4 дефиса, а по мере заполнения поля они меняются на символы
Dmitry Bannikov
решил проблему засунул фунцию которая делала свое в блок child
прогнать через for, конвертируя каждый элемент, заодно проверяя возможные несостыковки
isa abuflorinda
спасибо! конвертить ключи текущего можно? не создавая новый мап?
isa abuflorinda
mapDynamicDynamic.forEach((k, v) => mapStringDynamic[k.toString()] = v); вот так получилось, спасибо)
Alexander
в дарт нельзя в константном конструкторе сделать как-то так?
Michael Lazebny
лучше .map
Олжас Сулеймен
сделай геттер, какой смысл если и так лист хранишь и класс не мутабельный
Alexander
просто думал в конструкторе один раз инициализировать и все
Олжас Сулеймен
как завезут выполнение на этапе компиляции, возможно можно будет
isa abuflorinda
это что имеете в виду?) другой синтаксис? без цикла?
Alexander
А подскажете еще? Я недавно с дарт. Что будет в случае если onChange будет null? Ошибка выполнения или просто ничего не будет?
Артем
Проверь) ну а вообще налл там вроде как не может быть. Если это ончендж из виджета
Alexander
не, я его опциональным аргументом передаю в функцию
Michael Lazebny
Прочитай про функцию мап
Артем
Весь код не вижу. С того, что понял скорее всего - да, упадет прога. Но можно же банально if дописать
Pavlo Baraniuk
Всем привет как мне переместить кнопки что находятся на экране ( на карте) использую Google map. Подскажите пожалуйста
Пашка
свои нарисуй
Pavlo Baraniuk
Понял спасибо большое
Anton
ты можешь из убрать
Anton
насчет переместить не знаю
Артем
Падингами двигать можно
Pavlo Baraniuk
Ну это да
Pavlo Baraniuk
Сейчас попробую спасибо
Alexander
проверил. ошибка будет ошибка
Alexander
спасибо
John Travolta
пробник бесплатно будет?
Tim
А вы интернациональная компания? ??
Tim
Чай, печеньки в офисе есть? Без этого бессмысленно программистов завлекать
Michael Lazebny
И бесплатные курсы английского
Anastasi
А скока платят?
Anastasi
??????????
Tim
??????????????
Anastasi
Чисто моя классика ????
Sasha
А может, тетрис на сокетах ?)
?
Есть ли во флаттере выпадающий список с картинками? Нужно сделать форму, где будет несколько полей, и среди них вып. список, который будет содержать элементы (картинка + текст)
CtrlPy
парни подскажите пожалуйста, почему у меня emoji неработает в vscod + dart?? ему нужно что то дополнительно ставить или в чем проблема?
Nikolay Korolev
ты можешь вернуть в DropdownMenuItem-> child Row - в котором будем картинка и текст