Flutterやろうよ!!! 3
レス数が1000を超えています。これ以上書き込みはできません。
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512
ようこそFlutter野郎どもよ!!!
軽い開発環境でモバイルアプリ開発ができるなんて最高じゃねえか
AndroidもiOSも両方行ける、まさに漢のためのツールだな
https://flutter.dev/
前スレ
Flutterやろうよ!!! 2
https://mevius.5ch.net/test/read.cgi/tech/1611976959/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured hot reloadとhot restartが優秀過ぎて他のフレームワーク使う気が無くなったわ KotlinでAndroidのサンプルプログラム作ってるけど、ブレークポイントで止まらない。
visualstudioみたいに一行ずつ実行して変数の値をチェックとかできないの? 目的がFlutterオンリーだとAndroid Studio+FlutterプラグインよりIntelliJ IDEA+Androidプラグイン+Flutterプラグインの方が良かったりする?
一旦VSCodeは置いといて >>9
プラグインじゃなくて、デバッグのやり方を聞いてるんだが、、 >>10
kotlinオンリーなら普通にAndroid Studio使えばよろし。 >>11
そうじゃなくてブレークポイントで止めて、一行ずつ実行できないか聞いてるの!
エラーメッセージも出さずに、いきなりアプリが落ちるから、その原因を調べたいんだ。 >>12
できるかできないかと言われるとできる。
しかしflutter関係ないので他所へどうぞ。 あれ、DocumentProviderとかとやり取りする場合どうするの??
DocumentProviderからStreamというかFileDescriptor返されるんだが
どうすればいいの??
dartちょっとゴミすぎないか? 元々Web向けの言語として設計されたとはいえ、プラットフォーム広げていくならFileDescriptorぐらいさ.. image_pickerプラグイン絶対ピックした画像、ローカルに一旦コピーしてるだろ
同じやり方で動画とか巨大なファイル扱ったらさすがに.. flutterは確かに他よりUI作るの楽になったし、プラットホーム依存の機能をつかうとなると既存のプラグインなかったりするとめんどくさいのはわかってんだが(最初flutterで作ってたんだが、まさかぁ、ファイル絡みでこんな事になるとは.... macにflutter入れるだけで1日かかった
androidのエミュレータが動くなるまでメイドラゴン苦労した 確かにPlatform依存するところでたまにピンポイントな弱点はあるね。
そういう場合は自分でプラグイン改造するなりイチから作ればよろし。
それを補ってもなおflutterの優位があると思ってる。 htmlをパースする必要があって、まさしく素敵なのがあるんだが
https://pub.dev/packages/html
ただ、ちょっとshiftjisのhtmlがあって、このライブラリ標準の
Encoding.getByNameメソッドで検索するんだけど
Encoding.registerとかで新しくエンコーディング追加できない
googleのアホ技術者うんざりしてくる で、ちょっとファイルダウンロードとかするわけよ
今は無節操にダウンロードしてるから、セマフォで同時ダウンロード数制限しようと思うんだけど
https://pub.dev/packages/semaphore
あれ、discontinued??
あーだりー
標準で用意しとけよなクズgoogle技術者 UI作るのは楽になったけど別のクソ見たいのと戦う羽目になってる
そういえば、firebaseのflutterFireだっけ??
これwindowsやmacでも動くようになるの??
遠いい将来?? そういや、EncodingクラスのメソッドってasyncじゃないからMethod Channelでプラットホームのエンコーディング呼んで新しいエンコーディング追加できないんだよな??
FFI使えって??
ぷっ >>26
プラットフォームのエンコーディングとかイラネ なんか、flutter使えないエンジニアって、使えない
試験みたいなwww >>17
単なるネットワークファイル転送+ファイルコピーならまだいいけど、iOS版の実装は
勝手にファイルの中身を加工していてExif情報の一部が失われる。 当然、ファイル
サイズやハッシュ値も変わる。 >>27
開発経験無いけど業務命令でflutterでアプリ作んないといけないんだよ
これから毎日使ったこともないmacとflutterでダラダラとアプリ開発の勉強
ほぼ遊び >>31
Windowsに慣れてるならそっちでいいんではw >>32
iPhoneのアプリリリースにはmacが必要だと聞いたけど?
社内用の業務支援アプリだからリリースはしないかもだけど >>33
Androidエミュって書かれてたから社内で使うのもAndroidかと思ったわ >>33
社内のiPhoneに配布するの、そこそこ大変だぞ。
flutter for webとかでWebアプリにした方が良いかもな。 >>35
webアプリの話もしたんだけど上がスマホアプリになぜかこだわってるんだよね、これが
ノウハウたまったら外販も視野に入れてるとか言ってるけど俺には無理だ >>31
普通の仕事しながら合間や仕事終わりに勉強している自分にとって
その環境はうらやましい >>34
もちろんAndroidユーザーもいるからAndroid用のアプリも必要だよ
だから両方に対応できるアプリをflutterで作れと言うのが上の指示 >>33
CodeMagic使えばMacなくても何とかなる。
やったことないけど。 >>36
PWAとかでお茶を濁したほうがいいぞ。
iOSアプリでストアに載せない配布はEnterprise Programが必要。
もう既にDUN登録したりしてるならすまん。 >>41
詳しくないんだけど、EnterpriseってほぼほぼオワコンでBusiness Managerに取って代わられたと思ってたんだけど違うのかな? >>30
そっかやっぱ罠があるんだね
ファイルダウンロードしてちょっと保存機能つけようとしただけなのに >>41
PWAはまだ検討してないね
いずれにしても上司と担当役員がよくわからずにスマホアプリを開発すると言ってるからもう方針変更はできないんじゃないかな
社内配布の方法は全くノープラン
そもそもアプリの仕様すらはっきり決まってない状況だし
未経験の俺に果たしてアプリなんて作れるのかね? >>42
ABMはあくまで端末管理よ。
カスタムApp(旧CustomB2B)を使うつもりならABMで撒けるけど、審査あるので気楽には出せない。
>>44
お金掛かるし毎年お布施発生するから気をつけなよ。
Flutterでアプリ作ること自体は割と簡単。 >>46
VBかじったぐらい
応用情報技術者持ってるってだけで指名された
ちなみにうちはインフラ関係の会社で俺が所属してるのはITとは無縁の部署
当然アプリ開発どころかプログラミング経験者も周りにいない状況 Appleのくそ殿様商売にまんまとはまる必要ないし
くそ使いにくいUIUXを我慢しながらMacを使う必要もない
CMもきもすぎてむり
Macもってるなら動作確認とアプリリリースだけ使って
普段は慣れてるWindowsかLinuxで開発すればいい PWAは検討してないならしてみるといいけど
起動速度とか違うし体験も違う
普通のスマホアプリ並みの体験を目指したものではあるけど
サービスワーカーとかキャッシュとか先読みとか
駆使しないとそこまでの体験にならないから苦労が逆に増える 新たに参加したプロジェクトでpedantic_mono使われてるのがイタいけど途中参加だから言いにくい
個人名入りのパッケージなんてセンスが小学生みたいで寒すぎね? >>50
言いにくいというかその理由言ってどうにかなるのか?笑
中身が問題なら途中からでも言ったらいいのでは? >>50
言いにくいというかその理由言ってどうにかなるのか?笑
中身が問題なら途中からでも言ったらいいのでは? うわアプリのパッケージ名に企業のドメイン入ってるわ もっと技術的なネタないの?
不満でもいいから技術的なネタぶちまけようぜ
俺は>>15からぶちまけたけど残念ながら話広がらなかったけどさ >>50
自分のこと大好き人間か、自己主張が過ぎる人なのかもしれない
Twitterで見たことあって自己主張の強さは確かにうかがえたけども
つーか日本でその人の信者しか使わなさそうなそのダサいやつを
わざわざ選んじゃうやつの趣味の悪さand崇拝っぷりがゲロキモ そうか?自分のプリセットを自分の名前で公開するとか普通な気がするけど。
これがアプリなら流石に自意識過剰だとは思うけど。
eslint-config-airbnbみたいな感じでしょ。
同じようなの結構居るよ。
嫌なら別に同じ内容のを、オシャレな名前つけて公開しても良いと思うよ。 >>55
君のは技術的な話ではなくただの愚痴になってるからスルーしてるんだ
イライラするのは構わんが、それをスレに持ち込んでは技術的な話も広がらないだろう >>50
そだな、flutter_lints使いましょうって言えばいいか
>>54 >>57
企業の名前はブランドだからおk
>>57
センス悪い人のをコピーしてまで使いたくないでしょお笑 >>56
そう、ハンドルに誕生日含めちゃってるところからも自己主張の強さをかんじるな
>>58
比較にならない偉大なリーナスの名前をつかってむしろ馬鹿にしててわろた 信者にとっては、女王様の黄金水みたいに有難く頂くものかもしらんけど、元々あった
Google謹製の pedantic パッケージをforkして、ちょっと手を加えたとかその程度じゃ
ないの? 全く同じ内容のものを作って、好きに名前をつければ良いと思うが、まあ二番煎じだと言われるだろうな。 >>44
コロナアプリの顛末からわかるように、アプリは維持するのが大変なのよ。 コロナ接触確認アプリの失敗原因は
スマホアプリかPWAかってところじゃないんよ ・各OSのAPIの差異を吸収できなかった
・デバッグが足りてなかった
・何がどうであれXamarinはク(ry >>64
アプリの維持が大変とか言える状況になるかなー
たぶんこのままだとまともにアプリできないだろうし バージョンアップしなけりゃ数年に一度の足切イベント以外の保守維持は大変じゃない。
問題は年イチぐらいでバージョンアップしないといけないアプリは隔世の感があって色々と大変。 >>59
ちゃんとした話のネタがなくて黙るくらいなら、まだ技術的な不満、愚痴でも書いた方が話が広がるかもしれないって言ってるのに、前提を覆すようなちゃんとした話のネタ要求されても.... > dartちょっとゴミすぎないか?
> googleのアホ技術者うんざりしてくる
> とかするわけよ
> あれ、discontinued?? あーだりー
> 標準で用意しとけよなクズgoogle技術者
> 別のクソ見たいのと戦う羽目になってる
> FFI使えって?? ぷっ
他人のこと言えないけど口が悪すぎて頭おかしい人にしか見えないから相手したくない そこは好きにすればいいと思う
つか、愚痴なんだら多少悪口いれてるし
>>30みたく反応する人はしてくれるし
俺は愚痴で口悪くても「興味あるネタ」であれば反応するし
もちろん、喧嘩になるようなか流れになるならやめるけど
俺的には全くないよりかはまし もちろん、やりすぎはあれだけど
つか、愚痴、不満を丁寧な言葉で書けって??ww あれ、レス乞食とかとやり取りする場合どうするの??
使う奴の無知とかiOSの挙動すらGoogleのせいにされるんだが
どうすればいいの??
言葉遣いもちょっとゴミすぎないか? >>72
愚痴不満を書くスレではないから他所でやってくれということだ
多分君に伝わらんだろうが コロナ対策アプリを、Xamarinで作ろうとしたのは本当に馬鹿だよな
オープンソースで善意の人を集めたいなら、クロスプラットフォームなんて採用せず、
javaとSwiftを使うのが最善だったと思う
せめてFlutterかReact Nativeにしておけば… >>74
その話するとここに何書いいい駄目は君が勝手に決めただけ Flutterのソースコードを確認したら1ファイル1クラスでもなくて、
ファイル名とクラス名を合わせる必要はないのですね
メンテナンスしづらそう ファイルとクラスの対応を要求される言語の方が少数派だが >>77
今時クラスを検索するのにファイル名を使う必要もなかろう。
それより関連するクラスが1ファイルにまとまっていたほうが可読性が高い。 ●7.27 オハイオ州の看護師、中共ウイルスで入院した全患者がウイルスワクチンを2回接種していたことを発見
https://gnews.org/1435812/
●7.4 12歳の子供がCOVIDワクチンを接種後、様々な苦しい症状を経験
https://gnews.org/1370868/
●デルタ株はワクチン打ってようが、いまいが、発症したらマスク必要!
JPSikaDoctor (医師)
ワクチン打っても他人に移す
://youtu.be/5hqfoZGFo0o Flutterのwidgetとelementとrenderの関係性、ややこしいと思うわ
内部構造をもうすこし隠蔽して使いやすくしてほしい
フレームワークの寿命がわからないから内部まで調べる気力がわかない
このレベルのコードを読むのは勉強になるかもしれないけど まぁ、それはあるわな
Stateクラスも最初、initState、disposeから始まって
didUpdatedWidgetと増えていき
didChangeDependenciesでaddPostFrameCallbackに到達する providerで管理しているデータをAndroid Studio上で確認する方法を教えてください >>81
意識的に使うとき以外は気にする必要ないくらい隠れてるじゃん?
隠蔽するともっとわからなくなるでしょ
>>82
最初から見えてるのに「増えていき」と表現してる意味がわからない
addPostFrameCallbackはStateクラスじゃない null safetyとやらのせいで過去のサンプルコードがエラーになるんだが
Flutter Studioのコードもエラーになるし >>85-86
pubspec.yaml ファイルを編集して、SDKバージョンを落とせば、null unsafetyに
なるけど、null safety対応のパッケージと混ぜて使うと、「required」とかの追加
された予約語や、値がnullを取るかもしれない変数に付ける「?」とか、エラーに
ならん?
> environment:
> sdk: ">=2.12.0 <3.0.0" # null safety
↓
> sdk: ">=2.7.0 <3.0.0" # null unsafety
依存パッケージが限定的なサンプルコードならいいけど、null safety/null unsafety
どっちでも通るDartの書き方があるならぜひ知りたい。 自分でnull safeにできないと今後困るので自分で変える
サンプルの作者に「対応してよ〜」と頼む
のどちらか > null safety対応のパッケージと混ぜて使うと
> エラーにならん?
プラグインじゃなければならないんじゃなかった? バージョン指定用のコメントをファイル冒頭に付ければいい
具体的にはnull safetyを外したいやつに
// @dart=2.9
をつければ良い
これによる不具合が出るというのは、それはもうnull safetyに対応してないとおかしいわけだから大丈夫なはず
外部ライブラリの場合は追加しないといけないから多い場合は全体のバージョンをpubspecで変えたほうがいいけど、そういうサポートの止まっているライブラリはあんまり使うべきでない気もする null safety外すと負けた気がするからとりあえずがんばる
null以外にも理解できないエラー出まくりだし
本当にアプリなんて作れるようになるのか不安しかない flutter upgradeしても
既存のFlutterプロジェクトも新しいFlutterのバージョンが適用されてますか? >>92
プロジェクト毎に pubspec.yaml ファイルを編集しないとダメ。 >>90
サポート止まってるライブラリでも、github上でforkされた先が null safety 対応になって
いたりするけど、これってローカルにgit cloneせずに、 pubcpec.yaml ファイルの記述とかで
参照先を非公式リポジトリに指定ってできるんだっけ? 以前github上でしか公開されてないwindow_sizeというコンポーネントを
使ったことあるけど、そのときは以下のように書いた。
window_size:
git:
url: git://github.com/google/flutter-desktop-embedding.git
path: plugins/window_size
ref: e48abe7 頭のスペースが消えたけど、適宜字下げしてちょうだい >>95
さんきゅ。
その書き方でもよさげだけど、githubのリンク先を辿って見てたら、書き方の説明があった。
ttps://github.com/google/flutter-desktop-embedding/tree/master/plugins Rustのメモリ安全性はボローチェッカーによって担保されているが、
Nimと比較してRustはタイプ量が多い事により限りなく低い生産性と
C++のような高い難読性、超巨大なバイナリ生成性能を兼ね備えています
Nimはバージョン1.5.1でRustのボローチェッカーに似た「View types」が実装されれば、
GC無しのView typesで参照の有効性を検証することによってメモリ安全性を保証しつつ
限りなく抑え込まれたタイプ量で高速化したCのソースコードを吐き出せます
Nimソースコード ==nimコンパイラ==> Cソースコード ==Cコンパイラ==> バイナリ
なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?
Nimの実験的特徴
著者: アンドレアス・ルンプ
バージョン: 1.5.1
http://nim-lang.github.io/Nim/manual_experimental.html
Nimは限りなく抑え込まれたタイプ量で高い生産性とPythonのような高い可読性を実現し
ているにもかかわらず、高速なCのソースコードを吐き出せるのでC言語でリモートワーク
されている方は割り振られた仕事が早く終わっても終わってないふりをして怠けることができる
「怠け者とはこうあるべきだ!」と言うとても大事な事を Nim は我々に教えてくれます > なので、nimコンパイラが通った時点でメモリ安全性が担保されませんか?
当初はC言語だって、アセンブラソースを出力するプリプロセッサだったわけだが? そいつ他スレにも同じこと言ってる荒らしだから無視でオッケー flutterのイマイチなところは、素人でも何となく作れてしまって妙なアプリになるとこ まさに今素人である俺が社内用の業務支援アプリという妙なアプリを作りつつあるところだ
やっといろんな事が分かってきてとりあえず画面遷移ができるだけのモックができた >>104
ビジネスモデルはviewModelに入れてChangeNotifierしろよ。って、訳わからんよな・・ ビジネスロジックはViewModelじゃなくてModelだぞ
そーいう勘違いしてる人が教えるからファットなViewModel書く人が多いのか
ChangeNotifierするって言葉もおかしい visualstudioに慣れた俺からするとXamarinのほうが遥かにやりやすい。
C#とWPFの経験があれば、割と簡単にアプリ作れる。 >>108
xamlの方がめんどくさいだろ
ConverterからVisualStateManagerやらビヘイビア
しばらく離れると忘れるわw
もちろんコードビハインドできるけど
flutterならdart覚えてりゃいいだけだし楽 二次配列をDataTableで表示するやり方がわからん
データの数だけbuildすれば良いのか? >>107
Modelにビジネスロジックなんか書かないだろハゲ >>112
どこでそんなデマ覚えてきたんだよ…
mvvm勉強し直してこい ただのContainerの内部に仮想的に巨大な平面を与えてスクロール可能にできませんか?
ViewportをContainer自身より大きくすると言うことです
目的はCustompaintで非常に大きなものを扱いたいということなのですが、スクロールができないと移動がかなり大変なんです InteractiveViewerでどうよ?知らんけど >>113
viewModelを使ってるからといってMVVMと言った覚えはないが、flutterのMVVMの場合、Modelを作ってビジネスロジックを書いてもファイル管理が面倒になるだけ、金額計算などはCloud Functionsなどで行う(Google firebase公式 >>115
すみません。スクロール可能というか、スクロールバーをつけて移動を高速に行いたいんでした。InteractiveViewerでやってみたことがあって、スクロールバーの付け方がわからなかった記憶があります。とりあえずもう一度やってみます ビジネスロジックを書くならそれはViewModelじゃないから呼び方を変えたほうがいい >>116
横からで悪いんだが、詳しくないので教えてください。
ビジネスロジックをクラウド側に書くって事は通信環境のない場所ではまともにアプリ動かないって理解でOK? >>116
mvvmでないviewmodelってなんだよ。
たまたま名前が一致しただけだってか?アホかよ ビジネスロジックをViewModelにといいながらFunctionsにしてるというのも矛盾してておかしいね あ、わかった
その人ビジネスロジックとプレゼンテーションロジックの違いがわかってないんだね >12
普通に出来るぞ。ブレイクポイントの前で落ちてるかもね 非商用アプリだと、ビジネスロジックがなかったりするの? >>124
一般的にUIを除くそのアプリ固有機能をビジネスロジックと言うので商用非商用は関係ないよ。
例えばオセロゲームで言うと思考ルーチンがビジネスロジック。 まあ難しい言葉使いたがるってのは傾向としてはあるよな
格好いいからな >>127
まあ世の中の全員がエンジニアじゃないからね。 >>129
初回セットアップの話だけどAndroid SDKのライセンス同意にJDK8が要る。
一度同意すれば以降はJDK8より上のバージョンでもエラー出ない。 まあ世の中のエンジニア全員がMVVMとか理解できないからな 今どきのアプリ開発者でMVVMを理解してないのはやばいな
あとフラッタラーをエンジニアと呼ぶのは違和感ある そろそろ新しい本出してほしいね
riverpodの紹介とかも入れてほしいね
ちなみに「はじめてのFlutter」はゴミです
本当に買って損しました
最後のチャットの作り方につられて購入しましたが
いざやってみるとただファイルのコピペするぐらいで
1からチャットを作るわけではないのでまじでゴミです
初心者が入門的に学ぶならそれ以外の箇所は買ってもいいかなとは思います。 そろそろ新しい本出してほしいね
riverpodの紹介とかも入れてほしいね
ちなみに「はじめてのFlutter」はゴミです
本当に買って損しました
最後のチャットの作り方につられて購入しましたが
いざやってみるとただファイルのコピペするぐらいで
1からチャットを作るわけではないのでまじでゴミです
初心者が入門的に学ぶならそれ以外の箇所は買ってもいいかなとは思います。 ネット上に初心者向けの記事がうんざりするほどあるし
公式のページもCookbookなど充実してるのに本買う必要ある?
ああいう本ってまさに情弱向け商売よなー
推奨じゃないRiverpodを載せてる入門本があればそれはゴミ なぜアンチしにくるんだ
riverpodは推奨だぞ Riverpodがいいと思わないから書いてる
特に初心者には不向き
Riverpodのアンチで来たんじゃなくてFlutterのスレだから来たんだよ
公式に推奨されてるのはProviderのみだよ
Provider以外は主だった方法として紹介されてるだけだから勘違いしないでね riverpodに差し替えてもアプリはよくならないもんね
習得しようとして何日間も悩んでる人みると他のことに時間使った方がいいんじゃねと言いたくはなる 確かにProviderは公式に推奨してるな
作者自身が設計ミスったって言ってriverpod作ってるから、コミュニティ的にriverpod推奨かと
Providerは、ウィジェットツリーの理解が進んでいない状態で静的解析でひっからないエラーがランタイムで発生するので初心者を悩ませると思う
公式推奨で根強い人気もあるが、ランタイムエラーをだす要因を導入することは、予めNullが入るか判断してメンバ呼び出しを厳格化したNull-safetyの流れと相反する気がする
一方でProviderは単純で使いやすく、ウィジェットツリーの理解が進み、Riverpod以外の状態管理パッケージの使い方もある程度理解できるが、Riverpodは独特な使い方をするからそれらが得られないというのもわかる
あとアンチの件はフラッタラーをエンジニアというのは違和感とかいう方の話ね providerでnull使えるように最近変更されたのはその修正じゃないん?
> Riverpodは独特な使い方
そこが問題だとおもうし推奨にならない理由の一部もそれだとおもう 単にRiverpodが開発中だからでしょ?
非互換変更繰り返してる物を推奨できるわけがない 理由の「一部」と書いたでしょ
平易じゃないのもよく指摘されてるところだよ
つかわないひとが世界的には多いのは色々な理由があってremiさんの姿勢態度を嫌うひともいるね
おれはどっちでもいいけどそんなとこに時間つかいたくない >コミュニティ的にriverpod推奨かと
一部の人が気に入って使ってるだけじゃん
>初心者を悩ませると思う
Riverpodはもっと悩みポイントがおおいよ
ここ一か月くらいのネット情報で見かけたお悩み
*覚えることがおおい
*使い方が頭にはいってこない
*Providerの使い分けが分からない
*Riverpodの基礎が分かっても大規模アプリへの応用が分からない
*MVVMと合わない
*合うアーキテクチャーが分からない
*思ったのと違うときに破棄されちゃう
「Riverpodで〜する方法で悩んでたけど〜を〜すればいいのか!」系の**発見**をしてる人もちらほら
正しい使い方を見つけにくいパッケージなんてそれだけで失敗でしょー 先日発売された本、ランキング1位を獲得したか。
今年度後半は怒号の出版ラッシュくるかな。 >>146
同意だけど
こういうのは声が大きなやつが勝つから
riverpodを推す声のでかいやつと何も考えずに声の大きなやつに従うやつ
vs
riverpodを批判してるやつ
どうみても前者の方が声大きいからなw 気の毒に思って忠告してるのだから勝ち負けはどうでもいいよ
耳を傾ける人にだけ届けばよくて、それ以外の人のことなんか知らない
でかい声に従う判断して苦しんでも自業自得よ ITの本買ったらセンスないってのは同意しないけど
Flutterは本よりUdemyのビデオの方がオススメ Reduxパターンに似てるから使いやすいんだが、それを使ったことなければ使いにくいんだろうよ 頑なに本を拒否するやつって、自分が貧乏だからケチってるのが理由なだけだろ riverpodよりいいmvvmフレームワークがあるなら教えて欲しいな、流行りそうなら乗り換える 流行気にするのはいかにも日本人的でダサいな
フレームワークか
Stackedと後1つか2つあったな
使ったことないからいいか知らんけどフレームワーク的なやつだと選択肢がほとんどないからしゃーない 流行りがダサいとか厨二か、夏休みは終わったぞ?
ドマイナーなフレームワーク使うとか学習コストかかる上に無駄になるリスク高過ぎなんだよ。FluttetやめてXamarinからやり直してこい 流行りがダサいと言うのがなんで厨二?
厨二か?って言い返せばマウントとれると思ってる奴こそ厨二くさいのだが・・
xamarinのほうが今やflutterの影に隠れちゃってるフレームワークじゃん、可哀想に Amazonのレビューを見た感じ、掌田津耶乃って人の本が良いんですか? そのひと可愛い女の子っぽい名前だけどおじさんだよね笑
色んな言語やフレームワークの本をあれもこれも出してて全部浅そう
職業プログラマでもないみたいだから尚更 MVCとかmvvmがあってもいいよな
riverpodはjqueryみたいなポジションだよ 掌田津耶乃は、あらゆる言語・フレームワーク・ゲームエンジンなどの本を出している、
世界で唯一のオッサン。
女っぽい名前だが、女ではないw
猿向きの分かりやすい本が多い。
その代わり、プロ向きの本よりも情報量は少ない
例えば、Ruby on Rails 6 の本でも、猿向き。
一方、黒田努の本はプロ向き 掌田津耶乃・山田祥寛は、2大巨匠
山田の講座は、1日4万円とか
でも、最近は掌田の方が勢いがある。
ウェブアプリにも強い デカい企業は特にコロコロ変わるようなフレームワークは採用しにくいってのもあるんだろう
ここの話だろうけど最後の質問がいいな、全く把握してないけどBLoCパターンも進化してるのか
ttps://techplay.jp/column/1516
──状態管理において、Flutterは公式ではProviderパターン推奨していることについて
谷畑:正直、どちらを採用するか迷いました。結論としては、BLoCパターンを開発しているメンバーにヒアリングを行い、弱点を改良した上で使用しています。
ティム:以前のBLoCパターンと比べ、現在のBLoCパターンは必要なファイル数やオブジェクト数が減るなど、すっきりしていて魅力的です。新しい内容を参照してもらえれば、BLoCパターンの方が魅力的に映ると思います。 >>149だけど
マジレスするとmobx+MVVMが一番お勧め
JavaScriptにも昔からあったけどこれが最強 まず、flutterの前にjetpack composeでMVVM試すことをお薦めする
composeのState<T>とDetivedState
シンプルだがほとんどこれだけあれば事足りる
RxStreamなんて複雑怪奇なものは必要なかった
もちろんRxStreamはMVVMの必須要件じゃあないが
RxStreamなんてただのオナニーの糞
で、flutterに戻るとこれに一番近いのはmobx
もちろん、kotlinの変態構文とcompose compilerのお陰で、composeほど楽できないが。特に状態を監視して、UI更新する場合は粒度細かくするとStreamBuilderならぬObserver Widgetだらけになるのは仕方ない でもそれに勝るメリットがある
Observable(@Observable)、Computed(@Computed)
runInAction、autorun,reaction
3時間もあれば覚えられ、馴染みのMVVMで作れる
まじでMVVMやるなら一択
BlocのStreamみたいな初心者泣かせのRxStreamなんて必要なし
取りあえずJetpack ComposeのState<T>を味わってきたほうがいい
もちろんmobxでfluxみたいアーキテクチャ採用してもいいけど class ComoseVM {
var a by mutableStateOf(3)
var b by mutableStateOf(2)
val c by derivedStateOf { a + b }
}
mobx_codegenのアノテーションつけるとここらへんは楽にはなる
class FlutterMobXVM {
final a = Observable(3);
final b = Observable(2);
final c = Computed(() => a + b)); <<-- 本当はコンストラクラで
} もちろん、riverpodにDerivedStateやComputedみたいな計算プロパティの機能はあるけど
Jetpack ComposeのState<T>+MVVMで認識した
flutterはmobx+MVVMでOK
まじriverpodとかいらない >>167-168
さすがTOYOTA様だな
> デカい企業は特にコロコロ変わるようなフレームワークは採用しにくいってのもあるんだろう
気分で変えるRemi氏の製品は避けたいよな
気持ちがRiverpodに移ってProviderのメンテの意欲が失せるような人だからねえ
でもdev版だからとかコロコロ変わるからとかじゃなくてもRiverpodなんて選ばないと思う
優秀な人達なら実現できる過不足ない方法を採用し、過剰なものは不要って考えになるよなー
> 全く把握してないけどBLoCパターンも進化してるのか
BLoCが進化した話はきいたことない
動画みてないけど、進化したっつか自分達で進化させて弱点をなくして使ってるんじゃないか >>173
mobxいいらしいね
海外の設計とか詳しい人が推してるから気になってた
コードジェネレーションがいらないなら使いたいところなんだけどな
もしかしてしないで使える? flutterってレンダリングエンジンに牛丼屋を使ってるんだっけ? Ubuntu純正のGUIアプリは今後Flutterがメインになる
Linuxデスクトップ界隈では普及するかな そこそこ色々なところで使われてるくないか?調べたら出てくるだろう >>187
ビックタイトルでの採用実機はほとんどないんじゃない。
デスクトップアプリはマルチプラットホームで作るのが一般化しているので普及はしていくと思うけど。 buildしてiPhoneにinstallしようとしたら毎回xcodeなんたらsigninがなんたらって出るのはどうにもならないの? >>195
実機でビルドするならデベロッパーアカウント必要だよ
シミュレータでやってみては? 揚げ足取りか
せっかく教えてくれてる人に向かって
クズだなあ まあ意味わかるから俺はいちいちレスしないけど実機でビルドは揚げ足取られてもしょうがないレベル しかも、デベロッパーアカウント無くても実機実行できるし iPhoneをPCに繋げて実行先をそのiPhoneにすればiPhone実機で動くよね デベロッパー登録しないと7日でインストールしたアプリ使えなくなるの緩和される予定ありませんか? >>196
エミュレータではもちろん動かしてるけど実機テストしたくて
GPSのテストとか諸々
実機ビルドはスマホ側の設定とかすれば動くんだけどmacからinstallコマンド打つとxcodeがどうたらと毎回出るのを回避したい
やったこと無い人達はスルーでどーぞ >>201
ケーブル繋いで動かすんじゃなくてスマホ単体でアプリを起動して動かすんだよ
部署内で配布して実運用テストが目的なので flutterなんてウンコだろ!
xamarinサイコ〜! バックグラウンド機能に力を入れてほしい
android_alarm_managerがandroid限定なのはflutterが貧弱な製 そっちじゃなくてworkmanagerの方を使おうじゃない? cloud_firestoreでor条件で取得するにはどうしたら? 今から本を出すならapp bundleのやり方ぐらいは載せてほしいですね >>215
firestoreにその機能が無いから無理。それの回避というと
flutterの話ってわけではなくなるんで、とにかく工夫して
がんばるのだ。 iPhoneアプリ作ろうとして1ヶ月前から
swiftを勉強してるんだけどflutterってものが
あることを今日初めて知った
Androidも一緒に作れるのが魅力だと思ったんだけど
実際のところこれ学ぶ価値あるのかしら?
スレがそんな立ってないようだから
学び始めるの凄く心配 >>217
おぅ、まじすか
あって当然の機能と思ってたから予想外の答えだった・・・・なんでないの?
firestoreに決めてから、知らなかった使いにくさが幾つも判明して悶絶中
たすけて涙
>>218
高階関数でどうやってやるの? あんたにとって価値がないかどうかはあんたにしかわからない
一切回り道する時間がないというのならやめとけ
知識は多いほどいいと思うタイプなら学べ 安いって聞いてfirestoreにしたけど合わんかった
工数増えてるから慣れたやり方にします
差し替えられるようにしてて正解だったな
dartはそういうのやりやすい言語でいいよね Firestoreは単純なことしかできないよ
OR検索の代わりの方法ぐらいはあるけどね(1つめの条件で取れなかったら2つめの条件で取る)
RDBと同じことしたいならRDBを使ってね
スケールしやすさのプライオリティ高いならFirestoreが候補に入るけど
NoSQLでももっと柔軟なやつあるから候補の一つでしかないよ
自分で選べるように各サービスの違いを知っておきましょう これデスクトップで他のネイティブアプリからドラッグ&ドロップ受け取れる? >>226
それなのにflutterでfirestoreを使う人が多いのはなんで? 特に俺はfirestoreのオフラインでも動作するリアルタイム同期
これは自分で実装したくないno.1 どっちもGoogleがおしてるからね
Google製だから万能でどんなアプリにも最適ってことじゃないよ
他にはフロント・バック両方できる人少ないのもあるね
まーFlutterから入ったような初心者は選べるほどの技術スタックないわな
でも会社は別よね
「うちはFlutterとFirebaseでやってます!」って開発会社は…、ちょっとね… オフラインでも動作するリアルタイム同期とは…
オフラインならリアルタイムでも同期でもないじゃん(>o<) >>233
記事とかやたらと多いけど勘違いだったかなごめん Ruby on Rails の3大OSS 関係データベースは、
sqlite, mysql, postgresql
scaffold という魔法の呪文を唱えると、CRUD アプリが出来る
いつも、NoSQL を使っている人は、
どうやってシステム構築運用しているのか、疑問を感じる
サイトをFirebase で、2週間で作ってもらいましたとか >>234
それは短い記事で解説しやすいからだろ
普通はサーバーサイドをちゃんと作り込むがそんなところを解説してもflutter関係ない
とはいえデータストレージがないと現実的じゃないと叩かれるし
トレードオフとしてfirebaseを使うという結論に至った
実際俺はサーバーサイドもやるからfirebaseなんて使わん PHPも7以降はまともになって8では更に速くなって悪くないけどもうやめたい。
どうせフロント側でjavascript触るならいっそのこと後ろ側もnode.jsでやろうかと思ったりする。
ただこれだというフレームワークが中々無いんだよな。
今はadonisってやつ気になってる。 >>239
使い慣れたやつでオケ
今や言語の速度なんて大した問題にはならん サーバー側は、Ruby on Rails。
API モードもある
Rails, React, Vue.js, Bootstrap で、Heroku, AWS, Docker。
最近は、Windows 10, WSL2 で、Linux も使える
結局、Django, Node.js は、流行らなかった
Laravel は、少し使われているけど、
YouTube で有名な、雑食系エンジニア・KENTA が、
PHP は一生やらなくても良いと言ってる
PHPの仕事は安いから。
一生、価格低下圧力と戦うことになる
Deanin, 2020/12、日本語字幕にできる
Vue 3 And Vuex Frontend With Ruby On Rails 6 REST API Backend Using Axios Calls
www.youtube.com/watch?v=gnymlh4Ljvw
WSL2, Ubuntu 20 flutter webはどうなん?
しばらくしたら本番いけそう?それともオモチャで終わりそう? おもちゃで終わるわけないだろJavaアプレットの再来だぞ MicroSoft も、今までMac で開発していたけど、
WSL2 以降、Windows も使うようになってきてる
それに、新しいMacは、CPU が違うから、動くかどうか分からないし MicrosoftはOS屋なんだから別にIntelMacなら使っても良いでしょうに 2.5からflutter_lintsが標準装備されたんだね
これに合わそうかな
非公式のものもあるけど公式に合わせるほうがいいと思う >>250
俺もそれどうしようか悩んでる
それが標準になっていくのかな m1 MacBook Airでも開発できます?
xcodeとAndroidStudioも後に入れる予定ですが VSCodeならWindowsもMacもLinuxも使い勝手そんなに変わらない 先週あたりにようやくDart SDKがM1に対応したらしい iosアプリのリリースだけどうしてもmacいる
アップルはんのそういうとこ、やらしいよねえ
それ以外の普段使いはmacじゃなくていいとおもう
flutterのアプリを作るとき主にandroidを使うのが楽だからその間はmacいらない
cocoapodsのエラーとかなくていいよー 家のメインマシンをmacに変えてから10年以上立つけど、正直macの必然性ってiOSビルド以外にないんだよなー
わざわざcygwinとかインストールする必要がないことと、タイムマシンくらいしかメリットを感じない
みんななんでmac使ってるの? DephiもiOSアプリのビルドはMacがいるんやな。 ソフトバンク楽天リクルートでWindowsで開発してる人見たことない Macの操作が苦手だからビルドするときしか使わないけど
なれている環境で開発したいからビルドツールをWindowsとLinuxにも提供してほしい >>263
その理由を知りたいんだが…
macだと何で開発しやすいん? >>267
結局理由なんてなさそうだもんな。聞いて悪かったよ >>268
トラックパッドが圧倒的に使いやすい
フォントがきれい、アプリのメニューが使いやすい
シェルが本物、すぐにレインボーカーソルにならない Windowsが悪いわけじゃないだろうけどさ、OSSの世界だとあんまり主力に見られていないんだろうな
普通にも使えるし、普段は特に問題がない
ただ不都合があったときに、「Windows版だからは仕方ない」で済まされがちだったり、不都合への対応が後回しにされたりされがちなんじゃないの >>270
トラックパッドはOS関係なくない?
常にMBPなの?キーボードがペコペコして最悪だよね
空き容量に悩む人も多くて大変そうだよねー
家ではデスクトップPCがいいよ
Macのフォントは読みにくくて嫌いだし、アプリのメニューは使いにくくてイライラする
でもそういうのは慣れじゃん
慣れれば解決するんだから選んだり避けたりする理由としては弱いよ
シェルが本物ってWSLは本物のLinuxだから同じだね
どっちかっていうとUnixよりLinuxがいいな
レインボーカーソルはMacで頻繁に起こるやつだね
Windowsにはそんなものはないなー
固まることを言ってるならいつの時代のWindowsのことだろう Chromebookで開発してるわ
タッチパッドよしフォントよしシェルよし
Android環境入ってるからデバッグよし >>272
トラックパッドはOS関係なくない?
常にWindowsノートなの?キーボードがペコペコして最悪だよね
空き容量に悩む人も多くて大変そうだよねー
家ではMBPがいいよ
Windowsのフォントは読みにくくて嫌いだし、ランチャー使わないと使いにくくてイライラする
でもそういうのは慣れじゃん
慣れれば解決するんだから選んだり避けたりする理由としては弱いよ
シェルが本物ってMacは本物のUnixだから同じだね
どっちかっていうとWindowsよりUnixがいいな
ブルースクリーンはWindowsで頻繁に起こるやつだね
Macにはそんなものはないなー
固まることを言ってるならいつの時代のMacのことだろう エディタ戦争と同じく好みの問題でしかないのに言い争っているのみるとクソ滑稽に感じるわ まあモバイルアプリ開発でiOSビルド出来ないのは致命的な欠陥だからなあ
比較以前に論外なんだよ >>270
冗談みたいにしょーもない理由ばっかでワロタ
冗談にしてはおもんないけどな >>276
アップルのやらしい囲い込みだよ
格好のカモだなあ
まんまと檻に囚われててお見事
mac以外でできないようにアップルが意図的にやってることを他社製品の欠陥にするところが信者らしくて大変キモくてよろしいのでもっとがんばってくれ Flutter開発入門 P64
誤)SilverAppBar
正)SliverAppBar
ほんの価格高いんですから手抜きせずしっかり校正やってくださいよ マイケルジャクソン「♪コズ ディス イズ スリバー」 Flutter開発入門 P73
誤) textScalFactor
正) textSca;eFactpr Flutter開発入門 P73
誤) textScalFactor
正) textScaleFactor >>278
信者とか関係なくデメリットだろ。
おまえ生まれてから今までずっと何言うてんねん。 デメリットのことを間違えて欠陥と書いたん?
生まれてからずっと??
意味わからんなー、おつむがアレな人なのかな
アップルが不便を生み出して強いてることを正とする信者らしさがいいね!
キモさがさらに極まるようにその調子でがんばれ >>287
囲い込みするもしないもアップルの自由。
ただの逆恨みのゴミやん。笑
さらにスレチ、即消えてね、さようなら。 WindowsやLinuxでiOSアプリのビルドができないことを欠陥と言うなら
開発者が不便な思いをさせるというApple側の欠陥だと思うよ >>291
mac本体を持ってなくても、Azure DevOpsなら、無料アカウントでもmacOSの
VMが使えるから、xCodeをインストールしてビルドできるぞ。
ソースの置き場所は、GitHubのプライベートリポジトリでも可。 このスレ見るとFlutter使ってる人いないんだなって思う
流行ったらいいな〜って思ってるだけでしょ >>293
使ってない人は流行ったらいいなーって思わないでしょ 中身が空の固定長配列の初期化ってどうやるの?
記事やインテリセンスに従ってもエラーになってしまう
var lst = List(3); // エラー
double[] lst = new double[3]; // エラー
List<double> lst = new List<double>(3); // エラー
List<double> lst = List.generate(3, (index) => null); // エラー
一度空Listを作って、欲しい配列の数だけaddするしか無い? >>296
『中身が空のリスト』とは、nullが入った要素3個のリストか、それとも初期値0が
入った要素3個のリストのことか? リストの要素がNullableなら「?」が必要。 >>297
filledを使ってgrowable: falseにすれば良いのですね!
ありがとうございます glowableはデフォルトでfalseだから勝手に固定長になる
そしてそこで躓くならわざわざ固定長にしなくてもとも思う マイクロソフトが謎のFlutterの2画面端末対応ライブラリ作ってたが
Surface duoの新機種出すからだったんだな
前duoは売れなかったしWindows10Xも中止したのにまだ2画面諦めないのか…… ワクワク感満載のSurface DuoをみるとiPhoneが惨め 笑 TwoPaneViewとかUWP向けにも去年あたりに出してたやろ MSはXamarinなんか捨てて、Flutterにフルコミットすりゃいいのに。 デバッグで大きなList配列の中身を全部Logcatに表示させる簡単な方法ってあります?
print()だと20個くらいまでしか表示しないし、ループで1個ずつ表示させるのは見辛くて現実的では無いし
今のところsublistで大体の範囲を切り出して表示していますが、他に良い方法があれば教えてください listを受け取ってStringを返すいい感じの関数を予め定義しておくくらいしか >>307-308
ありがとうございます
試してみます 中身を全部みたいなのにforループで全て表示は現実的でないってどういうこっちゃ
全文表示でいいなら array.map(print).toList() でええんちゃう、知らんけど デバッグ出力が現実的でないならファイルに出力しなはれ。 いちいちarray.map(print).toList();て書いてんの? flutter desktopでアプリ終了時に処理を追加する方法ってある?
runAppはawaitできないしWidgetBindingObserberは動かないし、ffiでなんとかするしかない? まだサポートされてないからplatform channels使うしかない classのListを作ろうとすると初期値でエラーが出るのですが、何か対策はありますでしょうか?
今のところ空のListを作って、必要な数だけループでaddして作っています。
class StructTest {
int a =0;
int b=0;
StructTest({required this.a, required this.b});
}
List<StructTest> st = List<StructTest>.filled(10, 0); // 第2引数(初期値)でエラー 初期化用のclassを作ればいいだけでしたね、連投失礼しました
StructTest structTest = StructTest(a: 0, b: 0);
List<StructTest> st = List<StructTest>.filled(10, structTest); >>316
class StructTest {
StructTest({this.a = 0, this.b = 0});
final int a;
final int b;
}
final st = List<StructTest>.filled(10, StructTest()); >>319
こっちの書き方の方がスマートですね!
ありがとうございます スマートと言うより >>317 だと10個の要素が全部同じインスタンスを
参照して、意図通りではないような気がする >>321
同じ場所を参照してしまい、10個用意したつもりが1個に上書きしてしまうのですね
ところでclassの中にclassがある場合は、どの様になるのでしょうか?
finalやlateを使ってみても、エラーになってしまいました
class StructTest {
StructTest({this.a = 0, this.b = 0, this.st=StructTestSub()}); // stでエラー
final int a;
final int b;
late StructTestSub st;
}
class StructTestSub {
StructTestSub({this.c = 0, this.d = 0});
final int c;
final int d;
}
final st = List<StructTest>.filled(10, StructTest()); この書き方で合っていますでしょうか?
今イチrequiredやlateの挙動を理解しきれておりません
class StructTest {
StructTest({this.a = 0, this.b = 0, required this.st});
final int a;
final int b;
late StructTestSub st;
}
class StructTestSub {
StructTestSub({this.c = 0, this.d = 0});
final int c;
final int d;
}
final st = List<StructTest>.filled(10, StructTest(st: StructTestSub())); 作れるなら何でも良いんだけどネイティブ知らないと詰むとかない? >>327
端末の固有の機能に踏み入ろうとするとネイティブの知識が必要になることがある
最近はそこそこpubにライブラリが上がってて吸収してくれるものも多いから、やりたいことに必要なライブラリが上がってるかを先に確認したほうがいいかも
自分の場合はNFC周りでネイティブ書いた >>327
Xcode分からないとStagingビルドとかは無理 xcodeとMacbookAirが糞すぎる。
iOSアプリなんて絶対に作らん! しかしAndroidの各社フリーダム実装で機種依存トラブル経験するとiOSの安心感には勝てなくなる。 Flutterだと機種依存のトラブルはあまりないでしょ Xperiaでカメラプラグインとか使えないけど
Androidは嫌だ 中古のMacBookAir2017買ったがSSDの容量が足りなくて、Xcodeをインストールできなくなった。
Xcodeだけで容量足りなくなるなんて糞すぎるだろ!
高い金出して買っても、すぐゴミになるウンコ!
普段、エクセルのVBAやVB.NET、C#使ってるからWindowsの方が遥かにマシ!
XamarinでiPhoneアプリ作るときもXcodeと整合性がとれないと話にならんからな。 「Xperiaで使えないけどAndroidは嫌だ」も意味がわからんな 嫌じゃなくてXcodeさえインストールNGのMacは糞だと言ってるの! >>334
SSD容量128GBのMacBook Air? >>334
ストレージ容量が足りない事とOSの良し悪しは関係なくね
分けて考えられないならドンキWindowsでも発狂するぞ 基本Windowsで、アポーにお布施を払いたくなかったワシは、事前に入念なリサーチ
をして、あえて旧式のMacBook Pro 2015をヤフオクで入手したぞ。
このモデルは、コネクタ仕様が一般のNVMeとは違うものの、Amazonとかで変換
基板を入手すればサムスンとかのSSDに自力で交換可能だから。(入手したのは
256GBのモデルだったので、結局SSDは交換してない)
でも後日、Mac本体がなくても、MicrosoftのAzure DevOps環境にプラグインを導入
すれば、Mac OSのVM上にXcodeとFlutterをインストールして、無料アカウントで
iOS向けのビルドができることが判った。(WindowsやLinuxのVMを使えば、各プラッ
トフォーム向けのFlutterビルドも可) Macがあればワンコマンドで実機デバッグできるのに
わざわざ不便にする意味がわからない あと、WindowsつかいはAppleに関わらないほうがいい
UI/UXのセンスがズレてる 『AppleつかいはWindowsに関わらないほうがいい。UI/UXのセンスがズレてる』の
間違いでは? Windows 11は、マカーによって改悪されたWindows 10。 MacもiOSも言うほどUI/UX良くない
お洒落感もミーハーな人が思ってるだけで特に最近はむしろダサい >>346
そこがそうでもない。飾り気は無いが確実に分かりやすく使える。
AndroidはUIがダメ。 >>347
Flutterでアプリバー表示なしの画面を作った時、Androidならシステムバーの右向き
三角ボタンで呼出元の画面に戻るけど、iOSだとどうなるの? iosはスワイプで戻るじゃなかったっけ?
androidもジェスチャナビゲーションで同じ動作になると思った そうなるのはcupertino widget使ったときだけか
material widgetsだと戻れなくなる? Googleは広告企業だしソフトでもハードでも未熟 >>347
> 飾り気は無いが確実に分かりやすく使える。
スワイプで戻れる画面もあれば右上のボタンを押さないと戻れない画面もあったりして分かりにくい
アイコンにテキストがなくて何を表してるのか分かりにくい
文字入力周りの操作性が糞
言語切り替えるだけで端末丸ごと再起動するの糞
MacもFinderとか糞 え、Googleの世界を覆うネットのハードやソフトが未熟なの?
どこの会社が熟したハードやバランサー持ってるっていうのさ。 基本的にUIなんてのは、使い慣れている物が一番使いやすいに決まってる
だから個人個人良い物は異なる M1積んだMacbookAirのワットパフォーマンスが良いからWindowsコンピュータには戻れん flutter覇権過ぎる
この技術にbetして良かったわ
もともと全部ネイティブで作ってたけど
個人じゃもうキャッチアップするのがしんどくなったし
全てをかける Dartは非同期処理が分かりやすくてめっちゃ良い
特にストリームとasync*/await*があるから、言語レベルでサポートされてて良いと思う クロスプラットフォーム開発自体が衰退してるみたいだな
どういうことなんだろう Share of respondentsなんだからそういう見方にはならない >>361
既にある主要アプリ以外、何を作っても受け入れられなくなったんじゃないかな
特にクロスプラットフォームのものは簡単なアプリが多く、これで新規参入するのは結構困難なんじゃないの そのレポートからクロスプラットフォーム開発の盛衰は読み取れないだろ クロスプラットだけじゃなくゲーム以外のアプリ開発がもう飽和してるんだろ
延びてるのはゲームだけ 変な所で略すなよ
スタッドレスをスタッドって言う人みたいな奇妙な単語 クロスプラットフォームで盛んなのはUnityくらいなのかな
FlutterにしてもReactNativeにしてもXamarinにしても、ハードウェア周りを深く叩くなら結局ネイティブになるし 共有ドキュメントフォルダに保存しようとしたら大変だったり、
バックグラウンドでBLE接続出来なかったり あやふやな記憶だがBLEのバックグラウンド実行はiOSが妙な動きをした気がするからなかなか厳しいかなぁ…
GPS/カメラ/通知/バックグラウンド実行らへんまでならさして手間を加えなくてもライブラリ入れれば実装できるんだけどね ネイティブが難しいとかw
基本的にAPI呼び出すだけだぞ >>368
現行のAndroid機で実質的に一番多いと思われる、Android 10 (Q)では、OSのバグが
放置されいて、UVC規格に対応したUSB接続カメラやキャプチャボードの類が一切
使えないらしいのだが? Android 9 (Pie)以前や、Android 11では問題ないらしい。
ttps://issuetracker.google.com/issues/145082934
>>353
これが、Google品質。 iOSではUSB接続カメラやキャプチャボードの類は使えるの? Google的には修正済なのかな
メジャーアップデートしないメーカー側の責任か そもそもAndroidはもう死んでるでしょ
ろくなアップデートないし > ろくなアップデートないし
↑
それiOSとiPhone笑 358デフォルトの名無しさん (ワッチョイ b3dd-hfjQ)2021/10/04(月) 23:03:16.10ID:SNY8Y+l20
> もともと全部ネイティブで作ってたけど
> 個人じゃもうキャッチアップするのがしんどくなったし
371デフォルトの名無しさん (ワッチョイ b3dd-hfjQ)2021/10/07(木) 13:32:59.87ID:02okUiu60
> ネイティブが難しいとかw
> 基本的にAPI呼び出すだけだぞ
API呼び出すだけだとイキるくせにキャッチアップはしんどいの? >>380
最近のiOSの素晴らしいアップデートに心当たりがないので挙げてほしい >>379
358と371の書き込みのトリップが同じ(≒同じ人物の書き込み)って意味では?
もしかして、自称iOSに詳しいけど、5ちゃんねるは初心者トカ? >>383
同じだよw
ワッチョイなんだから当たり前だろw
お前こそ素人じゃないのか? >>385
若年性痴ほう症か、3歩で自分のやったこと忘れる鳥頭か?
ttps://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11225935561?__ysp=44Ov44OD44OB44On44Kk >>370
iOSのBLEバックグラウンド挙動なんて可愛いもんだよ。AndroidのBLEはとんでなく機種依存した挙動するわ。 >>370
BLEでPolarのデータを24hバックグラウンドで取るアプリ作ったことあるよ
iPhoneで 10/1付けで、しれっと Flutter 2.5.2 が出てるな。 flutter盛り上がってない
みんなreactの方がすこなんかな みんな情報発信してないだけだろ
君は自ら情報発信してるのか?
つまりそういうことだ コロナの影響もあって案件数が少ない
提案通ったのに一旦ストップとかね Flutterは他人のアプリを作ってやるものではなく
自分専用のアプリを作成するものだろ 自分専用ならマルチプラットフォームにする必要ないしリッチなUIも要らんだろ webもdesktopも作れるとかめっちゃいいやん
使ってみるわ flutter使ったらええねん。
flutterアウェサムやねん。 flutter使ったらええねん。
flutterアウェサムやねん。 Flutterでアプリ開発してるけど最初の認証画面を作るのがもう辛い
パスワード・サインインんと、ソーシャル・サインインを両方サポートすると
いきなりファイル数が10を超える実装になる
しかも、githubを漁ってすら、認証ページの実装方法について
定まったデザイン・パターンが存在しないというね… riverpodとhooksのせいで公式が苦慮してる感がある
hookは概念的には良いアプリだけど、変数のスコープがMVVMの設計思想に収まらない感 Firebase使ってるのか知らんがFirebase UIみたいの用意してくれって??
つか、いきなりそこから実装するのか? HooksはFlutterでできることを書き方を変えてるだけだしFlutterらしくなくなるから×
Riverpodは使い方が自由すぎてベストプラクティスがわからなくて悩む人が多いから×
StatelessWidgetやStatefulWidgetをConsumerWidget, ConsumerStatefulWidget, HookSonsumerWidgetで置きかえるのが×
フレームワークの上にさらにかぶせちゃうやつはね、ダサいのよ
ダサいといえば.familyはくそダサいと思う
titleFamilyとか見ててはずかしいっつの Riverpodは大規模開発で状態管理する時に有効だと思う
どのステータスをどのスコープで管理するかは、優秀なエンジニアが決め打ちすればいいんじゃないかな
Hooksはハック的な上に設計を崩すからデメリットが多きと思う Providerの延長として使うという制限をつけておけば大体いい感じになる
それ以外の方法は賢い人が体系化するのに任せるのが良いだろう
Hooksは使ってないから知らんけど、Reactから来た人が初めから使うならいいんじゃないか?途中での導入はそりゃ駄目だが、これの導入有無で崩れる設計はそもそも見直しが必要だと思う 初心者や賢くない人ほどriverpod選ぶ人が多くて結果行き詰まるケースが超あるある
って書くと「自分はそんなことない!賢いんだー!」ってますます選ぶ人増えるね それはたしかにわかる
ProviderもProviderNotFound例外に泣く人多いが、riverpodは曖昧にProviderの上位互換と思って手を出しやすい
そんなに使ってもない人が、新しいからっつって使い方紹介したりするから余計に
よく使うStatefulWidgetの解説記事のほうが少ない印象 StatefulWidgetでいいよ
変にreactの影響受け過ぎてベストプラクティスがどうのとか言ってるけど
そもそも機能を作れないようじゃ論外だろ 使える人が自分だけで使って満足するならいいんだけどさー
出来の悪い人はプロジェクトごとにまあ何人かいるんだよ
Riverpod使ってるプロジェクトに途中参加したらひどくて青ざめたとか
間違った使い方してる人にいちいち指摘してもなかなか直らんのがストレスになったとか
経験したことない人にはわからんかもな
そういうプロジェクトに限ってもっと基本なところができてないしな
constがついてないとかbuildのたびに同期処理とかウィジェット分割してないとか
children: [...hogeList()]とか書く奴いると泣ける StatefulwidgetはState側に処理が集中してバランス悪いからあんまり使ってない
ViewとViewModelが結合させないプラクティスが思いつかない Firebase UIのFlutter版がほしいです(切実)
似たような機能を自分で実装することもできるけど、管理が大変 flutter開発ってRyzen32コアとかだとビルド速いのかな?
速くならない気がしてるけど。。 ビルドってコンパイルする時はファイル単位で並列化出来るけど、リンクとかは難しいしね
その並列化できるコンパイルもディスクへの読み書きで制限が出る
だからコンパイルに効果的な並列度にも限度がある
コア数以上にディスクIOが効くと思うよ Flutter, React Native, Xamarin を検討していたけど、Flutter はビルド遅いのか…
Xamarinより遅いのだろうか?
ホットリロードで快適開発というのに期待していたのだけど >>419
開発中はVM上でJITだから快適だよ
一度デバッグビルドすれば更新はVM上で行われてホットリロードが高速に動作する
一方でリリースビルドはAOTなので微妙に時間かかる
その分パフォーマンス面で有利というわけだが なるほど
開発中が快適なら十分だね
Googleの俺様新言語とかありえんわwと思っていたけど、
.Net MAUI が延期になったから Flutter を考え始めていたんだよね
明日にでも軽くなにか作ってみようと思う >>419
flutterにしとけ、99%後悔しない。
生意気なAppleはズレてて今更コムュニティー作るのに必死ワロタ
おれも信者だけどダメなものはダメwwww dartの言語仕様、なんでそんなに嫌われてるんだろう 言語仕様じゃなくて、Google を信用していないんだよ
どうせ趣味で作っただけで、飽きたら放り出すんだろ?と思っている Flutter前の冬の時代を乗り越えたんだから流石に大丈夫でしょ Googleが自社製プログラミング言語の開発を放り出した事例は一つも無いという事実 サービスは山程潰してきたのに言語だけ特別なんてことはなかろう オープンソースにしてて外の人の力も借りて改善進化してることが継続性に関連してるよ
数日前のRedditにもあった flutterがリリースされた頃からしかdart使ってないけどその頃はやばっかような
null safetyはもちろんないが、なんて表現していいのか
var i = 10;
でiの型がdynamicになってたような
これがデフォルトじゃなかったか? しかもよくも悪くもnull safetyないときdartはnum型とかすらnullableだったからな
nullチェックの嵐
strong typeへの変更、null safetyへの移行
dartは比較的新しい言語だと思うがここら辺の変更見ると、dartを最初に設計した技術者はほんと未来を予測できない馬鹿だったってこと Dartはそんな悪い言語じゃないし、ホットリロードのために良い言語なんだろう
ただ、これから構造体主体のプログラミングが主流になるんじゃないかって時代で、スキルを磨かなきゃいけないものが沢山あるときにさ
今更、みんなDartの学習したくないんだろうな 21世紀になってもセミコロンで文終了、switch はフォールスルー、とかセンスが皆無な所じゃないか JavaやC#からの参入障壁は低くなってるから、Dart自体の学習は手軽で、そしてそのための様々な構文なんだと思うよ
メソッドや新しい構文に関しては類似性を気にしなくていいからかモダンな表現も意欲的に取り込んでる
文末のセミコロンに関してはあの言語仕様だとあった方がいい dart2 typescript javascript ほとんど同じ
flutterは初めだけ少し難しい まあ"学習"しなければいけないような言語じゃないと言った所かな。良くも悪くも。 >dartを最初に設計した技術者はほんと未来を予測できない馬鹿だったってこと
設計当初の目的や思想を無視して馬鹿判定するのは馬鹿 >21世紀になってもセミコロンで文終了、switch はフォールスルー、とかセンスが皆無な所じゃないか
他の言語と比較したり時代で考えたりするほうがセンスない
セミコロンがない方がいいとか先進的とかは幻想 強いていえば、インポートシステムはpython風だとありがたかった
javaからのユーザーを取り込むことを優先したのかな 使いこなせてはいないけど使ってはいる。
本家の実装例に従うと画面スタックの定義や遷移処理が1つのクラスに集中するんだけど、放っておいたほうがいいのか対処すべきなのか分からなくて悩んでる 俺も昨日からnavigator2.0のサンプルみながら試してみてるんだけど、
もっときれいなデザインないのかと悩んでる。 Navigator 2.0はパッケージを介して使うものだよ あんまり、パッケージに依存したくないんだよなぁ。
パッケージは最終手段かな。
あとパッケージでどこまで融通が利くか不安。
クエリパラメータとか処理できるパッケージある? GetXならクエリパラメータも含めてナビゲーション余裕だぞ GetXかぁ。まだつかったことないけど。ナビゲーションまでやってくれんのか。
SPAのdynamic routingみたいなこともできるかな。
url切り替わったときにページ自体はそのままでwidgetだけを
更新してスクロールする的な(stateは維持)。
youtubeでサンプルあったけどページ自体が切り替わってるようにしか見えんかった。 kotlinだったらどれほど良かったか…
Dart好きだけどね
入り口が狭くなってるよね・・・ >>449
ページ単位だからReact Routerみたいな使い方は無理 go_routerありだね。ぱっと見、求めてるもの全部入ってる気がする。 どんなアプリでも使う超基本機能なんでjsみたいにいろんなライブラリが群雄割拠するのはやだなあ それはすごくわかる。あと、go_routerの弱点があるとしたら、
同じurl内のナビゲーションができなさそう?
RouteInformationのstateが使えなさそう。 質問なんだけど
iOS向けにリリースするときXcodeは不用? ありがと
やっぱXcode要るんか
flutterにしたらでかいアプデ避けられるかな?って考えまして、、、 Windowsとか実質10で終わりなんだからMac買えば? Mac は、CPU がM1 に変わったから、
Docker など、Linux との互換性が問題 > Windowsとか実質10で終わりなんだからMac買えば?
iOSアプリ開発以外じゃもうMacいらね
って人が増えてきてるのにズレまくってるね
それにDockerはARMのイメージ少なすぎてつらいぞ 林檎のう○こな面がどんどん出てきてる昨今
それでも信者は信者のままだから温かい目で見てあげようよ
画面できずにクスクス笑っちゃうけど Windows がなくなることはないよ
それなりの規模の企業には必要だからね
Macは、iOSアプリ開発者には支給するけど、それ以外の需要は小さい
クライアントは Flutter でサーバーは FreeBSD とかってないだろw iPhone売れなくなって来たら、Macも風前の灯火になるの避けられんからなぁ。
iPhone死ぬほど売れてなおも、Macは今のシェアしかねんだしお察し。 PCにまでノッチつけてるだけでも正気に思えないのに
メニュー表示がノッチを避けるようになってないなんて本当にどうしたんだ笑
https://twitter.com/SnazzyQ/status/1453143510111059968
https://twitter.com/5chan_nel (5ch newer account) ここFlutterスレなのわかるかな?むずかしいかな? >>467
〇〇売れなくなってきたら、
Appleに限らずそんなこと言ったら何でもそうですやん笑 FlutterでHuaweiのアプリも開発可能ならしい アプリ単位でしか解決できないって・・・
ノッチを付けたのはベゼルを小さくするためじゃないの?
それなのにノッチを避ける設定でベゼルが太いのと同じことになるのは
アメリカンジョークですか?笑 Windowsはサービス設定系がガチで使いにくいからなぁー 将来的に、アプリを多言語対応したくなった時は、このアプリを使うといいかも
flutter_sheet_localization void main() {
var m = {
'n': [1,2,3],
};
print(m['n'].length);
print(m['n'][0]);
}
これが実行できないのですがどう書けば良いのでしょうか final n = m['n'];
if (n != null) {
print(n.length);
print(n[0]);
}
安全のためにmの型指定もしたほうがいい
final Map<String, List<int>> m = {'n': [1,2,3]};
か
final m = <String, List<int>>{'n': [1,2,3]}; こう書いた方がdart的だと思う
print(m['n']?.length);
print(m['n']?[0]); 481, 482 の両方とも、エラーメッセージで教えてくれるよね 辞書型の値は、nullセーフの型しか指定できないのかな >>482
どっちがdart的ってものじゃない
ifで確認したらその後もうnullじゃないことになるのもdart的 最近Riverpodのことを聞かれて調べてるんだが知れば知るほど価値を感じなくなってる
一つのことをやるにも幾つもの方法があってまあAPIが酷いこと
Remiちゃんはそういうとこ下手だね
相談してきた人がちゃんと使えてる気がしなくて見せてもらったら案の定酷かったんだがどこの会社でも起こってそうだ
あんなものをなんでみんな選んでんだ?
Providerの人が作ったんだから間違いないとか思わずに自分で判断した方がいいよ
同調圧力みたいのを感じてる人が多いのか?いかにも日本人でもうね・・・
ちらほら見かける少数のアンチの人だけがまともに見える >>486
ツリー構造がめちゃくちゃになるのと、実行時にしか確認できないProvider ProviderNotFound例外がProviderの欠点なんだから、これを回避するだけに使えばいい
色んなことしようとするから複雑になる それでいいはずなのにみんなあれこれ使って必要以上に小難しくするじゃん
それができちゃうパッケージがもう失敗なんだよな
Providerを組み合わせたりフィルタリングするためにProvider自体にロジックが入り込むのもよくないな
それをドキュメントでやっちゃってるからなー ProviderNotFoundが嫌ならInheritedWidget使わないでStreamBuilderかValueListenableBuilder使えばいいだけなんだがな
小さい悩みを解決するために過剰な方法を持ち込まなくていいんだよ >>489
じゃあそれらを使えばいい
そのstreamやlistenableをどう伝播させるかとかが今度は問題になってくる。そうならないサイズ感で使ってしまうのは確かにナンセンスだが、使用者の問題だ
多様なことができるものが失敗と言うのは難しいよ
それを言うならオブジェクト指向も失敗だ 状態管理パッケージは実際いらないと思ってる。こういうこというと
いろいろいわれそうで怖いけど、
InheritedWidget、InheritedNotifier、ValueListenableBuilderとか、
なんとかBuilderをうまく使いこなすだけでなんとかならね? >>490
Riverpodは色々自由すぎて好ましくない使い方ができてしまうことやAPIが良くないことがよく批判されるポイントになってるのにそこを失敗と言うのがなんで間違ってるのか
失敗じゃなくて使用者の問題だっていう白か黒かみたいな二択じゃないよ
使用者の問題だしそれが起こりやすいのはパッケージの問題でもある あれこれいらないから小さく作ってくれればよかった
惜しいんだよな
Providerもあれこれ多いから作者の性格だろうな
食べ放題のビュッフェで欲張って取りすぎるみたいにせっかくだからあれもこれもってね >>493
必要だと思う人が使うので、そう思わない人は無視しとけば良いよ。 >>491
ValueListenableBuilderとか実は有能・万能 >必要だと思う人が使うので
あれは必要なものじゃないねえ
ないと作れない人は基礎から勉強したほうがよろしい
必要かどうかじゃなくて使いたいかどうかならわかるけど
使いたい理由が最先端っぽいところに追いついておきたいだけの人が多そう
使えば最先端ってもんでもないのに、だれか書いてたように同調なのかな >>492
パッケージは汎用的に作るものだから仕方ないね
もちろん状態管理パッケージはなくてもなんとかなるが、ProviderがInheritedWidgetを包んで使いやすくしたという経緯から見えるように、生のままだと使いにくいんよ
使わないで済むならその方がいいけど、規模感や設計次第じゃないか? >>494
個人で楽しんでるだけの人なら無視すればいいよな
仕事でそうはいかん
別の人がRiverpod使って書いた醜いコードが自分に回ってきたら辞めたくなるぞ >>499
醜いコードが自分に回ってきたら悲しいですが、それはproviderでも blocでも同じでは? 読んでもらったらわかるけどRiverpodだと起こりやすいって話をしてたんだよ
Hooks使うともっとね そもそも醜いの定義次第でどうにでもなるから、Riverpodで起こりやすいというのも何とも言いようがない。 どうにでもなるってどういうこと?
定義次第で解決できるってこと?
どんな醜いコードになるかはここまでに書いたことを読んでもらったら経験者ならイメージできると思う >>503
ここまでで具体的な定義一つもないし、Riverpod
が自由すぎるというのもここ以外で聞いた事がない。
結局醜いとしか言わないし笑
あなたの親友とかじゃないんで、あなたの醜いの定義なんかわかるわけ無いです笑
blocでさえ利点をわかってなければとりあえずblocぽく書いてるが分離しきれてない、みたいなのはあるので結局使う側次第。 >>504
よく言われてるじゃん
国内の絶賛する意見だけ選んで見てる人にはわからんかな
>>505
個人開発前提で言わんでくれ >>506
他者が決めたものに従わなければいけないのならそれに従うべきだし
従わなくていいのなら好きな物使えばいい
そういう仕事してお金もらってるんでしょ?
こんなとこで文句タラタラ言う事ではない jQuery使う仕事を振られてもやるけど使わないように世の中の人々に促して根絶したいだろ?
IEのサポートを切るように促したかっただろ?
jQueryで誰かが書いた醜くて酷いコードを渡されたら辛いだろ?
そういうのと同じだよ
仕事しないとは言ってない そんな個人的な要望を他者に求められても困る
それはあなたが抱えている問題だし
他者に押し付けるものではない
誰が何を使おうと自由
ここで文句を言う前に
選定できる立場に成る様に努力するべきでは? 過大評価されてるよねRiverpod
デメリットを伏せてメリットばかり喧伝されてる感
使う必要性はないのに、藁にすがる感じで使う人が多いのかな
新しいのが出るたびに飛びついて先端走ってるつもりになるところが
かっこつけ君の多いフロントエンドだなと感じる >>509
立場的にはすでにそうなんだけどあちこちに応援で呼ばれるもんでね
自分の管轄下ならもちろん主導して選定するよ
一度も押し付けてないよな? >>506
いや誰なのあなた?
なぜあなたが
よく言われてるじゃん
とだけ言って私が
あ、そうですよね。
てなると思うの?
具体的にどこで言われてるの? 匿名の掲示板で誰なのと聞かれて答えるわけないじゃん面白いな
答えたところでどうせ知らんだろ
Redditとかコミュニティのチャットとか見てたら見てるはずだ
自分で情報収集せずにお前が出せというくれくれ君と話しても不毛だ
それになんでそんなに喧嘩腰なのかわからんな よく言われてて見てるはずなら言い出した本人含め誰かから具体的なソースの一つくらい挙がっても良さそうなもんだが。
くれくれ君て相手が言い出してるんだろうが、ほんとしょうもないな笑 夏はレジャーを楽しめていい
でも暑くて汗かいてつらいし、夏バテになって困る
みたいな意見に対して
個人的な考えを押し付けるな
汗かかないように努力しろ
誰が言ってるんだ、ソース出せ
て感じ? 否定的な考えの人がいてもいいじゃない
合わない意見は叩かないと気が済まないのかなあ
このスレにかぎらず社会全体がなんでも叩く風潮になってて嫌だねえ アフィ野郎がわざと煽って情報引き出そうとする奴もいるからなー 読めばわかるのでお読みください。
あなたがそう読み取ったならそれでいいと思いますよ。
わたしには何の関係もないですし。 https://www.reddit.com/r/FlutterDev/comments/pjj40p/riverpod_vs_bloc/
> Even though I could accomplish everything I wanted, it ended becoming messy with dependencies spread throughout the code. I don't know how many providers would I be able to manage at the same time before my head blows up and most of the providers don't make any sense on other screens so it gets messier to locate the ones you are looking for when names are similar.
> FutureProvider which worked fine for simple examples to a StreamProvider. But I need to keep track of those loaded which were previously loaded so I could keep adding when scrolling. So I had to move to a StateNotifierProvider with all the data or keep several providers very closely coupled so when the stream loads data it loads it into another provider. In the end, the complexity of using Bloc or Riverpod ended quite similar. But with Bloc I would have been able to extend functionality without refactoring so much.
https://www.reddit.com/r/FlutterDev/comments/kyd7zs/riverpod_a_better_state_management_solution_than/
> Not personally a fan of riverpod as I feel it encourages a bad antipattern of scattering shared state all throughout your widget tree. This can lead to code being very hard to find (non-centralized), and makes debugging harder to follow as there are excessive dependency chains and couplings between providers.
> the 'compile safety' of Riverpod, allows developers to safely do something that really is not a good thing to do when it comes to maintenance and debugging.
検索してランダムに選んだページだけでもこういう投稿があった
ネガティブな感想もやっぱりそれなりにあるってことかな
ここと違って人格否定とかされることはなく健全に意見を出し合ってていいな
異なる考えを示した人を異端扱いして叩いてたら偏るんだよなー そもそもここで自分で言い出して具体例を聞かれたら自分で調べろ、て
誰得なんだ?笑
何がしたいんだ?
という当然の疑問を尋ねたら今度は人格否定笑 >>521
あなたがいくらググった結果を載せてもそれは結局あなたの示した結果でしかなく、言い出しっぺの人がどういう意図で自由すぎると言ってたのかはどれだけググったところではっきりしない。
そんなものを私が探して推測する義務は無い。 人格否定はあなたのことじゃなくてここの掲示板の全般的なこととして書いたのだよ
自分のことと勘違いしたのは自覚があるから?
ウェブ検索結果を書いたのもあなたのためじゃなくて
興味が出てきて調べて見つけて納得したから貼っただけ
言い出しっぺがそれを指して言ったかなんて自分にはどうでもよいので
そこに執拗にこだわるあなたを見て、この人何と戦ってるの?と思ってしまった qiitaのadvent calendarのflutter 2.7.0(仮)について書きますって
次のリリースなにくるんだよ 今年は言語側でnull safetyあったがflutter側おとなしいよな
navigator 2.0やrestoration とかも今年だっけか?
次のリリースでwindowsとか正式対応になるのかな..
materia you対応はどこいった? >>524
少なくともflutterの議論に特にこだわりの無いあなたたちでは無いですよね。
立派な最後っ屁だけは多くの人を笑わせるので良いと思いますよ笑 >>526
material youはflutter2.5で対応済み https://pub.dev/packages/hooks_riverpod/example
このサンプルのreturn Scaffold(が実行される前に
increment()を実行したいのですが
final count = useProvider(counterProvider);
context.read(counterProvider.notifier).increment();
return Scaffold(
と書いたら大量のエラーが発生しました
どうやればウィジェットをreturnする前にincrement()を実行できますか?
E/flutter (23139): [ERROR:flutter/lib/ui/ui_dart_state.cc(209)] Unhandled Exception: setState() or markNeedsBuild() called during build.
E/flutter (23139): This UncontrolledProviderScope widget cannot be marked as needing to build because the framework is already in the process of building widgets. A widget can be marked as needing to be built during the build phase only if one of its ancestors is currently building. This exception is allowed because the framework builds parent widgets before children, which means a dirty descendant will always be built. Otherwise, the framework might not visit this widget during this build phase.
E/flutter (23139): The widget on which setState() or markNeedsBuild() was called was: >>530
このエラーメッセージ理解できる人はここで質問しないだろうけどな。 >>529
useProvider(counterProvider.notifier).increment();
にするとうまくいくと思う >>532
必要なコード数が他のライブラリより断然少なくて済むんだよな
そりゃ人気出るわ GetXは作者のよくない行いによって完全にスルー対象になってるよ
知らない新参者や気にしない人が使ってるみたい
自分は最近知ったけど、それより前からフレームワークっぽい全部入りがイヤで使ってない
どっちも解決することはないから今後も変わらないよ
コミュニティーのメジャーなメンバーに嫌われてる状況は
大物に干されてテレビから消えた芸人がYoutubeで客層変えてやってるのに近い RiverPodはシンプルなProviderの位置に取って代わることはないと
Googleの人が言ってるから第一の推奨はProviderのまま >>535
良くない行いってなんだよw
身内で揉めてんじゃねー 個人開発だとriverpodの方がコードをシンプルに書けて使いやすいけど
チーム開発だと自由度が高すぎてデザインを壊しそう 画面遷移で引数渡すためにこんなことしないといけないの?
なんか汚いコードに見える
https://zenn.dev/sgr_ksmt/scraps/f2437c38594ba1#comment-282f014392399a
> ProviderScopeを使えば、引数が必要なProviderでもFamilyを使わず、引数を子Widgetにバケツリレーしなくてもよくなるので、場所によってはこのアプローチを考えても良いかなと思う。
汚いコードになるよりバケツリレーの方がいいんでないの?
どうなのかしら
RiverPodの良さがいまいち分かってないけど、こういうのを見ると不安になるな スクラップ見るとウィジェットのツリーっぽくない書き方になっちゃってるね
Flutterは宣言的なのがいいはずなのに、RiverPodだと手続き的な書き方になっちゃう?
なんか抵抗感があるっていうかセンス合わない感があるんだけど、みんなそのへん抵抗ないのかな
>>539のデザイン壊すっていうのはめっちゃありそな気がする >>540
流石にこねくり回し過ぎだな
画面遷移用のProvider一個用意すればやってること変わらん 状態管理のクラスを細かい粒度でやるから、バケツリレーするのが大変になるのであって、大きな粒度でやればバケツリレー上等 >>542-543
二人は同じこと指してるのかな
その具体的な書き方がわからないけど、とりあえずありがとう >>546
でしょ?
余計にめんどくない?使う意味あるん?ておもた >>547
Riverpod1.0.0からはScopedProvuderじゃなくてもoverrideできるようになったし、あんまりややこしいことしなくても 選択したデータを保存する用のProvider(記事でいうとselectedAirticleProviderみたいな)を作ればそれをDetail画面から参照するようにすればいい Riverpodなんか使わなくていい。
推してる層は意識高い系(悪い意味)のツイートしてる層と被ってるよなw
DXみたいな言葉を使って先取りアピールしたがる層に近い。 >>550
そのアプリのイメージが不十分なのかもしれないけど、選択したデータを渡すための
プロバイダがいちいち必要(プロバイダを用意しておいて選択するたびに入れなおす?)なのは
画面遷移するときに引数を渡すめんどくささに近い問題が残ったままな気がする
そもそもoverrideってなんで必要なんだ…?
テストで使うものだと思ってた いつのまにかRiverpod 1.0.0が出てたんですね
変更点よくわからないしhook使ってたけどhook使わない方に移行しようかな まぁアーキテクチャの話はネイティブの時代から流れが変わらないね
MVC→ファットコントローラが最悪だ!
MVVM→学習コスト高杉!そんな難しくしないで!
CleanArchitecture(SwiftはVIPERとか)で落ち着く
今のところRiverpdはMVVM枠だね スレの上の方でmobxが推されてたから調べてみたけど結構良さそう
確かにriverpodは人によって使われ方が違いすぎる部分があるから状態異常管理ってだけで言えばもっとコンパクトなパッケージが流行ったほうがみんな幸せなのかもね Ruby on Rails では、逆の議論ばっかり
ビジネスロジックをモデルへ寄せていった結果、
古典的記事「Skinny Controller, Fat Model」をどう解決するか?
サービスオブジェクトとか MobXはいいらしいけどコードジェネレーションじゃなかったか?
そうじゃなけりゃいいんだが。 Riverpodは使い方を指し示してくれるものじゃないから、人によって違う使い方になって
アーキテクチャーの意識が低い人がいるとえらいことになる。 mobxはアノテーションによるコード生成も手書き?も両方できる GetXならMobXの@observableや@actionをコードジェネレーションなしで使える
最近MobXの人気ランキングが落ちてるのは、似たタイプのGetXの方に客が流れてるからだろう MobXおもしろそうだったけどジェネレーター使うのか
めんどくやがりやの自分にはgetxだわ・・・ getxの話をしだすとriverpodでいいってなるけど
パッケージの中身がぐちゃぐちゃすぎて GetXは世界的に嫌われものだから、業務では利用されないだろう。
それを勧める奴が急に数人出てくるとはいったい…。
作者も似たような行為をしてたと言われてるな。
MobXのコードジェネレーションを使わない書き方は
面倒なら実質使えないがいかがなものか。 >>567
スルーされてるとか嫌われものとか子供のイジメみたいな叩き方だな
Remiや信者がRedditでよく叩いてるけど、現実はPub.devでは一番人気だしGitHubでもblocの次に人気ある
Youtubeでもファンの解説動画とか多いしな パッケージは信頼性が大事だ。
アプリの根幹となるステート管理に前科があるパッケージは使えないだろう。
もちろんGetXのことだが。
スケール性やテスト性の問題で大規模アプリに向かないこともあって使えない。
Remiは被害者なので嫌うのは当然だが、自分が一番注目されていたい人間だから悔しさもあるんだろう。
flutter-provideに難癖をつけたのもRemiだったな。
子供じみた性格は昔からだ。
悪いこと言わないからGetXとRemi製は避けておけ。 monoさんが使ってるからriverpod使います! >>570
おう、それでええ!
とにかくflutterがええんや。
flutterなら何でもええねん。 monoさんのコードは最初のころすこし参考にしてたけど
自分が詳しくなるほどあの方の設計のセンスはずれてると思うようになったし
信者体質でやたら推しまくる人だから
monoさんの推してるものをあんま参考にしないほうがいいと思う
概してダサめ monoとmono信者が使ってるならriverpod使いません! >>556
riverpod+ChangeNotifier or StateNotifierならMVVMになる
一定水準以上の能力を持つコーダーだけで開発チームを組めるならば、
このライブラリの使用で保守性の高いコードを作れる
ただし、riverpod_hooksは話が違うんだよね
MVVMのコードとしては可読性が高くない
代わりに書きやすいとは思うんだけど android studioでおすすめのプラグインを教えてください
これがないと行きていけないってやつ https://github.com/bannzai/Pilll/
あまりきれいじゃないなーって印象を持ったのに
これ参考にしてみるって言ってる人がいるのがフシギ 最近Flutter始めたんだけど、根本的なプログラミングスキルがないから
MVVMがいまいちよくわかってない。
controller や key 、Freezedなんかもよくわからんと使ってる
公式リファレンスもよく理解できんし、どうすればいいか悩んでる あと、スマホゲーによくあるジュエル購入制の課金の実装方法とか、
ググっても出てこなくて自分が実装したものが合ってるか分からないから困ってる。
お前らこういうときどうしてる? わからないならわかるまで読む
他人ができてお前にできないことなんてねーよ Freezedは必須じゃないからわからないまま使わなくていいよ >>580
MVVMとか宗教みたいなもんだから、最初からそれを理解してやらんでもいいよ。
どんな素晴らしいフレームワークやデザインパターン使うより、クリエイティブなアプリのほうが価値があるんだから。
一人でやるなら生半可にMVVM使うよりはむしろベタなコードのほうが逆に保守性高かったりする。 FlutterでMVVMは書きにくいから無理に当てはめる必要もないよ MVVM分かってない人はとりあえずStatefulWidgetでゴリゴリ書いて
バケツリレーするといいよ
ある程度の規模までは明確でむしろわかりやすいから
その後こりゃダメだとなったときMVVMの扉が開かれる Windows10でインストールして初期設定をしようとしたら解決できなくて涙
flutter doctorでcmdline-toolがないと出るのでAndroidStudioでSDKmanager立ち上げて確認してみたが「SDK command-line tools(latest)」インストール済み。
USER\name\local\Androidの中にsdkmanager.batがあったのでパスを通してプロンプト上で実行できるようになったのにflutter doctorはやっぱりnot foundのまま。
・AndroidStudioのSDKmanagerからインストール
・sdkmanagerへのパスを通す
でだいたい解決って書いてるのに解決しない。
いつまでもflutter doctor --android-licensesできねー 環境変数でJAVA_HOMEのパスが違うとかそんなんあった気がするわ、知らんけど FlutterってLinuxサーバー環境(GUI無し)とテスト用の物理スマホだけで開発できる?
ReactNativeだとExpoってのがあってそれ使うとできてるんだけどFlutterはどうなのかなって思った サーバにSDKとcode-server入れて手元のChromebookでコーディングは出来た
その時はサーバに直接繋いでADB接続してたけど、Wi-Fi経由でも接続可能なはず
スマホでコーディングするなら画面の小ささはどうにかしないとだけど、開発できないことは無いんじゃね ビルドまではコマンドラインでできるので、開発できるといえばできるけどデバッグするならgdb環境が必要だよ。
コマンドラインでgdbするツワモノならCUIだけで全てできるけど。 次のリリースは来月?
1か月早いクリスマスプレゼント来ないかな
windows対応とか遅れてるのか?全然音沙汰ないよな Our goal for 2021 is to deliver production-quality support for Web, macOS, Windows and Linux,
一足早く登場したwebはproduction readyになったの?? 自分もMVVMで書かないとコードを整理しきれないからMVVMで書いてるけど
必要ないうちはデザインパターンなんて気にしなかった
FlutterでMVVMを使用しているのは、単にスマホアプリ以外にも流用しやすいデザインパターンだからな
学習コストを他に転用しやすい Flutter開発入門がクソすぎる
コードを全部本に入れないからどこ flutterのMVVMはなんちゃってだからな・・
fat viewModel化するし。
notifyListenersするファイルを分けてるだけ的な。
あと、viewModelを安全にシングルトン実装するとdisposeさせるのに小細工必要だし。 > fat viewModel化するし。
そこら辺はflutterとあまり関係ないと思うが? UIは使い捨てで入れ替えも早いからFAT上等ですわ
楽にかけて動けばいいんだよこんなもん > UIは使い捨てで入れ替えも早いからFAT上等ですわ
> 楽にかけて動けばいいんだよこんなもん
こういう奴がいると苦労する >>604
苦労する原因はまずいコード書く人やろ。 var a = {
"b": [0, 1],
};
print(a["a"][0]);
これprintの行でエラーになるんですけど
どうやってピンポイントで値を取得できますか? var a = {
"b": [0, 1],
};
print(a["b"][0]);
これprintの行でエラーになるんですけど
どうやってピンポイントで値を取得できますか? riverpodとporviderってwidgetをreturnする前に管理している値に再代入するとエラーになるんだね
initStateとか用意してもらいたいよ >>612
Riverpodに関しては完全にWidgetから切り離されてると思うけど widgetのメンバ変数はfinal制限があるって話かな? ビルド中にリビルドのフラグを立てるとエラーになるって話でしょ
initStateでも起こるけどな 2.8にして、自分のアプリを更新してみたけど、androidアプリの起動がくそ速くなってる flutter desktopのlistviewじゃなくて
.net frameworkのlistboxとかlistviewみたいのってないですよね 2.8.1でiOSビルド通らないじゃん、intelでも
また、AMなんちゃらとなんとかで二重定義されてるエラーが再発、いい加減にしてくれ なんかパッケージがずいぶん小さくなったし、何か欠けてる? バックグラウンド処理は苦手としてる。
できなくはないけどiOSとAndroidで仕様が大きく異なるのでプラグインでの共通化が難しい。 作れないアプリはない
いくらか労力をかければどんなアプリでもFlutterのせいでできないなんてことは無い このアプリはFlutterを使用していません
と表示するアプリ >>633
なるほど
>>634
まあ行き着くところはそうなんだろうけどさ Flutterを使っているたいていのアプリ開発者は
Firebaseと出来合いのパッケージでできるものしか作れない >>637
それで儲け出せてるところは出せてるわけで、
結局やり方次第。 >>637
新しいフロントの技術が出るたびにこの手の意見聞くわ >>639
そうは言っても手駒が少ない人は圧倒的に劣勢だね。 >>645
ネイティブエンジニア雇うだけで優勢になれるならそっちの方がよほど簡単だが、そんな単純なわけない。 Flutterの開発環境って結局なにがいいの?
秀丸? WindowsアプリとiPhoneアプリを作ろうと思ったけど
どっちもやたらハードル高いな
やめよう >>649
xcode必須なiphoneアプリはアレだが、windowsなら簡単だと思うが…どの辺にハードルを感じてるの? flutter doctor ってなに?
何がインストールされてるみたいですよ って調べさせるコマンド?
[√] って出るけど、これチェックマークが文字化けしてるの? >>651
質問が多いな
flutter doctorは調べたらわかると思うが、flutterの導入がどこまで完了してるかチェックしてくれるやつだ
チェックマークを√で表してるだけで文字化けではない >>652
ありがとう
質問はまだまだたくさんするよ やっとこさデモプログラムまで起動出来たわ
ここからが本番だな 国内フリーランス1670万人 1年で57%増 雇用不安背景、労働人口の2割超す
副業・兼業812万人の見通し 去年より100万人余増 コロナ影響か
副業収入、「副業が本業収入を超えた」21.8% 約7割が副業・複業先への転職にも前向き
副業のほうが本業より収入が多い 5人に1人
3000人が回答!「副業・ダブルワーク」実態調査2人に1人が「副業・ダブルワーク」の経験ありと回答。
20代の7割が「副業したい」、興味のある仕事は?
ランサーズ、『フリーランス実態調査 2021』を発表
〜フリーランス人口、経済規模は過去最大に〜
仕事は9割外注すれば売り上げが爆増する
フリーランス市場規模が20兆円を突破 -副業は8兆円- 調査と言って自分達に都合のいい数字だけ集めればどうにでもなりますわな笑 「はじめてのFlutter入門: iOS/Androidアプリ開発の⼀歩を踏み出そう!」
この本がFlutter 2.8に対応しているとのことだが、
この本のリリースが9月
Flutter 2.8のリリースは12月
デマ? 別に書いてあることが2.8でも動けば2.8対応ってことじゃね?? 初版は9月発売だから2.2(?)対応だけど、その後の改訂版/増補版で2.8に対応した感じじゃね >>658
都合のいいデータを集めるより、調査と称してデータ捏造をする方が簡単だよ。 >>665
わかるけどそれだと何かあって詰められた時に「すみません、嘘でした」と言わないといけなくなるかなと。 UIのデザインをするのに コード書くのってしんどくない?
というかUIとロジックを分離したいという欲求は無いの? >>669
分離したいからみんな分離して書いてるよ >>669
変に勘違いしてる人もいるけどXMLやXAMLもれっきとしたコードだからね。
View分割のために違う構文使うよりdart/flutteでView記述したほうが学習コスト低いわ。 >>672
あなたの言うポトペタが何を指すのか分からないが、見た目通りの絶対座標でコントロールを置いて、イベントをコードビハインドで書くような事なら同じようにできる。 150ms近くかかってUIをブロックしてた処理をバックグラウンドisolateに移したらUIをbブロックしなくなったが処理自体に1000ms近くかかるようになってて笑えない...
糞isolateいい加減にしろや >>677
他人が作ったライブラリでisolate機能もそのライブラリ組み込みの利用してて、
バッチ機能あったんでデータをバッチで一括でデータ渡すようにしたらほぼ問題なくなった
お手数かけた VisualStudioCodeでFlutterアプリがコーディングできるようになったけど
exeの作り方がわからん
「デバッグなしで実行」で出来るexeを横からコピーすればいい? >>680
プロジェクトのディレクトリで
flutter build windows
で作れる >>681
ありがとう! できた! やったー!
これ単品exeにはならないんだね
dllはともかくdataフォルダが別途必要なのか
けっこう邪魔くさい仕様だな >>682
単一のexeにビルドするにはFlutterのエンジンごとリンクしてコンパイルしなきゃいけないから、すごく複雑で実装できないみたい。そこはFlutterを使うために仕方ないのである意味欠点になり得るかも
代替としてはMSIXのpubパッケージを使ってMSIXの形式でパッケージすればインストーラみたいな形式で配布できるよ >>683
dataフォルダを含めて自己解凍形式の圧縮ファイルにして、展開後に本体のexeを叩く
ような仕組みにすればよい肝駿河? 書いてあるだろ
https://docs.flutter.dev/desktop#build-a-release-app
> Build a release app
>
> To generate a release build, run one of the following commands:
>
> PS C:\> flutter build windows
> $ flutter build macos
> $ flutter build linux
「デバッグなしで実行」で出来るexeを横からコピーすればいい? 」って無能すぎるのでやめたほうがいい。 リバポッドややこしいな
作った人へたくそすぎるだろw
こんなのとずっと付き合っていかにゃならんのは
嫌な上司とこの先ずっと一緒にいることを
想像した時みたいな絶望感があるぞ >>690
別になんでもええねん、好きにしたらええんや。 ディレクトリとファイル構成のベストプラクティスがわかりません
参考にしたほうがいいリポジトリ教えてください flutter_hooksをつかうとおぞましいコードになるって聞くけどほんとだね
これがいいっておもう人とおもわない人は美的感覚がちがうから一緒にに仕事したらもめそう
https://zenn.dev/sgr_ksmt/articles/f399cd7e085132 >>694
Dartと相性があまり良くないのが気になるけど、Reactを良く使ってる人にはすごく合ってると思う
どういうフレームワークを使ってきたかで、ここらへんの感覚は変わってくるんじゃないかな Language tourがよくまとまってるから本いらないよ C#やJavaの感覚でdartを書いてるけど、問題無く動いてるな flutterでiosのエミュレータでは動くのにxcodeのarchiveがうまくいかないのはなぜ?
Module 'google_maps_fkutter' not found
flutter clean とか get pub とかやってもダメだった 質問できちんとエラーメッセージを載せてくる質問は
ひどくもなんともない。 むしろ良い。 きちんと?
一目瞭然な間違いじゃなかったらその一行だけのエラーメッセージじゃ不十分だろ >>709
普段知ったかしてる奴らばかりなのが露呈するな
の中にも答えは無い、という意味。
ここで無料で教えても何もメリットが無いわな。 >>709
エラーメッセージの誤字が原因と思ってるやつがまさかいるとはw 入力ミスだとしてもエラーメッセージの誤字だとしても
どちらにしてもヤバすぎワロタ Module 'google_maps_flutter' not foundのことだと思うけど
flutter cleanもflutter pub getもしてだめならxcworkspaceを開いてみるかだね
iOSのエミュレータで動いてるのにXcodeでarchiveしたら
Module '*******' not foundみたいなエラーが出るのはなんか腑に落ちないよ おおかた、 pubspec.yaml ファイルにタイプミスしてるんでないの? Navigator 2.0公式パッケージを作る話があったと思いますが
進展ないですよね 今でもflutter APIの中に含まれてると思うけど、公式パッケージって何? そもそもルーター絡みで別パッケージ必要と思うか??go_routerとかあるけど
画面いっぱいあるとほしくなるもんなのか?
flutter webとかも考慮するとアドレスバーに表示される?だから名前付きルートにしなくもないが名前付きルートさえも使ってないし
現状HogePageにstaticなshowメソッド生やして遷移させてるけど
これで取りあえず十分だな
Navigator 2.0の宣言的な遷移にも移行してまで得られるメリットがそこまで感じられない そういやflutterでdeep linkをやったことなかったからそこまで含めるとどうなるかわからん 必要なら使うRouter、不要なら従来のNavigator
それだけの事 2月3日遂にWindows正式対応ですか
つか、デスクトップよりWebがやばいらしいな
wenいろいろダメすぎて望みないのか... つか、flutter結構欠陥あるな
従来のViewベースでCoordinatorLayoutなどで標準で出来てた事がバグやら何やらで出来ないのが
もちろん、それ以外は格段にUI作りやすいが モバイルはGoogle公式のアプリでも使われてるみたいだが
Webにはそんな話はない
自社で使うようになったらこっちも検討するレベル >>727
macOS, iOSだって、xCodeは必要だろ?JK Linux版ならgccだっけか? ホビーユーザーならmacやlinuxと変わらんよ。
会社にとってはほとんど価値のない俺専用のツールを作るのに、毎度決裁もらうのは面倒だしアホらしい チームでriverpod採用しようかなと検討したこともあったけど、一見して意味わからなくて公式推奨のproviderにした
今んとこあんま不便さないけど、画面間でのイベント通知はproviderで何とかするんじゃなくて素直にevent_busでやることにした メモリは8GBで大丈夫だと思うけどストレージのほうが512GBあった方が良い気がする。
iOSもAndroidもエミュレーター容量要る Providerでいいよ
Riverpodで作れてProviderで作れないものがあるのでもないしな M1 Air、最初8GBモデルにしたけど、返品可能期間に16GB買い直した。
iOSエミュは軽いけど泥エミュは少しつらいよ。 Safariとxcodeで8ギガ使う
そこにandroid studioとエミュレータだと
すぐメモリ10ギガ超えるぞ android studioメモリ食うけどvisual studio codeじゃダメなの? WSL2, Linux, Docker などが必須だから、
最低でも、16GB メモリが必要
パソコン工房のノートは、32GB
でも3月には、インテル12世代CPU のコア数が増えるから、
皆、今は買い控えしてる
4コアが、6 + 8 コアの速度重視・省エネの2種類になるとか ちなみにmacOS11.6.3の2020 M1でAndroid StudioからiOSとAndroidのシミュレーターとSafariで2つタブ開いて6.8GB使ってる。
ガッツリ開発するならメモリ足らないかも知れないけどプログラミング学習用途なら8GBでもなんとかなるんじゃないかな。
ストレージは全部合わせて130GBは使ってる。256GBでも良さそうな気もする。 Mac でも本番環境がLinux だから、
Linux, Docker を使えば、8GB じゃ足りない >>731な尋ね方する人は本番環境とか縁無さそうなんだけどどうなんだろうね。
>>731はスマホアプリ作りたいとかそんな人なんじゃないの? >>732-742
雑な質問にも関わらず答えて頂きありがとうございます。
おかげで大体の目測が付きました。
参考にさせて頂きます。 もういい加減まともなIDEはでましたか?
Android StudioはゴミすぎてVS2022レベルのIDEが欲しいんですが?
JetBrainsの作るIDEはどれもクソ重いうえに中途半端だからVSでFlutter開発ができる拡張は出ましたか? >>745
開発系のコマンドはxcodeで入るんじゃないかな。
それ以上のコマンド望むならMacPortsかHomebrew入れる。
何のGNUコマンド使いたいの? flutterにmicrosoftが参加することは企業的にないだろうね Chromiumに参加する今のMSはわからんじゃろ
vscodeやEdgeしかり他所に乗っかった方がアイツら活き活きするし MSもflutterにsurface duoサポートを追加したうえでflutter愛してるぜこんなんじゃ終わんねーよとか言ってるけど 素晴らしいな
アポーと違い、MSは開発者がいるところならどこにでも行って獲得しようとする
Xamarin はもうちょっとがんばれ Android Studio最高じゃん
VSCodeは専用品じゃないから使いにくい, 見にくい, いわれてるほど軽くもない Android Studioも結局IntelliJ IDEAにプラグイン入れただけじゃね MSは例のfluent uiをサポートしてやれよ
個人にやらせんなよ MSは例のfluent uiをサポートしてやれよ
個人にやらせんなよ IntelliJ IDEA、悔しいけどよくできてる。OSS頑張ってほしいからVSCodeに頑張ってもらいたいけど元がIDEとエディタの違いが大きい気がする。
Eclipseも頑張ってたけどメモリ食うし遅いし不安定だしどうしようもなかった receive_sharing_intent で、urlの文字列を取り込みたいんだけど、専用urlでアプリ起動はするけど取り込みができない。
ライブラリーの不具合なのかなぁ? WindowsアプリをFlutterで書こうという人って居るのかな 俺もやってるぞ。
Android用のFlutterアプリも作ってたんだが、プラットフォーム追加するだけだと動かなくてシュンとしてた。
パッケージが充実したらかわるかもしれんけど、作り直すか悩んでる、 >>765
ひと手間いる感じかな?まぁ試してみよう… >>766
まだ対応してないパッケージが多い感じ。
もう少しこなれればなぁって思ってる。 Qtもライセンス的に使いにくくなったしflutter desktopに期待していい? ハイパフォーマンス求めない普通のアプリならflutterで十分じゃね
ただ、material designはデスクトップで動かすのダサい アプリの見た目を調整するのがすごくめんどい
UI設計をコードでやらなきゃならないのってどうなん >>771
GUIで調整するのめんどいからコードでやらせろって声に応えた結果こうなってる 多分ねーー
めちゃくちゃレベル低い考えで言ってるとおもうよ UIエディタで作成した画面をdartにしてくれるアプリって無いのかな >>777
素晴らしいじゃん!
さっそく練習すうわ >>778
これ昔使ったことあるけど微妙やで。
一番最初はいいんだけどコード生成後のカスタマイズは結局自分で直さないといけないのでちゃんとWidgetを理解しないと触れない。
どうせ理解が必要なら最初からコードで書いたほうが早かったりする。 >>770
わかる。Fluentにしたくなってしまう fluentにすりゃいいじゃん
FlutterはMaterial専用じゃないでしょ fluent_uiでちょっと本格的なアプリ作ってみようとしたけど
速攻で正しく表示されてねぇー??とか?にぶつかって止めた
こなれてなさすぎて
もっと使ってる人増えてバグ出し進まないとダルそう Flutterのfluent_uiの解説サイトでも探すか fluent_uiのページに丁寧に書かれてるじゃん? 日本語サイトがほしいな
どうしても英語だと読むのに時間が倍かかる 翻訳なんて無理ですよ
頻繁にドキュメント更新されてますから local_auth、Android タブレットだと
指紋認証で落ちるんだけど、なんこれ。 Flutter初心者(というかアプリ開発初心者)でお聞きしたいのですが、
デバイス上に結構な枚数の画像を格納しておいて、一覧表示とかしたいのですが、
ファイルの格納方式をどうしようか考えてます。
普通にローカルに画像ファイルとして保存するか、ローカルDB(Isar)にUint8List に変換したものを格納するかなのですが、
どっちのが画像読み出して表示するときのパフォーマンスいいとかありますかね?
ざっくりした質問ですみません
そんなもん場合によるよ!ってならそれでいいんですが、
そんなの決まってるじゃんとかだった教えてもらいたく、、
全然開発とか初心者でよくわからないので。。。 迷ってるってことはIsarの機能は必要ないってことでしょ?
実績が乏しいDBMSなんか避けた方がよくない? というかこれが実績少ないとかよく知らずに使っていて、、、
本当はHiveがメジャーっぽいので使ってたのですが、クエリが使えなかったので
仕方なく後継っぽいIsarに乗り換えてました
迷ってるのは、ファイル操作的にはIsarに突っ込んじゃったほうがデータ操作とか楽そうだなと思いつつ
なんかUint8ListからImageに変換するのっておそそうだなとか思いつつと言う感じで、、 サムネイルみたいな小さな画像ならDBに突っ込んじゃうけど
大きな画像なら後は書き込みの頻度はどうなってるか つか、ファイルに保存しようがUint8ListからImageに変換してるからそこの部分は同じだと思う ファイルに保存してもUint8Listにしてるんですね
恥ずかしながら知りませんでした。。。
ファイルサイズ的にはスマホで一覧表示するのでサムネイルサイズにすると思ってて、
圧縮もするので(どこまで圧縮するのか悩みものですが。。)DBに突っ込んじゃおうかなと思ってます
助かりました
ありがとうございました https://api.flutter.dev/flutter/dart-ui/ImageDescriptor-class.html
これが画像なまわりのコアの部分
で、入力としてImmutableBufferを与えないといけない
で、ImmutableBufferを作るにはUint8Listが必要
つまり、ファイルから読む場合でもいったん全部メモリに読み込んでUint8Listにしなきゃいけない ありがとうございます!
Dartで実装されていると遅いんですかね?知りませんでした
ImageDescriptorだといろいろ画像操作ができるんですかね?
今画像はFilepickerから取得してて、そのときに適当にピクセル数とimageQuality?調節してサイズを絞ってました
けど、これだと元ファイルのサイズによって動的に圧縮率とか変えられないので、
これだと元ファイルがかなり大きかったりすると十分に圧縮できなくてイマイチだなあと思ってるんですよね
ファイルアップロードはそんなに多くないのと、基本はローカルからFirebaseに上げるので、
ネットワークの速度のほうがネックなので、速度的にはあんまり気にしてないんですけどね テストを書く場合ってなんのパッケージを使うのが定番ですか? Ruby on Rails の画像変換は、ImageMagick か、軽量のlibvips を使う 日本語サイトが欲しいって、
Chrome の翻訳ボタンを押せば、ページを丸ごと翻訳できるけど >これだと元ファイルのサイズによって動的に圧縮率とか変えられないので、
サイズを取得して確認して決めれば? >810
サイズに応じて変えるのだったら、たしかにある程度は調整できそうですね
ちょっとやってみます
ありがとうございます storyboardとかいうこの世の地獄を煮詰めてひり出したウンコオブザウンコのワームホールに飲まれて死んだ者なのですが
Flutterすれば救済されますか? storyboardとかいうこの世全ての悪を煮詰めてひり出したウンコオブザ雲粉のワームホールに飲まれて死んだ者なのですが
Flutterすれば救済されますか? dartで書かれてるから遅いというのは嘘で、結構早いよ
Cに比べると遅くなる可能性があるけどね いつgcしてんだ?ってぐらいに速い。体感ではAndroidのJavaより速い。さすがにNativeなSwiftよりは遅いかもしれないがそれでも十分に速い。 >>814
storyboard控えめに言って基地害すぎませんか?
激重xcodeのGUIでチマチマチマチマチマチマチマチマチマチマ弄った挙げ句クラッシュ
吐き出されるコードはもはやバイナリでdiff管理する意味も無い
危うくjobsを地獄にまで追いかけにいくところでしたよ CPU intensiveな画像のエンコードは通常C+asm,simdで最適化かけるし
数倍は速度違う
適当な事言うやつ多すぎ >>809
まだおかしなところが多いので、原文のまま読んだ方が安全だわ 機械翻訳して要旨を掴んで気になるところは原文読むかなあ >>817
その上さらにviewWillXXXXとViewDidXXXXで面倒見てやらないといけないのでほんまクソ >>821
ここのデザインはstoryboardで変えられませ〜〜〜んw
swiftコピペ10行くらい書いてくださ〜〜いwとかな
ほんと何度殺してやろうと思ったかわからん
わかってくれて嬉しいで
FlutterはそういうのがないGoogle神が作りたもうた天国なんですよね? >>817
そもそもxibがクソ過ぎるしな
SwiftUIも対応状況微妙だし >>823
個人差あるだろうけどUIはかなり気に入ってるな、RowとかColumnにWidget並べる時のサイズ周りのConstraintsがめんどくさいけどそれでもstoryboardでScrollViewの制約ポチポチするよりマシに感じる
DartはSwiftと比べるとenum(extensionでカバー可?)、unwrapがこなれない感じはあるがそんくらいかな、Swift使いこなせてるともっと粗が目立つかも storyboardが使いにくいのは否定しないけどここはFlutterスレ 昨日、コード書いてる最中にいきなりデバッグすら起動しなくなって
VisualStudio2022をアンインストールとかしてたんだけど、
flutterのissueにあったapp.soコピペでなんとか治った
AOTなんたらエラーが出てくる前に、CMakeFileの方のエラーで止まってたんだけど
いろいろ触って原因わからんままです
アプデしたわけでもないのに本当にいきなり突然だったからビビったわ
他の人もなってたりします? go_routerがflutterパッケージになったのか
俺はauto_routeの方が好きなんだけどなー 治ったと思ったけど治ってなかったわ
ホットリロードもリフレッシュも効かない
結局VisualStudio2022アンインストール VSCodeのCMake拡張機能の設定
Outputをちゃんと見ること
などでいけました
半日以上くらい時間無駄にした webの読み込みが重いらしいが、ホントならちとキツいかな… flutterでのwebってどのくらいやる気あるんだろうか?
よほど特化したメリットない限り、がっつりと切り替えていくことは無さそうな気がしてる。 初期ロードが遅いけどページの切り替わりは速い
あとjsが最適化されて出力されるのでその演算も速い
でも元々そんなに時間かかるようなものが多くないからメリットはほぼない
ウェブだけに作るより、他の環境向けに作っててウェブへの対応が楽ってくらいじゃないか? WindowsのMACアドレス取得したくて、ぐぐってみたけど、
flutter_window.cppにMethodChannelを追加してなんたらみたいなのしか出てこない。
cpp分からないからProcess.runでipcofig打つbatを起動して取得するようにした。
どうもやり方が間違ってる気がしてならない。
まずいですか? デバッグだといけたけどビルドするといけませんでした
... complete startup script
で止まってる。 batじゃなくて単純にcmdをProcess.runで動かしたらビルドした状態でも動作しました。
ちょっとデバッグと挙動違う気がしますが。
flutterじゃない部分も勉強しないとな。
こういうのは他人が作ってるライブラリとかをひたすら読んでみるのが勉強になるんですかね。 >>836
Win限定で良いならcmd使うのも全然間違いじゃない。
マルチプラットフォームにするならMethodChannel使うべきだけど。
何でも良いので1つ軽いブラグインのMethodChannelの使い方を読んだら理解できると思う。面倒くさいけどそう難しくはない。 >>837
なるほどありがとう
なんとかプラットフォーム個別の機能も使えるように精進します。 FutureProviderで取得した値を使って、別の非同期処理を呼び出すFutureProviderを作りたいのですが、参考になるサイトやコードなどあったら教えていただけないでしょうか。 >>840
より良いやり方や考え方などあれば教えていただけないでしょうか >>842
いや、あなたがより良い/汚くないと考えている方法を聞いてるんでしょ。
それはあなたに聞かないとわかるわけないじゃん笑 かなり冗長な部分が出てしまいますが、一つのメソッド内で非同期通信2回やるようにします。両方終わってから処理すれば一応動きそうなので。 >>845
一方が他方に依存するように書いておけば勝手に更新してくれる
ProviderなのかRiverpodなのかで話が変わるけど >>846
riverpod使っています。
先に実行されるメソッドの返り値がfutureオブジェクトでも後続処理は先行処理の終了を待ってから自動実行してくれるのでしょうか。 >>847
情報が少なすぎてなんと回答すれば良いか分からない
よくわからないが、1つ目のメソッドの実行をawaitで待ってから、もう一つのメソッドを実行すればいいんじゃないの?
ただ、独立した関数ぐらいの感覚でProviderを増やすのは、上の人の指摘通り汚いやり方だと思う、、、とだけ忠告しておく
FutureProviderは、riverpodのProviderの中で一番上級者向けの、使いこなすのが難しいクラス
FutureProviderの使用を縛っている職場もあるらしい。自分もめったに使わん awaitで対応できないなら、
『非同期処理』と『チェーン』でググればいいと思う
Future.then()でも対応できないなら、Future.wait()で対応すればいい >>851
ありがとうございます。futureの使い方もう一度勉強しなおしてみます。
情報が少なく申し訳ありません。実際にやりたいことは
親widgetがapiで取得した値を2つの子widgetに引き継ぎ、子widgetがそれぞれ引き継いだ値を引数にapiを呼び出して取得した値を表示する。
といったことをやりたいと考えています。 もし誰かわかったら教えてほしいのですが
showModalBottomSheet で表示させたモーダル上のテキストの内容を更新して、
再描写したいのですが、
Riverpodを使っているため、
ベースとなっている画面がStatefulWidgetじゃなくてConsumerWidgetになっていて、setStateが使えません
こういうときってどうすればいいですかね
やりたいことはGoogleカレンダみたいな画面をつくることで、
メインの画面でカレンダを表示させて、
カレンダのどこかをタップしたら、下からモーダルが出てきて、
そこで日付とかイベントのタイトルを編集し、
確定することでDBに書き込みにいくみたいなことをしたいです >>853
そこで困るならRiverpodを使わずにStatefullWidgetにすりゃいいと思うが
モーダル上のテキストをProvider(多分StateProviderかStateNotifierProvider)をwatchして取得すれば、そのproviderのstateが変わったタイミングでモーダルも更新される 目的がスキル向上ならばriverpodを使い続けてもいいけど、
そうでないなら使用をやめた方がいい ConsumerStatefulWidget使えばいいよ ConsumerStatefulWidgetは使いどころがあんまりない印象
前に設計段階で、カスタムWidgetのようなUI寄りの状態管理をsetStateにまかせて、その他の状態管理をProviderで行う
みたいな使い分けをしようと考えたことがあるけど
実装をはじめてみると、UI寄りの状態管理もProviderでないとうまく書けないところが出てきて、
最初に決めたルールがぼやけてしまった >>842
いや、あなたがより良い/汚くないと考えている方法を聞いてるんでしょ。
それはあなたに聞かないとわかるわけないじゃん笑 いろいろアドバイスありがとうございます
対応は迷いますね
ただずっとRiverpodを使う前提できてしまったので、ConsumerStatefulWidget使うかなあと思いますが
いろいろ試してみます >>860
と底辺さんが申しております。
パッケージ使わずに何作るの。
使うけど振り回されてはいない、みたいなことか?
どうでもいいよ誰やねん! 流石にその自演は本人以外にはモロバレなので自重した方がいいよ >>859
ConsumerStatefulWidgetは想定通りに動いてくれないことが多いから触りたくない
まじで振り回される
……とだけ忠告しておく dartってC++に近いよな
C#JavaJavascriptなんかより 色んな言語の要素を取り入れようとしたけど挫折してとりあえずJSのアンチテーゼとして型安全な静的型付けにしたってだけのかなり中途半端な言語ってイメージしかない
C++の上っ面だけをベースに開発してる癖にJavaの冗長性を随所に盛り込んだがコーディングがクソだるい言語仕様
C#をパクるかC#を採用すればいいのにGoogleお得意の模倣したりパクったけど劣化コピーになっちゃったテヘペロって言語
とにかく異常に冗長でわかり辛いキーワードや構文で書き辛く型を強制しただけのガバガバなスコープでNamespaceもないとかDart設計アーキテクトはまったくセンスを感じないしセンスないわ 私はDartは好きな言語だからFlutterも楽しい Dart :
import ‘hoge¥b.dart’;
import ‘hoge¥c.dart’;
class A extends B implements C {
@override
bool execute(){
return true;
}
と
C# :
using B;
using C;
Class A : B, C {
public override bool Execute() => true;
これだけ見ても如何にC#が簡潔かつ読みやすく書きやすいかわかるよな
なぜJavaみたいな冗長な言語仕様に寄せるのかと言えばAndroidがJavaだからという完全なるGoogleの都合だからな なぜわざわざ新言語を作ったのかねぇ
.NET MAUI がちゃんと実装されてちゃんと動けば、flutterは誰も使わなくなるよ
flutterって、あのGoogleオレオレ言語のやつでしょ?ってなる まぁみんな考えることは同じなわけでFlutnetというXamarinでFlutter開発ができるものがあるが結局ラッパーだからバージョンアップが遅れるし何より有料だからな mauiよりkotlinのcomposeの方が有力じゃね? まぁ、現状iOS向けはないし、compose for drsktopだとandroidとシングルソースはまだ無理っぽいがmicrosoftのmauiよりjetbrainsの方がやる気ありそう 数年以内に多分また新しい言語出してくるだろうな
それがいいものだといいんだが GoogleってまだGoとDart(とGAS)しか作ってない?
思ったより少ない go もみりゃわかるが、Googleの言語デザインセンスはほんとクソ
何がクソといってそもそも後発で自分が検索を牛耳ってるくせして名前が go ときたもんだバカかアホかと アロー関数はDartでもある。
読みやすいて結局ただの慣れ。
それにコード補完あるから全部タイプするわけじゃない。
初学者は冗長な方が読みやすいというのはある。
多分そういうの考えてあえて冗長にしてるような気はする。
知りませんけどね。 C#やXamarinを主張する奴が定期的に現れるねw 自動実装プロパティもないクソ言語を擁護できるのはJavaおじしかおらんよな >>869
C#の方のBとCはInterfaceじゃないの?
悪意を持ってDartだけextends B implements Cで長ったらしく見せようとしてる? >>881
ググればすぐわかることだけど、Bは継承だよ。インターフェースかもしれんけど
アローを使ってないところはわざとかもしれん Javaはクラスの公開したい変数にBeansの名残りでgetterとsetterを作ることになるのが本当にクソ(作らなきゃいいと言えばそうなんだが)
Dartはそこらへん楽でいいね >>883
getterとsetterはlombok使って自動生成だよ
みんな使ってる >>884
おっしゃる通り、業務ではlombok使ってる。
でも言語仕様と昔の慣習がちょっと釈然としないんよね 変な言語で変な教義にこだわるから変なプリプロセッサがほしくなるんだよ
変な漢ならpublicにすればいい >>884
lombok使って自動生成だよ!(キリッ
いやいやクラスの半分以上も埋めてしまう不必要なボイラープレートコード満載の言語仕様がおかしいと議論してるのにわざわざ手間のかかるアノテーションつけてLombok使って自動生成だよは草
Javaを正当化するやつってゴミみたいな言語に慣らされてすぎててバイアスかかりまくりで正常な判断や思考ができないみたいだな >>887
あなたの正常認定誰得なん?笑
あなたが気持ち良いの?
そんなのキモすぎるだけやん。 JavaもDartも過去のしがらみ引きずった鈍臭い言語仕様なんだから仲良くしろよ Dartがペストだとは思わんが嫌いじゃないな。
言語拡張を繰り返し開発案件のバージョン制限によりどの情報を参考にして良いのかわけ分からなくなってるC#より良い。
それでもC#は好きなんだけど、Javaは刺賀にもう駄目かな。
Pythonは別物過ぎて比較にならん。 いくらC#が良くても、Xamarinはコンセプト・アーキテクチャが終わっとる。
React NativeはFlutterに近い考え方と思うけど、Android対応がいまいちなのと、膨大なエコシステムが混沌としててとっつきにくい。 マルチアカウントを実装しようとして、
ひとつのアカウントの中で、オブジェクトがシングルトンであることを実現するには
どうすれば良いか悩んでいたけど
riverpodをやめて、ただのproviderを使えば良いだけだった
riverpodを上位互換と言ってたヤツ誰だよ(駄目な悪態) リバポは上位でも互換でもないですよー
意識高い系(悪い意味の)に好まれてますw 調べてみると、やっぱりマルチアカウントの実装はproviderでできそうだわ
>>896
riverpodは状態をグローバル・シングルトンで管理して良い時に使うライブラリだから
どちらかというと技術を必要としない人に好まれるものだと思う
意識高い系の逆じゃないか… あーちくしょー
riverpodで書いたコードをすべてproviderに書き直すのだりぃいいい Rustの時代が来るのにDartなんて話にならんのよ riverpodに限らず大体は使い方次第なきがする
ちゃんと設計してればriverpodも使いやすい >>894
フレームワークとは関係なく普通にfactoryとかfactory methodパターンじゃだめなんか? diもnotifierもunion classも同梱されて
futureの世話みたいな開発者に任せればいい機能まであって
その子達を使った設計を考えるから
riverpodでしか使えない設計になりがちじゃない?
全部使わなくていいけどriverpod押しの人は駆使したがるよね
provider風にstatenotifierproviderだけで作りたくてもやっぱりriverpodの設計になっちゃう
refを求めてprovider地獄になっちゃって難しかったよ >>902
Factoryでも実装できるんだけど、懸念点があった
アカウントごとに分けられる処理は全てアカウントごとに分ける必要があったんだけど
モデルとリポジトリをアカウントごとに分けるために、
モデル層のインスタンスをアカウントに対応してひとつずつ用意する必要があった
それは、Factoryクラスにロジックを追加するだけで実装可能だけど、
そういう設計にしたら、今度はインスタンスのライフサイクルの問題が出てくる
バグの修正、安定化……って考えたら、
riverpodで書いたコードをproviderに書き直す方がマシにみえた 全てをriver_podからproviderに書き換えて、account_managerを実装中に気がついた
この実装、いけてないわ…
かくなる上は、クラスにメタデータを追加する独自アノテーションを実装しよう
アカウントが切り替わるたびに、インスタンスが切り替わる奴
……絶対きついわ 今のところpubが質的に貧相すぎてflutterが有利な局面は限られてる感じある 独自アノテーションの自由度が低い
リフレクションも重いし、メンテが大変そう…
Factoryの方がマシか ああ、ChangeNotifierを継承したInjectorを作って、
Injectorの中で、
アカウントとインスタンスのMAPの保存・更新と、インスタンスの生成
の責務を追わせればいいのか
InjectorはProviderの中で呼び出せばいい……4日も悩んだのに答えはシンプルだった 責務がめちゃくちゃになってそう
riverpod使ってる人って全体的な設計ってどうしてるの??
MVVM?MVHogehoge? しらんが、riverpod使ってる人みんな試行錯誤してて独自のパターンとか生み出してるのかな riverpod+ChangeNotifierでMVVMに出来てる C#とXAMLじゃないのにMVVMとか意味ないぞ
元々XAMLとMVVMがセットで設計されてるフロントエンドフレームワークなんだが riverpodを使うとmodel側の状態の更新がviewにすぐ反映されるから
riverpod+ChangeNotifierを使うと、コードを整理するだけで自然とViewModelができる as void Function()で関数をダウンキャストできるの楽だな
C#だとInterface定義してジェネリックにしないと危険すぎてそんなキャストやろうと思わないけど >>913
認識のあやまり
mvvmはmvpの一形態あるいは派生でしかない >>916
それな!
有名っぽいイヌの人はriverpodでは違う設計になるって言ってたけど
それはよくないんじゃないの〜って私は思ったよ
プロバイダーを束ねるみたいなriverpod独自の機能をたくさん使うと
依存した設計になっちゃうね
それに解りにくくなるから好きじゃないなー >>918
ものすごい思い込みと妄想で断定してるな嘘も100回言えば真実ってか?韓国人かよ
ちゃんとMSのホワイトペーパーかそれに準ずるソース出せるんだよなオオカミ少年?てかさっさとソース出せ MVVM関していえば君がまちがってると思う
C#とXAMLじゃなくても使えるし >>921
だからソース貼ればお前の勝ちだから早く証拠のソース貼れよ たとえばこんなのでいいの?
https://nextpublishing.jp/book/13660.html
fluterじゃないとかAndroid公式じゃないとかただの書籍じゃないかとか難癖つけられるだけな気もするけど >>925
いやだからお前は
> >>913
> 認識のあやまり
> mvvmはmvpの一形態あるいは派生でしかない
って断言してるんだがMVVMがMVPの一形態(日本語がおかしい)だって断定して>>913を否定してるんだからその証拠のソース示せって言ってんだよ
だから断言できるMSのホワイトペーパーかそれに準ずる証拠をさっさと示せよ
>>925
入門書見せてお前の妄想の証拠になるわけないだろ
さっさと思い込みと妄想とノリ嘘吐いちゃいましたごめんなさいしろや >>913の
>C#とXAMLじゃないのにMVVMとか意味ないぞ
についての反例を上げたんだがやっぱり難癖つけられただけに終わったか
ていうか俺918じゃないんだけどさあ
罵倒すること自体が目的になってるからこういう口調がデフォルトになってるんだろうねこの人は うん
そうだと思う
時間の無駄だから相手するのやめた方がいいね
俺らはMVVMは他でも使える派
彼らはMVVMはC#とXAMLでしか意味ない派
でおしまいでいいよ ソース示せず思い込みと妄想の大嘘確定で敗北して負け犬の遠吠えで逃亡してんの草
脊髄反射でレスしちゃいました勘違いして知ったかしてごめんねテヘペロってさっさとあやまればいいのにほんとアホだわ MVVMに挫折して脱落したおじさんなんじゃないかな C#のしつこい主張で老害の気配も感じてたけどホントに老害だったああぁぁああ
「ってか?」って古くて恥ずかしいからやめて〜 きゃああ 理詰めで論破されて悔しくて悔しくて顔真っ赤でIDコロコロ自演とか俺だったら恥ずかしすぎて自殺しちゃうね めんどくさい話をしてるな
はっきりしているのは、vi はクソだってことだ MVVMの発祥はMSのWPF辺りだけどC#とXAMLしかMVVMじゃないという根拠が分からん。 脱落したおじさんなんじゃないかな
と5chで妄想してるおじさんもそう変わらんやろ笑 誰かflutterのアップデートごとに内容を記事にまとめて
アフィ広告ふみますからおねがい c#のmvvmは
純粋mvvmというより
mvvmをblandで利用する為に拡張しまくった
bland.SDKであると言うのが実態 FlutterでWindowsデスクトップアプリ作れるみたいだけど、ロジック部分をC#で書けますか?
スレッド管理が超重要だけど、Dart覚えながらスレッド管理し切る自信がないのでロジックだけC#使いたいです。 >>939
C#のロジックをDLL化すればいけるんじゃね?
それかflutnetを使うか。 blandってなんだよblendだよ馬鹿w
元はMSがCreature Housewから買収したExpressionというベクターツールだよボケ
こんな無知で知ったかしてるやつが噛みついてきてんだからレベル低いとかじゃなくて論外なんだよアホ たかだかtypoでそこまで叩けるなんて凄いね
他に反論できなかったのかな? あおり運転する人みたいなガラの悪さだね〜
こわーい Flutterをオライリーで学ぶ人は結構厳しいものがある オライリーは勉強する人のための本じゃなくて
勉強した人のための本やしなぁ オライリーは固定化された技術を系統だって理解するには良いけど、さすがに1〜2年違うとガラリと変わる風景には対応できんだろ。 >>949
せっけん1こ、釘1本、マッチ100本、えんぴつ450本、
石灰コップ1ぱい、硫黄・マグネシウムつまみずつ、
水1.8リットル を用意してください 地面に石灰で直径31.35センチの円を描き、中に六芒星を描きます Flutterは進化が早いから書籍は向いてないかも 進化が早いといえば聞こえがいいけどようするに
基本設計が適当で行き当たりばったりなので
毎回派手に仕様変更され続けてる言語でしょ?
正直、仕事で無ければ触りたくない言語だと思う フレームワークを言語と間違えちゃうのかわいいねっっ!!! スマホOSが機能追加繰り返してるんだから
それに合わせて拡張していくのは当然なんだけどな
実際OSアプデの度に新機能追加したFlutterを数日以内にリリースしてるからね
Googleはかなり本気でサポートしてるよ
Xamarinなんて年1回少しだけ機能追加して後はバグ修正しかしてないからね
あの調子じゃすぐ時代遅れになるのに Xamarinの話はNG!
またあの人がきちゃうっ!!!笑 FlutterはGoogleの中の人が飽きたらなくなるが、
Xamarinはユーザーがいなくなってもなくならない
これがGoogleとMSの違い 昔のDartでさえ無くならなかったのに今のFlutter/Dartが無くなるとは思えない DirectX.NET
XNA
SilverLight
Windows Mobile
Internet Explorer
なくならないなんてあるの? Dartの使用者が増えないのは個人開発的にかなり美味しい
みんなが参戦するとすぐ赤い海になるわ
Flutter/Dartならば、開発工程を相当飛ばせるから、
少し前なら大作と呼べるようなアプリを、個人でも現実的な期間で作れる
あとFirebaseやFlutterのAPIの応用例に、チーム開発では使えないような魔法が多いから、
個人開発でもチーム開発に対抗する余地がある
また、日本は海外に比べてレベルがかなり劣ってるから、
海外では学生がポートフォリオで作るようなクオリティーのアプリでも勝負できる >>965
.NET MAUI がリリースされるまでだね
もうすぐ終わりだよ >>967
は?flutter舐めてる?
まだ始まってもねーから!!! >>967
は?flutter舐めてる?
まだ始まってもねーから!!! lintを更新したら、riverpodのコードを急に咎められるようになった
これは潰しにきてるなあ。contextを暗黙に保存していたのか >>973
riverpodを潰しにきてる?
え?ま? ごめん。上のコメントは徹夜で寝ぼけてたんだ
でも『Do not use BuildContexts across async gaps』が出てるようになり
ほんとうに困ったのはマジ
StatefulWidgetを使用しないと上手に対応できない これflutterに関係するかなあ
心配だよ
GoogleCloudの従業員100人がクビ 本人たちはメディアの報道で知る [708866696]
https://greta.5ch.net/test/read.cgi/poverty/1647849795/ 非同期関数の中でNavigatorを呼び出せるラッパークラスを作って対応できたけど
手が遅いから普通に2日もかかってしまった riverpodを使用するとUI側で非同期関数を使用する率が高そうなんだけど
非同期関数からNavigatorを呼び出すと、
『Do not use BuildContexts across async gaps』が出る問題について
皆はどう対処してる? WPFでデスクトップアプリ作ってた頃よりもFlutter使ってる今の方がGUIとロジックの分離を意識できてる気がする >>980
正解の方法かどうか分からんけど、そのエラーはTimer.run()使ってタイミングずらすと回避できるはず。 >>982
ビルド中にmarkNeedsBuildするなってエラーと勘違いしてない? >>982
Timer.run()で不具合回避すると、不具合が発生しないことに保証が立たないから怖いべ…
スマホアプリなら実機で動作確認できればリリースしていいかもしれないががががが こんなブログを見つけた
https://zuma-lab.com/posts/flutter-troubleshooting-called-during-build
WidgetsBinding.instance.addPostFrameCallbackを使っておけば大丈夫だと思う >>986
それも違うでしょ
BuildContextを非同期に使うとunmountされた後になるかもしれんから危険なんよ
内部の動作を知らずに使ってるの? >>987
すまん
>>986はmarkNeedsBuildのエラーを解決する方法にtimer.run()を使用するのは不適当だと言いたかった >>987
内部の動作を知らずに使ってるの?
そういう人もいるだろう。
メインは他の言語・フレームワークの人もいるだろうし、どのレベルで使おうが自由なわけで。 final navigateRequestStateProvider =
ChangeNotifierProvider.autoDispose<NavigateRequestState>((ref) => NavigateRequestState());
class CustomNavigator {
/*
『Do not use BuildContexts across async gaps』を出さないために、
魔法を実行するNavigatorのラッパークラス
Notes:
NavigateRequestState.updateWith()をコールして、ページ遷移のリクエストを登録
NavigateRequestState.updateWith()のnotifyListeners()コール後に、refのWidgetが再buildされる
build後に、CustomNavigator._checkNavigateRequestが実行される
_checkNavigateRequestは、NavigateRequestStateにページ遷移のリクエストがあれば実行する
*/
final Key key;
final BuildContext context;
final WidgetRef ref;
NavigateRequestState? state;
CustomNavigator({required this.key, required this.context, required this.ref}) {
// 魔法
state = ref.watch(navigateRequestStateProvider);
WidgetsBinding.instance.addPostFrameCallback((_) => _checkNavigateRequest()); 自分はこんな感じで『Do not use BuildContexts across async gaps』を回避した import 'package:flutter/cupertino.dart';
class CustomNavigator {
static final GlobalKey<NavigatorState> navigatorKey = GlobalKey<NavigatorState>();
static void pop() {
navigatorKey.currentState?.pop();
}
static void pushNamed({required String nextPagePath}) {
navigatorKey.currentState?.pushNamed(nextPagePath);
}
static void pushReplacementNamed({required String nextPagePath}) {
navigatorKey.currentState?.pushReplacementNamed(nextPagePath);
}
static void pushNamedAndRemoveUntil(
{required String nextPagePath, required routePagePath}) {
navigatorKey.currentState?.pushNamedAndRemoveUntil(nextPagePath, ModalRoute.withName(routePagePath));
}
}
160行の力作が20行に縮んだ… CurrentStateの値が古いままページ遷移しようとしてエラーを出すな
結局、最新のコンテキストで常にページ遷移するように、>>991の書き方をするしかなかった
あるいは、非同期処理の完了を待ってページ遷移させる処理の実装を諦めるか
あるいは、StatefulWidgetで全てのコードを書き直すか すみません。自己解決しました。コード上にこんな箇所があった…
SchedulerBinding.instance.addPostFrameCallback((_) {
SchedulerBinding.instance.addPostFrameCallback((_) {
CustomNavigator.pushReplacementNamed( '/sign_in');
}
}
ただ、GlobalKey<NavigatorState>を使うとホットパス以外にも
遷移できてしまう仕様が気になってます このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 231日 11時間 33分 52秒 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php レス数が1000を超えています。これ以上書き込みはできません。