Программирование : Dart & Flutter по-русски
El Al
Вкладка появляется в лист вьев но не скролится
Mr T
Давай так. Ты на стаке кинь вопрос. И прикрепи код. Можешь без объяснений
Mr T
Ребят, фидбек нужен. Стоит создавать В Медиуме статьи о разборе вот таких кейсов и как правильно кодить на дарт?
Пашка
любые статьи полезны
Пашка
если написаны с умом
El Al
Главное что б информативные были
El Al
А весь Мейнскрин копировать?
Mr T
Только где тебе надо отобразить
Eugene Makei
Может есть какой-то проект на dart+flutter, который можно за основу real-time чата взять?
Mr T
[
{
"type": "link",
"text": "https://github.com/londonappbrewery/flash-chat-flutter"
}
]
Mr T
когда-то по нему учился
Пашка
мб подскажет что, через что реализовать «прочитал сообщение»
Пашка
как отследить появление сообщения на экране
Eugene Makei
Думаю, подойдёт. Только за Firebase свободолюбивые юзеры могут и заклевать
Mr T
а если хочешь свою базу, то можешь sql базу какую нить подключить
Mr T
ну попробуй в метод закинуть
Mr T
и сделай вызов метода по нажатию кнопки
Daniil Kostin
Народ подскажите как в андройде цвет нажатия кнопки задать. Забыл и найти не могу или в Google Cast не работает. Мне самый глобальный вариант нужен. Или цвет задать нужный или параметр.
Evgeny Cherkasov
[
"А что в дарте с вычислениями double? Почему ",
{
"type": "code",
"text": "0.81 * 0.9"
},
" выдает ",
{
"type": "code",
"text": "0.7290000000000001"
},
"?"
]
Mr T
Даниил, можешь создать вариабл
Mr T
Color ButtonColor = Colors.white
Mr T
а потом в кнопке задать color
Пашка
собсна в чем проблема?
Evgeny Cherkasov
[
"Ну должно быть ",
{
"type": "code",
"text": "0.729"
},
", нет?"
]
Mr T
блин, давай я щас ченнел свой создам в телеге
Пашка
другой калькулятор сказал?
Mr T
может рилли начну помогать статейками или ссылками на стаке
Mr T
double.toPrecision(decimalNumber)
Evgeny Cherkasov
сам столбиком умножил
Mr T
[
"вот ответ на твой вопрос ",
{
"type": "mention",
"text": "@echedev"
},
""
]
Mr T
double.toPrecision(decimalNumber)
Evgeny Cherkasov
не очень причем тут округление?
Темирлан
Спасибо, все заработало
Темирлан
А вот у меня такой вопрос, если я во флаттер проекте делаю изменения, то что нужно сделать чтобы андроид и ios проект обновились?
Темирлан
надо забилдить проект flutter?
Mr T
они автоматом обновляются
Темирлан
даже если xcode запущен, он также будет обновлятся да?
Mr T
у тебя должно заработать
Mr T
можешь на эмуляторах увидеть результат
Mr T
[
"нашел на стаке ",
{
"type": "mention",
"text": "@echedev"
},
""
]
Mr T
[
{
"type": "link",
"text": "https://stackoverflow.com/questions/58834678/why-multiply-two-double-in-dart-result-in-very-strange-number"
}
]
Mr T
[
{
"type": "link",
"text": "https://t.me/flatter_ru"
}
]
Илья Максименко
Элитный какой-то?
Mr T
просто чем здесь бесконечную переписку делать
Mr T
лучше кейсы буду разбирать
Mr T
для джунов думаю полезно будет
Mykola Shevchenko
Походу для избранных)
Vladimir
Всем привет! Будет ли достаточно для разработки macbook air m1 8gb или буду испытывать боль? а то в Минске 500$ разница в цене с 16gb версией.
RV
это где ты так берешь?
RV
у меня получилось около 200
Maxim Mityushkin
Лучше 16
Maxim Mityushkin
8 не хватает даже на линуксе
Maxim Mityushkin
По опыту знаю
RV
мак по-другому с памятью работает, когда linux начинает падать от нехватки оперативки, мак выжирает все дисковое пространство в своп - а SSD там довольно быстрый. Но 8 я бы все равно не брал
Vladimir
на онлайнере 1300$ цена за базу, а с 16gb в сложно найти, но просят в районе 1800$
Maxim Mityushkin
У меня NVMe тоже стоит на линукс-машине, не помогает ;(
RV
[
{
"type": "link",
"text": "https://justa.by/"
},
" - у этих ребят спроси"
]
Eugene Makei
А оно точно на этой архитектуре заработает? Смотрел обзор какого-то американца, кажется, там беда была с разными инструментами, кроме нативных
Eugene Makei
[
"Попробуй ",
{
"type": "link",
"text": "https://monoblok.by/"
},
"\nА вдруг ??"
]
RV
у меня уже много друзей понабирали, и я свой жду заказанный. Особых проблем нет
RV
а под ios на чем собирать?
Eugene Makei
Там же, наверное, ещё винтилляторы будут и панелька сенсорная за +$500
RV
а, маконенавистник? у эйра нет панельки и вентиляторов)
Eugene Makei
Там есть компания, которая выпускает виртуалку, даже выиграли у эпла суд недавно. Те (эпол) хотели закрыть их
Eugene Makei
Ну нет, я сам даже думал купить, но так привык к линуксу уже, что не смогу, думаю. Хотя ось прикольная, и даже загрузчик есть (т.е. можно и линукс рядом поставить)
Vladimir
вот именно что нет. 7GPU 16gb 256 в
Eugene Makei
Где-то читал, что Ctrl-X не работает в этой оси
RV
на М1 не поставишь. Но на PC я вполне предпочитаю манджарку
RV
начиная с 512 SSD GPU идет 8
Eugene Makei
Дебиан должен заработать, они под всё подряд выпускают, в т.ч. и арм
RV
ты сначала попробуй потом пересказывай там
Eugene Makei
А зачем вам столько гпу? Игры делаете?
Eugene Makei
Ну тогда тем более. А имакс тоже не соберётся, наверное?
Vladimir
это базовый конфиг кроме ОЗУ
RV
а при чем здесь ось и прикладной софт? почему не соберется?
Eugene Makei
Ведь у флаттера есть пакеты для этого редактора, очкнь удобно, ну мне было
RV
а вам работать или просто как сублимация?
Eugene Makei
По качану. Компиллятор там, набор инструкций, а имаксеры ещё и ассемблер иногда пихают
Eugene Makei
Мне? Мне понравился ноут, но есть нюансы. Вот просто решил поделиться, т.к. человек покупать собирается
RV
человек немножко больше в теме. Это как человеку собирающемуся покупать авто владелец велосипеда говорит - не бери, там тормозить надо педалью а не рукой
Eugene Makei
Ой, ну вообще некорректное сравненте
Vladimir
Спасибо, ребят! Буду искать\ждать 16gb версию:)
RV
[
{
"type": "pre",
"text": "Где-то читал, что Ctrl-X не работает в этой оси",
"language": ""
},
" - даа?"
]
RV
разница с 16GB+8GPU будет около 300 - смотри на SSD
Eugene Makei
Ну так это не ему писал. Ему всё по существу
Kuepf
Всем привет, использую NestedScrollView с SliverAppBar и в body SingleChildScrollView, хочу добавить loadMore функциональность. При добавлении контроллера к SingleScrollView перестает работать анимация/логика SliverAppBar`a (не прячется при скроле), кто то сталкивался с таким, или может кто знает как помочь, буду признателен?
admin
Всем доброго времени суток. Кто сталкивался с фризами при использовании WebView? Кто знает как это можно исправить?
Константин Бобров
У меня монгодб, но в связке с лупбэком
Nikita Kravchenko
Здравствуйте, в книге представлен пример кода. Мне все ясно, кроме последней строки в классе. Что она выполняет? Что значит "operator"? Что означает унарный оператор перед функцией? И вообще какой в этом смысл? Удалил эту строку и все работает. Обьясните пожалуйста
Вадим
определение оператора суммы для класс Point
Igor Butakov
Будет достаточно для работы с одним симулятором. Три одновременно уже будут тормозить (своп) а так кода или железки или один симулятор (верстку проверять), при этом открыт хром с кучей вкладок, пара-тройка visual studio code, android studio, figma, slack - никакого дискомфорта нет - все шустро эмулятор от гугла еще в разработке, не тестировал
Nikita Kravchenko
А можно подробнее пожалуйста
Степан Ревицький
2 роки на маку з 8 озу працюю, зараз пересів на мак з 16 озу, прирост відчув, але і на 8 не скажу що прям капец як сложна жити, +- середні проекти собирав за 1-2 мин
Igor Butakov
так же как и в C# или котлин в дарте можно определить свои операторы для типов в примере - сложение двух типов поинт - когда к координатам xy одного координаты другого добавляются
Вадим
Выдаст ошибку, если написать эту строку в классе и где-то в коде сделать Point(2,1)+Point(3,3)
Andrey
Позволяет из двух Point сделать один, путём складываниях точек, другими словами говорит как будет себя вести «+» при складывании двух Point
Nikita Kravchenko
Понял, спасибо большое всем. Я просто из этих, самых, "фронтендеров"
Igor Butakov
[
"вот кстати статья есть хорошая\n",
{
"type": "link",
"text": "https://habr.com/ru/post/130120/"
},
""
]
Nikita Kravchenko
Обязательно изучу
Eduard
Я только учусь кодить и такое впервые вижу, можете объяснить почему title зачеркнут?
Igor Butakov
deprecated, желательно использовать новые
Yaroslav
если нажмешь ctrl/cmd + click на конструктор, можешь посмотреть конструктор, вероятно свойство устарело, deprecated
Igor Butakov
title -> subtitle1
Eduard
Спасибо, уже нашел
admin
[
"Перечитал доки, помог этот код:\n",
{
"type": "code",
"text": "@override\n void initState() {\n super.initState();\n // Enable hybrid composition.\n if (Platform.isAndroid) WebView.platform = SurfaceAndroidWebView();\n }"
},
""
]
Vladislav [object Object]
Всем привет, в девтулсе дарта есть эмуляция плохой сети?
tdesc
в эмуляторе девайса вроде есть
Чел...
добавь расширение - error lens, там всё пишет
Eduard
я юзаю андроид студию, я тут еле нашёл шорткаты со stateless, error lens в плагинах нет
Eduard
думаю может мне вообще перейт на vs
Чел...
ну это дело каждого, но я думаю, что он лучше
Чел...
на сколько знаю в адроид студио лютая проблема - это плагины/рисширение
Amantur Berkinbayev
Всем привет. Может кто скинуть ресурс на любой проект с использованием bloc? На примере какого нибудь шопинг апликэйшна, с моком апи, тип авторизации и фетчинга и тд. А то, пока на примерах не увижу, самому дольше возиться придётся
Maxim Fominykh
привет, а чем официальный сайт плох, там есть примеры?
Amantur Berkinbayev
Я уже использую bloc, и все работает, но я сомневаюсь в правильности построенной архитектуры, ну и в целом реализацию возможно лучше можно сделать
Mr T
Можешь с блоками курс пройти
Mr T
[
{
"type": "link",
"text": "https://www.udemy.com/share/1013o4/"
}
]
Mr T
И стейт менеджментами
Amantur Berkinbayev
Спасибо
Sergey Hottabych
Блок - днище.
Amantur Berkinbayev
Альтернатива?
Amantur Berkinbayev
Аргументы?
Vladislav [object Object]
если смотреть на другие альтернативы, то с блоком на флаттере проще масштабироваться, больше кода тестируемо и тд
Vladislav [object Object]
и да, можно аргументы по поводу днище блока
Vladislav [object Object]
redux, mv* приходят на ум
Vasiliy Dmitriev
redux отлично масштабируется + хорошо отделяется бизнес-логика
Vladislav [object Object]
меня лично пугает глобальный диспатчер
Vasiliy Dmitriev
а что именно тебя пугает?
Дмитрий Симонов
Всем привет, подскажите, команда flutter pub get не работает в консоле студии, пишет Мне нужен вариант запуска из командной строки, я знаю что есть Tools->flutter->... Этот вариант не подходит
Maxim Fominykh
вероятно в PATH не прописан путь до бинарника
Дмитрий Симонов
А это где и как?
Maxim Fominykh
на винде в настройках компуктера
Дмитрий Симонов
Ссылку можно? Или хоть набор слов как нагуглить
Maxim Fominykh
Windows Add to path
Nurbol Y
Посмотрите любой видеоурок по Флаттеру в ютубе, там у всех Урок 1, про это
Maxim Fominykh
[
{
"type": "link",
"text": "https://flutter.dev/docs/get-started/install/windows"
}
]
Дмитрий Симонов
Оооокай, спасибо Разобрался, заработало)
Семён undefined
getx вообще странная штука это больше похоже на режим бога, чем что-то адекватное
Семён undefined
это мое мнение я не даун
Sergey Hottabych
Альтернатива — MobX (и, возможно, Get). 1. Блок очень громоздкий. Тебе придется описывать сам блок, кучу ивентов и стейтов (с наследованием), и barrel-файл. Кубит — это вообще примитивщина, ручное выкидывание стейтов (привет notifyListeners), и он не избавляет от необходимости описывать эти стейты. 2. В блок нельзя загнать фьючи, вместо этого как раз и приходится выкидывать стейты типа Loaded(), Failed(). Это накладывает ограничение — 1 блок = 1 фьюча. 3. Блок не несет никаких полезной функции, кроме как отделение бизнес-логики от UI. 4. Блок — это иммутабельность. Как только попадется чуть более сложная модель, будут проблемы. Вот пример, у тебя есть модель User, в ней список Streets, в ней мапа Houses, в ней мапа Rooms. Тебе нужно добавить 1 Room (или поменять в нем поле). Из-за иммутабельности ты не можешь просто взять и поменять поле. Тебе нужно пересоздавать модель User целиком с измененным полем. Придется юзать built_value или freezed (который тоже не работает с коллекциями). Затем, надо сделать, чтобы ты не берешь по несуществующему ключу, и что значение не null. И ты охренеешь от кода, который в итоге получится, чтобы залезать в эту иерархию и ребилдить модель. Что дает MobX: 1) Реактивность вместо иммутабельности. Observable поля и Observable-коллекции. Можешь их менять, менять коллекции и сразу видеть результат. 2) ObservableFuture и ObservableStream — можно засовывать фьючи и стримы прямо в стор. ObserverFuture вместо FutureBuilder, который отслеживает состояние фьючи. 3) Минимум кодинга. Достаточно описать только стор, остальное решит кодогенератор. 4) Реакции. Один стор может реагировать на изменение другого. UI может реагировать на изменения в сторе (выкидывание диалогов), можно задавать дебаунс при вводе текста, и т.д. 5) "Умный" Observer. Тебе не надо подписываться на переменные в сторе (как Selector), он сам видит observables внутри себя и ребилдит нужный кусочек. Вот первое, что на ум приходит.
Sergey Hottabych
Я писал проект на MobX — прекрасно и тестируется, и масштабируется, не надо тут. Масштабирование путем докидывания новых провайдеров со сторами в корень приложения.
Sergey Hottabych
Это еще большее говнище, даже комментировать не хочется. Если в вебе Redux хоть как-то оправдан тем, что в отладчике видно сразу состояние всего приложения, и можно возвращаться назад по стейтам, то во Флаттере он просто бесполезен.
Anton Kowalski
так я поддерживаю твое мнение
Anton Kowalski
я не хотел тебя оскорбить
Vladislav [object Object]
Тем не менее его выбрал яндекс для своей лавки) там вроде не бездари сидят
Sergey Hottabych
Корпорации, по-моему, соревнуются, кто более говеный и древний паттерн выберет ))
Vladislav [object Object]
Это бойлерплейта есть тож решения для блока если что)
Sergey Hottabych
Ну ты понимаешь, что "Яндекс выбрал" — это не аргумент.
Vladislav [object Object]
ну и все твои аргументы тож выглядят не оч
Sergey Hottabych
Приведи свои.
Sergey Hottabych
Только по фактам.
Vladislav [object Object]
Я так и не понял, что тебе в блоке не нравится кроме громоздкости
Vladislav [object Object]
Любитель мешать ui с бизнес логикой в одном месте?
Sergey Hottabych
Перечитай еще раз мой пост. Я все разжевал.
Sergey Hottabych
Отсутствие Observable-типов, как главный недостаток.
Sergey Hottabych
Иди тогда к Лису в чятик. Он на блоки молится. Днище из 2018 года.
MMM Stefan
не спорьте, getx - победил всухую)))
MMM Stefan
вот обломайте менч чем он плох?)
MMM Stefan
что очень приятно что есть отдельный канал где можно по нему поспрашивать и очень отзывчивый автор
Sergey Hottabych
Я его пока не до конца исследовал. Он однозначно выигрывает у MobX по отсутствию кодогенерации и привязки к контексту.
Sergey Hottabych
Ооо, что за канал, кинь ссылку
MMM Stefan
mox. redux - приплилы вообще с реакта, а не делались для флатера
MMM Stefan
[
{
"type": "link",
"text": "https://github.com/jonataslaw/getx"
}
]
|