Flutterやろうよ!!! 5

1デフォルトの名無しさん (アウアウクー MM57-Uiy8)
垢版 |
2024/05/06(月) 11:08:11.78ID:l2ptMPP6M
!extend:on:vvvvv:1000:512
!extend:on:vvvvv:1000:512

ようこそFlutter野郎どもよ!!!
軽い開発環境でモバイルアプリ開発ができるなんて最高じゃねえか
AndroidもiOSも両方行ける、まさに漢のためのツールだな

https://flutter.dev/

前スレ
Flutterやろうよ!!! 4
https://mevius.5ch.net/test/read.cgi/tech/1648427137/
VIPQ2_EXTDAT: default:vvvvv:1000:512:: EXT was configured
2024/06/16(日) 16:07:54.00ID:nmSKaD1B0
関数コールの間違い
151デフォルトの名無しさん (ワッチョイ 7f66-JH9N)
垢版 |
2024/06/16(日) 16:12:46.99ID:IDEikgiG0
>>146
いやw
何も把握してないのに強がらなくていいんだよぼく~?w

お兄さんたちは、ボクのように1から100まで命令しないとまともに動かない低級言語でコミュニケーションをとってるわけじゃないんだからね~?ww
SteramController class を使えば簡単に変更を検知する機構をriverpodを使わなくても実装できるよねっていう話をしてたんだよ?ごめんねレベルの高いコミュニケーションの取り方してたよね汗汗w
文章が長くなりすぎるから、わざわざ低級言語のような解釈しかできない人間に合わせた説明はしなかったんだ。
ごめんね?意味が理解できずに寂しかったんだよね?
だから、あんな恥ずかしいコード晒してまで絡んできたんだよね?それってすごい勇気のいることだよ?ん?

っ!?そうだよね汗、恥ずかしいっていう概念知らないよねwごめんね?1から100まで説明しないと理解できない君の低級言語脳で人生歩んできたんだもんね?
知るわけないよね汗汗ww

まずは、ボクのゴミクズコードが間違ってましたって、みんなにごめんなさいしてみよっか?
ボクのような子たちは、間違いを正しく指摘されても無視して、違う話題を持ってくるんだよね。
それってとっっっっても恥ずかしいことなんだよ?
敗北宣言してるのはもちろんだし負け犬なんだよ?w
あっ!?ごめんね?今更負け犬って騒ぎじゃないよね?
生まれてきてからずっと敗北の負け犬人生送ってきたもんね?今更恥ずかしさなんて感じないよねー?
そりゃそうだよね?低級言語並の脳みそなんだもんね?あたりまえだよえね。気付かなくてごめんね?
152デフォルトの名無しさん (ワッチョイ 7f66-JH9N)
垢版 |
2024/06/16(日) 16:13:12.65ID:IDEikgiG0
>>148
いやw
何も把握できてないんだから何も言わなくていいんだよボク?
それとも、少しでもかっこいいところみせたかったのかな??ん?
でも、さらに恥をさらしてるだけだぞ〜?ww

最初の話題に戻るっていうか、ずっとその話題が続いてるwんだけどw、
ライブラリが嫌wとかでなくてライブラリを使うメリットを聞いているんだよw?
あ、ごめんね?wわかんないよね〜?
メリット聞くことも、それが嫌ってことも区別付かないんだよね?w
高級言語脳のお兄さんたちからするとちゃんと区別されてるんだけど、君の貧弱なAPIでは一緒になっちゃってるんだよね?w

そんな低レベルな操作しかできないのはみんな嫌だから、今までもこれからもボクはみんなから敬遠され続けると思うけど、
「js」っていう、肥溜めがあるからボクもそこに行くといいよw
ここには、ボクのように自分がゴミ糞っていう自覚の無い人たちがたくさん集まってる場所だからねw
よかったでちゅねー?お友達たくさんいまちゅよ〜?ww
2024/06/16(日) 16:28:37.84ID:VstQa1y8d
顔真っ赤じゃん…必死に長文打ってる暇があるなら国語の教科書読んでくれ…
せめてStreamControllerで変更を通知、StreamBuilderで変更を検知(してrebuild)
くらいの表現になってれば意味が通るけど
154デフォルトの名無しさん (ワッチョイ 7f66-JH9N)
垢版 |
2024/06/16(日) 16:55:14.08ID:IDEikgiG0
>>153

んー?
妄想と現実をごっちゃにしてるのかな?
どうやったら表情が見えるのかな?
それって君の勝手な妄想だよね?w
現実って妄想の区別もつかないほど取り乱してるのかな〜?

君はもう長文打てないよね?w
だってボロが出てしまうことをようやく自覚できたもんね?偉いでちゅねー?w

ごめんね?君とは違って長文書いても論理が破綻しないし、少しの暇でこういう文章書けちゃうんだごめんね?
君の脳みそじゃ未来永劫かなわないことだけど仕方ないよね?

>> せめてStreamControllerで変更を通知、StreamBuilderで変更を検知(してrebuild)

これを見る限り、まだちゃんと把握wできてないようだけど、君がしゃべるたびに、ツッコミどころ出てきて流石に相手できないからこれ以上はごめんね?
職場の人にはいつも迷惑かけてごめんなさいって、毎日言わないとだめだよ?
2024/06/16(日) 17:52:48.01ID:b/cd3doV0
ここだけ20年前の2ちゃんねる
2024/06/16(日) 18:20:07.11ID:nkzaPwgI0
俺の最強のデザインパターン!のほうがライブラリより強い!オジサンは、20年前からタイムスリップしてきたんだよ。
だから5chの常識とか分からないし、オジサンが極めたと思っているデザインパターン(失笑)が廃れていることも許せないんだ。悲しい事故だったんだ。
2024/06/16(日) 18:26:36.30ID:nkzaPwgI0
以下、時代に取り残された20年タイムスリップおじさんによる悲しい反論↓↓↓
158デフォルトの名無しさん (ワッチョイ 7f66-JH9N)
垢版 |
2024/06/16(日) 18:55:40.73ID:IDEikgiG0
ちゅくちゅくw(セルフ効果音)
hey yo!

お前は20年前からライムがスリップ!
妄想と現実の区別がつかない!
おれの最強のデザインパターン?の方がライブラリより強い?
そんなの一言も発してない!
お前はいったい誰としゃべってる?
誰もデザインパターンを極めたなど言ってない。
廃れているのは、お前の脳みそ!
悲しい事故はお間の存在!

yo!yo!yo!

もうお前の相手には飽き飽き!
口には出さないが誰もが思ってる!
これで相手をするのは本当に最後!
何も持たないをお前にかまっても残るのは疲労。

敵でも味方でもお前に居場所は無い!
どちらにとってもお前は迷惑、存在がウザい!
善人も悪人もだれも相手にしたくない、それがお前!

20年前から滑り続けたお前の身体はアザだらけ!
まるで入れ墨!恥の刻印!
ここがネットでよかったな!
いやでも、ここでも恥をさらし続けてるから変わらないか汗

おしまい
159デフォルトの名無しさん (スフッ Sdba-xHVi)
垢版 |
2024/06/16(日) 18:56:59.21ID:qKFUWiJqd
>>156
そのレスをしているあなたは若者の設定ですか?
2024/06/16(日) 19:01:01.23ID:to/LMet70
何度目かの結論が出たね
そう、おしまいなんだ
何度議論しても、Flutter はオワコンなのさ
2024/06/16(日) 19:23:33.24ID:6MOZHAv/0
だから、結論でただろ?
誰も止めないから後は勝手に突き進めばいいじゃんかよ。
2024/06/16(日) 19:27:36.97ID:HIrYl9LQ0
スレ伸び過ぎだよ
内容無いのに
163デフォルトの名無しさん (ワッチョイ 7f66-JH9N)
垢版 |
2024/06/16(日) 19:59:24.29ID:IDEikgiG0
>>149
Flutterのみが初心者?
それともプログラミング自体の初心者でFlutterから触り始めた人かな?
内容的に後者だと想定して話すと、まずは基本的にエラーが出たら、エラーの文章、長いかもしれないけど、それをそのままコピペして検索とかするね。
それで出なかったら、flutter というワードと合わせて、部分的に大事そうな場所を切り取って検索とか。
2024/06/16(日) 22:42:10.67ID:nmSKaD1B0
>>163
説明ありがとー
プログラム歴は伏せておく、まぁそこらのプログラマーよりは長いとは思うけどね
このDart言語って結構面倒っぽいね
build内の細かな処理を書こうとするとダメっぽい、ググってDartではイレギュラーなのか引っかからない
build内のchildに関数をウィジェットクラス化したものをコールすることでOKっぽい
Flutter始めたのは効率良くマルチプラットフォームという触れ込みだったが、KPMのほうが素直っぽいなぁ
リリース版の速度はFlutterのほうが上っぽいけど
もうちょっと触ってみるよ、ありがと!
2024/06/18(火) 16:06:31.92ID:/31rxwLO0
Riverpod3変更多いみたいやな
Exceptionで勝手にリトライするとか正気か
1人の作者の好き勝手な変更に毎度付き合わされるのみんな平気なん?
デカいアプリで使ってる人大変やろ
コストもかかるやん
でも茨の道選んだのは自分やしな
この機会に離れるのがいいと思うけどそれでも使い続けたい人はまあがんばってや・・
2024/06/18(火) 18:35:14.66ID:QSa+INI50
3かGetXはどうなった
167デフォルトの名無しさん (スフッ Sdba-xHVi)
垢版 |
2024/06/18(火) 18:45:14.59ID:Dt2XNYGxd
ほんでそのうち「やっぱりRiverpodでは無理なので、新しく○○を始めました。これからは○○です。これが最善だと私は強く信じてます!」みたいなw
実際providerでそれ言ってたからねー。
まあ使いたい人が使ったらいいんちゃう。
2024/06/18(火) 20:27:39.44ID:mQXIwXy40
Rubyは、Go/Rust/Elixir の3大言語を超えた!

Stack Overflow 米国年収。2022 -> 2023

Ruby : 9.3 -> 9.9 万ドル
Elixir : 9.3 -> 9.6
Go : 8.9 -> 9.3
Rust : 8.7 -> 8.7

多くの言語 : 6.5〜7 -> 7.3〜7.8

PHP : 5 -> 5.9
Dart : 4.4 -> 5.6

PHP, Dart は、コンピューターサイエンスを勉強していない高卒用言語

DI:依存性の注入は、Java, C# など数十年前の話。
Rubyでは全く聞かない。
デザインパターンもあるけど、OSS 界わいで議論されて統一されるので、それを使うだけ

状態ライブラリなど、汎用的なものは自作してはいけない。
基本、誰かがライブラリを作って、議論され統一されたものが使うべき。
汎用的なモジュールを自作した瞬間、廃棄物になるので保守できないから

自作するのは中身のビジネスロジックだけ。
とにかく自作してはいけない。
フレームワークの中身だけを書く
2024/06/18(火) 21:14:07.10ID:thkKQsLJ0
Goってむっちゃいい言語だろうになぜか流行らない、謎だ
170デフォルトの名無しさん (スフッ Sdba-xHVi)
垢版 |
2024/06/18(火) 21:28:59.25ID:Dt2XNYGxd
>>168
まず日本語をがんばろう
171デフォルトの名無しさん (スフッ Sdba-xHVi)
垢版 |
2024/06/18(火) 22:17:16.11ID:Dt2XNYGxd
保守できないレベルの人はaiに淘汰されるからどっちみち出番は無い
172デフォルトの名無しさん (ワッチョイ 7f84-cl2B)
垢版 |
2024/06/19(水) 00:42:55.23ID:eVJS2Vw/0
>>168

どれくらいの信ぴょう性があるデータなのか知らんけど、伸び「率」で言えばこの中ではDart がトップやなw
173デフォルトの名無しさん (ワッチョイ 7f84-cl2B)
垢版 |
2024/06/19(水) 01:16:21.57ID:eVJS2Vw/0
>>168
>>基本、誰かがライブラリを作って、議論され統一されたものが使うべき。
>>汎用的なモジュールを自作した瞬間、廃棄物になるので保守できないから

ただ言葉が違うだけで、誰かが作ったものも、自作したものも結局のところ意味は同じでしょ?
まあ、組織運用か、個人運用か、の違いをもしかしたら言ってるのかも知らんけど。
どのライブラリも、誰かが自作したものだよw

廃棄物になるリスクが高いのは、複雑で難しくて運用するための労力がたくさん必要なものであって、単純で簡単なものほどそのリスクはない。

その誰かが作ったフレームワークも、万能なフレームワークなんてものはないわけで(完璧だと証明されているなら必ず言語の基本機能として取り入れられてフレームワークじゃなくなる)。
万人の用途に合ったフレームワークがそれぞれ必ず用意されてるわけでもない。

その言及の裏の意図を読み解いていくと、有名どころのor普段づかいしてるフレームワークでできないことはやりません、みたいにもとれる。
まあ、責任回避したいサラリーマン気質SIerの発想なのかな?よくわかんないけど。

プログラムはもっと自由なんだ。

そういうのはJavaだけでいいよ。なんかよく知らんけどspringとかstrutsとか使ってればいいんじゃね?
Javaは別にどうなったっていいよ。絶対使わないしあんな老害言語。
おれあんまりよく知らんくせに、老害とか言い過ぎかもしれんけどw、あんな校長先生のクソねみぃクソ長い話、とか、何回同じこと言うねんさっきそれ話したやろクソジジイ、みたいな言語。
2024/06/19(水) 02:14:45.30ID:EXYDanAa0
フレームワークは、Ruby on Rails の事

デザインパターンがOSS 界わいで議論されて統一されるとは、
OSS コミュニティーの事で、それがRailsに採用される

そして、全てのフレームワークへ波及していく。
だから、Railsが情報の最上流

PHP, Dart の伸び率が高いのは、
インフレで低所得者層は苦しいから、20〜30% 上がる。
カリフォルニアで、5万ドルは生活保護レベル

Go は、10年ぐらいで主要言語になった唯一の言語。
KENTA は初心者のキャリアパスは、Rails → Go のみと言う

Rust は、Ruby/Go/Elixir と比べて、年収の上昇が止まった
2024/06/19(水) 02:30:55.83ID:EXYDanAa0
汎用的なライブラリを会社レベルで作るのは、保守できないので駄目

だから、Microsoft でも、Linux エンジニアを採用して、
Linux財団に加盟して、OSS コミュニティーで作る事にしている。
そこが最上流

以前は、Linuxを嫌いなCEO が居たから、
Docker のコピー品を自作したりしたけど、失敗に終わった。
だから今は、DockerはLinuxにしか存在しない

また、WSL2 でシームレスにLinuxを使えるようにした。
いずれは、Windows Server もやめるだろう
2024/06/19(水) 10:53:14.57ID:uUt29Rjr0
GoだけじゃなくKotlinもここ10年でJavaを喰らって主要言語になったよ

Ruby on Railsを語るならPHPGoRustElixir だけじゃなくSpringBootで強いKotlin/Javaの名前も出すべきだと思う
177デフォルトの名無しさん (ワッチョイ 7f84-cl2B)
垢版 |
2024/06/19(水) 11:48:11.72ID:eVJS2Vw/0
>>174
>>175

>>フレームワークは、Ruby on Rails の事
じゃなくてw
君がフレームワークって言ったんやから、おれはそれに答えて、フレーワークを具体的に適当に出しただけw
Ruby on Rails の事を指してるなら、最初から Ruby on Rails って言おうなw

君は、他人が決めたことばかり述べるだけで、自分の意見が一つもない。
自分が傷つかないように、そうやって身を守ってばかりに気を取られていると、他のことがおろそかになりまくってるんじゃない?
他の誰かが作った盾と鎧で身を固めまくって重そうに歩いてる姿なんて、君から見ても、見るに堪えんやろ?

Railsが最上流なのか、自分がどう思うのは勝手やけどw、要は、Rails以外触りたくないってこと?w
Railsしか触りたくないって人が、各種言語、OSS、コミュニティなどの総論を語るのは早ないか?w
まあ、他人の意見をそのままコピペしてるだけやから語れてもいないんやけどw
2024/06/19(水) 16:02:45.51ID:2e8LQcqR0
直近の議論で Flutter のオワコンが明らかになったから、スレの残りは Rails の話をするのか
いいんじゃないかな
2024/06/19(水) 16:20:44.94ID:NliFIq810
何故か伸びてると思ったら変なの湧いてるだけか
2024/06/20(木) 05:20:19.40ID:EkLlegaI0
またキチガイRuby馬鹿か
2024/06/20(木) 06:04:01.68ID:lMQy6JhP0
このRuby荒らしのせいでどこの誰とも知らないKENTA?とかいう奴の印象が非常に悪い
このRuby荒らしはKENTAの印象を悪くするためにアンチ活動してるんだと思う
182デフォルトの名無しさん (スフッ Sdba-xHVi)
垢版 |
2024/06/20(木) 19:47:45.09ID:HqmtbRVLd
というかこれは何の得があるの?w
2024/06/21(金) 03:49:32.24ID:CpWdMjsH0
KENTA・勝又健太の本はベストセラーでしょ。
kboy も協力している

全ての職業の中で、学歴不問で馬鹿の文系でも、
最も短時間の勉強だけで稼げるチート職業は、Ruby on Rails

勉強の手順も決まっているから、再現性が高い。
外人もそう言ってる

Linux, Docker, AWS Solution Architect、データベース設計も含む

Rails 7 のデフォルトのCSSフレームワークは、
Bootstrap, Bulma, Tailwind, PostCSS, Dart Sass の5つ

他には、React をやりたいなら、JavaScript/TypeScript も

逆に、勉強したくない香具師がフロントへ行く。
だから求人倍率が10倍違う。
バックエンド5倍、フロント0.5倍

そりゃ、画面をいじって時間をつぶしている香具師は、単価が安い。
だから、WordPress, Dart は安い
2024/06/21(金) 04:52:05.06ID:5ivDxLA1d
Rubyコミュニティ衰退しとるやんけ
https://www.publickey1.jp/blog/24/javascript2520python1820java1770slashdata.html
185デフォルトの名無しさん (ワッチョイ 7f01-qZa+)
垢版 |
2024/06/21(金) 06:49:13.58ID:OCnfhDUr0
場違いなレスでも、よってたかって攻撃するのはやめよう。
まあ、おれが一番の長文で攻撃してるんやけど。
ここはKENTAスレじゃない。
お前も森へおかえり。
あのアフロっぽいもじゃもじゃ髪の毛の中に。
2024/06/21(金) 07:24:27.55ID:4z8nq+RB0
>>183
フロントスレでフロントを馬鹿にしてなにがしたいん??
2024/06/21(金) 11:16:37.21ID:OHhQAFy80
フロントはこれからも重要であり続ける
だからいくつもフレームワークが生まれた
その中でよいものだけが生き残る
このスレで議論した結果、すでにFlutter はオワコンで間違いないようである
2024/06/21(金) 14:45:15.25ID:Zea0rFse0
KENTAって人崇拝してるっぽいけど
イメージ下げる投稿続けてたら大好きなKENTAに嫌われるぞ
189デフォルトの名無しさん (ワッチョイ 7f54-cl2B)
垢版 |
2024/06/22(土) 09:24:13.93ID:horurnGv0
>>183
>>外人もそう言ってる

お前、援護射撃してもらってる存在に失礼な言い方すんなw
外人以外にも言い方いくらでもあるやろw

フロントエンドをディスりだしたけど、そりゃ悪手だろ、蟻んこw
そんだけフロント馬鹿にしといてまさか、フロントエンド含まれてるアプリ触ってないだろうね?w
馬鹿にしといて裏ではお世話になってる...まさか、そんなわけないよな...?w
2024/06/22(土) 09:33:53.91ID:MBewD0l70
普段から裏ではお世話になっているよw
底辺が作った家に住んで底辺が整備した車に乗っているよ
2024/06/22(土) 10:07:37.46ID:MBewD0l70
ごめんフロントは大工以下の底辺だったね
2024/06/22(土) 10:27:14.41ID:HPoWGkog0
>>191
フロントスレにわざわざ来てるお前も同類だな
2024/06/22(土) 11:26:50.46ID:6tgNwKQ30
Ruby がオワコンだから、オワコン Flutter スレに吸い寄せられてきたのか
類が友を呼んでしまった
しかし、ここに来るなら Flutter の話をしてもらわないと困るよ
194デフォルトの名無しさん (ワッチョイ 7f54-cl2B)
垢版 |
2024/06/22(土) 12:55:24.08ID:horurnGv0
>>190
品性はお金じゃ買えないよ。
上辺だか何だか知らんがrubyの仕事してこいよ鬱陶しいな
おまえうざい
イジリがいもない
195デフォルトの名無しさん (ワッチョイ 7f54-cl2B)
垢版 |
2024/06/22(土) 13:01:13.69ID:horurnGv0
>>191
お前さあ...
大工まで蔑んで何してんの?
お前は底辺以下の泥沼の底の底に沈みこんでてて姿見えへんぞ。
流石にもうちょっと上品でいてくれへんと相手できん
下衆は返れ。下水道に。
排水溝に詰まったK・E・N・T・Aの縮れ毛を回収する仕事でもしてろよ。
ああ、もうすでにその仕事やってたか。
誰にも相手されへんからってその仕事はさすがにみじめやぞ。
196デフォルトの名無しさん (スフッ Sdba-xHVi)
垢版 |
2024/06/22(土) 15:00:14.29ID:dMwj8i9+d
察してやれ
ここが最後の砦なんや
ここで相手にされなかったら本当に完全に一人なんや
だから何を言われてもクソレスを投稿し続けている
わかるか?
2024/06/22(土) 19:32:30.04ID:HPoWGkog0
フロントスレはここのほかにもたくさんあるのに、なぜここなのか?
198デフォルトの名無しさん (ワッチョイ 7fcb-cl2B)
垢版 |
2024/06/22(土) 23:11:55.70ID:horurnGv0
>>190
キモい
2024/06/23(日) 04:17:37.54ID:j18TJ0D70
質問なんだけど、バックグラウンドで動いているFlutterでスリープから復帰したって検出可能です?
AndroidのReciverみたいな感じ
ググってもTitaniumしか出てこなくて、MacOSで環境整えようとしたら動かねー
2024/06/23(日) 12:55:03.68ID:C5IfwuedH
今だけです
https://i.imgur.com/cgKkzoi.jpg
2024/06/23(日) 13:52:10.18ID:zONBpoxd0
>>200
これは良かったよなあ
202デフォルトの名無しさん (ワッチョイ cf75-fYEb)
垢版 |
2024/06/24(月) 11:20:36.43ID:XRQbMnqD0
>>199
おれはflutter詳しくないから、仮にflutterにその機能が無かったとしても一応解決策はあるとだけ。
dartから直接ネイティブのコードを呼び出すdart:ffiがあるので理論上可能なはず。
like数多いlibraryだと pigeon とかあるみたい。
あとは、自力でdart:ffiを使ってそのReciverを呼び出すコードを書くか。
2024/06/24(月) 14:10:41.21ID:v6bjukRSd
WidgetsBindingObserverのdidChangeAppLifecycleStateじゃだめなん?
2024/06/24(月) 15:39:09.73ID:nP+vDYkr0
>>202
考えていたより大変そう
今はKotlinでReciver受けてDartで拾えないか検証中

>>203
Activityがフォアグラウンドにいる時は問題ないけど、バックグラウンドに行っちゃうと拾えないっす
2024/06/24(月) 15:51:32.46ID:DSee3rkD0
>>200
こんなにコスパの良いやりかた初めてかも
2024/06/24(月) 21:59:00.85ID:GVJPZlmZ0
>>204
結局まともなソフトを作るためにはkotlinとswift、デスクトップならさらにC++とかを覚えないとダメなんだよなあ、その上でさらにDartやろ
2024/06/24(月) 22:06:12.30ID:JcL2eGYO0
Kotlin だけでいいだろ
2024/06/24(月) 23:01:42.63ID:GVJPZlmZ0
>>207
Androidだけでいいならな、DartもFlutterもいらない
2024/06/24(月) 23:07:01.02ID:y09NkMK80
簡単なアプリを作るだけならKotlinオンリーでできるよ
Swiftの定型文はテンプレートコピペで済ませられるから
ファイルのピックとかもKotlinライブラリが出てきてる
2024/06/24(月) 23:19:09.26ID:yojy6PsV0
技術顧問できますって言ってる人のギフハフ見たわ(ーー:)
おまいらどう思う?
2024/06/25(火) 07:01:39.99ID:AXDk6mAl0
へ?今ってKotlinだけでAndroidもiOSも対応出来るん?
Swiftへ無変換リコンパイルが出来るってことで良いのかな。
Androidはリバースエンジニアリング出来るのが嫌いなんだよなぁ
2024/06/25(火) 07:29:32.26ID:d79eL1Zz0
>>211
KotlinコードはKotlin/Nativeの技術を使って、Swiftへトランスパイルされるんじゃなくてネイティブコードへそのままコンパイルされるようになった

泥JVM向けアプリのデコンパイルの容易さが気持ち悪いのはわかる
ロジックをKotlinのままAndroidNativeプラットフォームでラップできるっていう回答は一応あるけど面倒くさいし
2024/06/25(火) 12:22:13.82ID:AXDk6mAl0
>>212
ありがとー
ググっても資料が少ないけど、Kotlin/NativeからSwiftにするのは1件見つけた
センサー系を使うことが多いからそれがSwiftでも動作してくれるかだなぁ
試してみるよ
2024/06/26(水) 11:18:03.68ID:HtVrg7YZ0
みんなMacでFlutter使ってるの?
iOS用はXcodeが必須だからMacが必要だよね
2024/06/26(水) 14:36:08.50ID:8SE84spH0
昔やってた頃はビルドならCodeMagicでできたけど今はできないんかな?
まぁ真面目にやるならMac必須だけど。
2024/06/26(水) 15:28:49.38ID:HtVrg7YZ0
リリースするとなったら、iPhone実機でテストしてないと不安だし、個人開発くらいでMacとiPhone全部そろえるのは個人的に無理かな…
でも将来的にiOS版もリリースするかもしれないから、Flutterでandroid版を作ってみるかな
Dart、JavaScriptに似てるから、改めて勉強しなくてもいいみたいなんだよね
JavaScriptはなれてる
2024/06/26(水) 15:37:02.59ID:85SHOkaJ0
>>213 は Kotlin だけで足りると知り、無事に Kotlin スレにたどり着いたようだ
しかし、>>216 が新たにハマりかけている
また riverpod で消耗する人が増えるのか?
JavaScript に慣れてるなら ReactNative や Capacitor も検討したらどうか?
2024/06/26(水) 16:29:05.82ID:HtVrg7YZ0
>>217
ReactNativeが良さそう…
これですすめてみる
2024/06/26(水) 20:34:56.18ID:tLzXCbi8H
MacとXCodeとSwiftが大嫌いでFlutterを使ってる俺みたいなのは少数派かな
Windows上のAndroidStudioでアプリのテストまでやりきって、Mac側ではiOSでの動作確認とリリースビルドだけ実施
今のところこれが一番楽
2024/06/26(水) 22:15:41.67ID:Eg5n0hCx0
KotlinもSwiftも特定のIDEに縛られているから、その点でDartは有利だ
2024/06/27(木) 15:09:34.09ID:XgjQOrlh0
Androidである程度作って、iOSで実機デバッグしようとしたら、iOSはデバッグではプラグインが使えないとか・・・おかしいっしょ
222デフォルトの名無しさん (ワッチョイ cfd6-fYEb)
垢版 |
2024/06/27(木) 17:31:50.85ID:eevC6u6j0
flutterの状態管理ライブラリと呼ばれるものって、別に状態を管理する手段を提供してないのでは?
ただ、setState()を直接呼ばないための手段しか提供してなくないか?
2024/06/27(木) 19:04:10.07ID:OoCv0bQF0
composeなら状態管理はrememberで済むのになあ
2024/06/27(木) 19:09:30.16ID:oaXXA4xQ0
状態管理ライブラリが複数あり、すべてウンコだ!とか言ってるのは Flutterユーザーだけ
225デフォルトの名無しさん (ワッチョイ cfd6-fYEb)
垢版 |
2024/06/27(木) 20:07:03.82ID:eevC6u6j0
>>223
Kotlin触ったことないから解釈違いがあるかもしれんけど。
見た感じ、やってることはflutterの状態管理ライブラリと変わらないという印象やな。
226デフォルトの名無しさん (ワッチョイ cfd6-fYEb)
垢版 |
2024/06/27(木) 20:15:19.16ID:eevC6u6j0
状態管理ライブラリっていう名前から、100とか200あるたくさんある状態の管理を、ミクロではなくマクロな部分で手助けしてくれるものかと思ってたけど。
実際のところ、公式が提供しているapiの薄いラッパーか、observerを提供するのか、ミクロの部分で使うライブラリみたいだね。
状態管理ライブラリとかいう大層な名前で呼ばれるのはおかしいと思うけど。
結局、MVVMだったり、のデザインパターンで、複雑な状態をなんとか管理しようっていうのが現状か。
2024/06/27(木) 20:24:59.17ID:OoCv0bQF0
Flutterが状態管理のために長ったらしい定型コードを書かせるのが悪い
「~の状態管理ライブラリを使ったらアプリの動作パフォーマンスがよくなった!」じゃなくて開発者のコーディングライフを改善するためのものになってる
228デフォルトの名無しさん (ワッチョイ cfd6-fYEb)
垢版 |
2024/06/27(木) 20:51:27.49ID:eevC6u6j0
>>227
たしかにStatefulWidget使うにはclassを2つも定義しなあかんとか、あれは冗長やわな。
パフォーマンスの面であのようにするしかないのかも知らんけどどうなんやろね。

>>「〜の状態管理ライブラリを使ったらアプリの動作パフォーマンスがよくなった!」
ライブラリのうたい文句でよく聞くけど、そもそもラップしてるのに本当に動作よくなるのか?wって思うけど、まあ、なんか今更やけど。
2024/06/27(木) 21:19:58.59ID:j6eb+IBW0
ReactNative、エラーがわかりにくいって
調べるだけで時間を消耗するって、自分がはまるやつだ w
Flutterにする
2024/06/27(木) 22:09:26.94ID:OoCv0bQF0
React+Capacitorじゃあかんのか?
2024/06/28(金) 00:00:42.63ID:ReoBjfsh0
>>230
情報が少ないかな?
他の言語だとpythonとかで満足してる方なので(情報が多い)
2024/06/28(金) 08:41:07.03ID:tT2GNMfm0
Android メインなら Compose の方がいいと思うなぁ
JavaScriptに抵抗がないなら、ガワアプリもいい選択になる

スレが状態管理の話題で埋め尽くされるようなフレームワークは、とてもお勧めできない
233デフォルトの名無しさん (ワッチョイ a7f2-HpUb)
垢版 |
2024/06/30(日) 23:37:31.88ID:BE/h3Eml0
dart は exception(error) handling が try catch 構文を利用するのが基本だが、正直 result 型で handling した方がはるかに楽。
おれは自分で result library を定義して使ってる。
あんまり try catch で handling することに対して批判を聞かないが、実際のところどうなの?
おれはもう try catch で handling とかもう無理な身体になってしまったが。
2024/07/01(月) 12:01:21.76ID:19L91glPd
Dartに限らず例外を嫌ってその手の試み繰り返されてるけど
コアライブラリその他諸々エラー投げるもの全部ラップする羽目になるし
開発メンバー全員同じ方針で書かせないとならんし
労力とメリットが釣り合ってないんだよね
Future使えば良かったってオチになったり
例外を採用してしまった言語はもうどうにもならんかも
235デフォルトの名無しさん (ワッチョイ a777-HpUb)
垢版 |
2024/07/01(月) 16:12:11.02ID:AETVjrcC0
小規模や個人の開発でresult採用してる人や検討してる人はどこかにおらへんの?
2024/07/01(月) 17:34:26.52ID:gsz8HDxV0
dartってJavaScriptとほとんど同じだね
心配して損した
237デフォルトの名無しさん (ワッチョイ a777-HpUb)
垢版 |
2024/07/01(月) 18:31:28.50ID:AETVjrcC0
>>236
元々dartはJavaScriptの置き換えを目指して開発された言語やからな。
ちなみに知ってるかも知らんけどdartはJavaScriptへトランスパイルできる。
2024/07/01(月) 18:58:48.29ID:gsz8HDxV0
>>237
トランスパイルって何?
239デフォルトの名無しさん (ワッチョイ a777-HpUb)
垢版 |
2024/07/01(月) 19:29:09.08ID:AETVjrcC0
>>238
あるプログラミング言語を機械語などに変換することをコンパイルという。
それに対して、あるプログラミング言語を別のプログラミング言語に変換することをトランスパイルという。
例えばTypeScriptはJavaScriptへ変換するトランスパイル言語などと言ったりする。
2024/07/01(月) 20:11:46.86ID:FBKe5StF0
> 開発メンバー全員同じ方針で書かせないとならんし

メンバーが同じ方針で開発するのはでも基本でしょ
Resultを使うチーム方針も一部にすぎないよ
レビューで確認事項を増やしたくないなら使い忘れの検知を自動化してもいい

キャッチ漏れのようなミスを防ぐ手段を棄却するかResultで確実にハンドリングするかだよ
どっちがいいか考えるのだ
小さな労力気にするのに、労力避けてミスったときの労力を気にしない人がいるのがこの界隈の変なところ
そもそもResult使うのはそんな労力かからん

AsyncValueも例外の欠点に向き合って編み出された(つかウェブからパクった)手法だけど
Riverpodの癖のある挙動(キャッシュの機構とか)にガチガチに結合してる失敗作なんだよな
使ってるうちに変な動作に悩んで混乱するメンバー出てくるからおススメしない
241デフォルトの名無しさん (ワッチョイ a777-HpUb)
垢版 |
2024/07/01(月) 20:43:01.10ID:AETVjrcC0
>>240
例外を投げるもの全部ラップしないといけないっていうのは手間と言えば手間だけど。
逆にそれだけ、投げる例外が多いのならResultで確実にハンドリングできた方が結果的には管理は楽になると思うんだけどね。
自分でResult使ってて、例外の種類が多ければ多いほど、これはResultにして機械的にハンドリングできるようにしないと無理だなって思う今日この頃。
型としてこの処理はこれらの例外が発生しうるっていうのが分かった方が、わざわざ呼び出し先のドキュメント見に行って、この処理はこんな例外が発生しうるのかってのを逐一、確認しなきゃいけない方が、少なくとも自分には不毛な労力に感じる。
242デフォルトの名無しさん (ワッチョイ a777-HpUb)
垢版 |
2024/07/01(月) 20:47:10.17ID:AETVjrcC0
最後文章変になったけど、発生しうる例外が型として確認できた方が、わざわざドキュメントで確認しに行くよりはるかに楽ということ。
というか、この点だけでも、Resultを使う価値はあると思う。
逐一ドキュメントにどんな例外が投げられるかを確信しに行くという作業がめちゃくちゃ疲弊する。
2024/07/01(月) 22:58:23.83ID:jlAe7d0I0
try/catchは深い階層でも呼び出し元に投げやすいように考えられたもので非同期呼び出しの文脈でResultより使いにくいのはその通りだと思う
2024/07/02(火) 01:27:21.71ID:2ioS7b6G0
>>239
ありがとう
わかったわ
2024/07/02(火) 10:05:15.13ID:mti5vVkU0
例えばhttp.getがraiseする可能性のある例外の完全なリストってどこを見ればわかるの?
2024/07/02(火) 10:12:48.10ID:TPSjAjm70
すべてはソースコードにある
それが Flutter クオリティ

ソースを読めないなら、すべての例外を握りつぶして「エラーです!!!」と表示するといい
2024/07/02(火) 10:25:13.11ID:mti5vVkU0
ソース読む方法だとラップせずそのままrethrowしてることが多いから
使うすべてのメソッドに対してヌケモレのない例外リストを得ることは現実的には不可能じゃない?
248デフォルトの名無しさん (ワッチョイ a7f4-HpUb)
垢版 |
2024/07/02(火) 15:12:30.03ID:uzy550Vj0
http通信回りはあまり詳しくないが。
完全なリストとなると一応こういうことじゃないか?
https://developer.mozilla.org/ja/docs/Web/HTTP/Status

Flutterの各種widgetのハンドリングをResultでするとかもまあ、Resultでやるのはあんまり現実的ではなさそうな雰囲気を感じる。
widgetの部分は無理でもフレームワークに依存しない内部の処理の部分はもちろん自分たちが管理する部分なのでResultでできるだろうが。
httpに限って言えばステータスコードで返ってくるからそれをResultにするのは簡単そうだが。

外部の仕様やフレームワークのメソッドに対する完全な例外リストを得ることができるかどうかは、外部次第というか。
まあ、RustのようにResultが言語の機能として盛り込まれているわけではないから、妥協しないといけないところはあると思う。

例外をcatchできてるなら、理論的にはそのタイミングでResultに変換できるということではある。
自分たちが管理してるならいざ知らず、外部で管理されてるやつはねえ、まあ、それをResultでラップし直すのは規模によっては大変だと思うよ。

おれは、基本的に個人開発しかしてないんだけど。
例外リストにヌケモレがあるっていうのは、それはバグじゃないか?
249デフォルトの名無しさん (ワッチョイ a7f4-HpUb)
垢版 |
2024/07/02(火) 15:50:34.15ID:uzy550Vj0
DartでResultをするうえで重要な点を言及していなかった。sealed class の機能があるからResultをする意味が上がる。

sealed class Result<V,E>{...}
final class Success<V,E> extends Result<V,E>{...}
final class Failure<V,E> extends Result<V,E>{...}

switch (result) {
Success():...;
Failure():...;
}

seald class の機能を使えばswitchでSuccessの場合とFailureの場合を強制できる。おれ個人は関数的な書き方ではなく文的な書き方を常用している。理由はreturn文をかけるから(早期returnができる)。ついでにexceptionもこのselad classを使う。

/// {@macro HttpRespons401Exception}
/// {@macro HttpRespons402Exception}
/// ...
sealed class HttpResponsException {...}
/// {@template HttpRespons401Exception}Unauthorized...{@endtemplate}
final class HttpRespons401Exception extends HttpResponsException {...}
/// ...
final class HttpRespons402Exception extends HttpResponsException {...}
/// ...
final class HttpRespons403Exception extends HttpResponsException {...} ...

switch (httpResponsException) {
HttpRespons401Exception():...;
HttpRespons402Exception():...;...
}

final Result<String, HttpResponsException> myHttpGetResult = myHttpGet(...);

厳密ではないが、おれはこんな感じで書いてるよというイメージ。DocCommentをつければmousehoverしたときに詳細がわかる。
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。