今までルンバとクイックルワイパーのみだったんだけど、掃除しきれないところもあると感じていたので部屋が広くなったタイミングでスティッククリーナーを買うことにした。 マキタ、パナソニック、ダイソン、シャープなど見てみたが、以下の理由で日立がいい…
引越し先を探すのが大変だったというか条件に合う物件がまったくと言っていいレベルでなかったので半年ほど探してやっとこさ引っ越せた。 最初は東東京の全体で物件を探していたのだけど、都心から外れて千葉に寄ると条件に合う物件は比較的あって、そのあた…
$ flutter --version Flutter 2.5.1 • channel stable • https://github.com/flutter/flutter.git Framework • revision ffb2ecea52 (9 weeks ago) • 2021-09-17 15:26:33 -0400 Engine • revision b3af521a05 Tools • Dart 2.14.2 原因 github.com 一時的な…
Github Actionsとかでformat をかけてdiffがあったらエラーにするみたいなのやりたいときがある。 Flutterはこうできる。便利。 flutter format --set-exit-if-changed . dart commandでも同様に動く。便利。 dart format --set-exit-if-changed .
体調が良くもないが悪くもないずっと曇りみたいな状態だけど人生とはそんなもんだろと思ってあんま気にしていなかった。ところが同僚から体調が悪そうなので心配と言われたりしていたのでちゃんとしようという気持ちになってきた。ただどうにかしたいけどど…
もともとSunsamaを使っていたけど、全然使いこなしてないのに月2000円くらい払っていたので良い感じのがあれば乗り換えるかという気持ちでいたらSorted³ というのを見つけたので使い始めた。 www.sortedapp.com Sorted³のいいところは、雑に楽にスケジュール…
上期の自己評価を書いてる時に半年を振り返って、この半年は大体仕事をこなしただけでつまらなかったということに自分で気づいてハッとなった。 気づくのが遅すぎるというのは置いといて、なんでつまらなかったか考えてみるとやりたいことが出来ていないみた…
前回この記事でRiverpodを使ったMVUアーキテクチャについて書いた。 hisaichi5518.hatenablog.jp が、いくつか問題があるなと気づいた。 UIに関する処理を書く場所がない 複数のStateを同時に扱う場合が考慮されていない(ビジネスロジックを書く場所がない…
推奨されないコードを機械的に発見出来る部分は人間がコードレビューなどで指摘するのではなくLinterで気づきたい。 なので、プロジェクトごとにLinterのCustom Ruleを作りたいのだが、DartのLinterはCustom Ruleに対応していない。 github.com このイシュー…
ここ1年くらいFlutterで開発していて、Model-View-ViewModel(MVVM)を採用したけどViewModelの役割が大きいなど色々課題を感じていて、より良い形はないかなとFlux, Reduxなどのドキュメントを見ている。 とは言ってもFluxやReduxなどドキュメント見る限り結…
FlutterでStateをもたせるには色々あるが、基本はStatefulWidgetを利用する。 StatefulWidgetは以下のようにStateを持ち、Stateの中で値を持ったりsetしたりできる。 StatefulWidget class - widgets library - Dart API class Bird extends StatefulWidget …
RiverpodにはFutureProviderというのがある。 FutureProvider class - riverpod library - Dart API 非常によく出来たAPIだなぁと思ったのでそれのメリット・デメリットと所感をまとめたい。間違えているとかなにかあれば教えてください。 まずFutureProvide…
第5回 今ならこうするシリーズ。更新を忘れていた。 自分でFlutterのWidgetを作っているときに以下のように値を受け取るWidgetを作りがちだった。 HogeButton(title: "ほげボタン", titleColor: ...); class HogeButton extends StatelessWidget { @override…
第4回 今ならこうするシリーズ UIをつくるときにStatelessWidget(またはStatefulWidget)を継承してWidgetを作るのではなく、以下のようにWidgetを返すメソッドを作って切り分けることが出来る。メソッドで切り分けるとクラスを作るよりは比較的楽に作れると…
第三回 今ならこうするシリーズ FlutterはTextにstyleをあてることができる。今回はそのTextStyleの共通化について書いていく。 const Text("文字", style: ...); TextStyleは以下のように共通化している。こうすることで基本はconstとして呼び出すことが出…
「今ならこうする」をシリーズ化しようと思ってカテゴリを作った。「今ならこうする」は僕基準であって全員そうすべきという話ではない。今回もそう。 Flutterにはprovider packageというのがあり、公式でもprovider + ChangeNotifierの構成がドキュメントに…
ChangeNotifierというのがFlutterにはあり、ViewModelで継承して使っている。 StateNotifierとよくパフォーマンス面で比較されるValueNotifierというのもあり、そっちは1個のValueしか扱えないがChangeNotifierは複数扱える。なのでValueNotifierやStateNoti…
native_webviewは、WebViewの機能をWebで提供するのは難しいのでWebには今の所対応していない。だが、対応していないプラットフォームでも自前で実装すれば一応動かせるようにはなっている。(というか0.28.0から動かせるようにした) // Webのときのみsetす…
ライブラリのテストは、ほとんどの場合 unit testでいいと思うのだけど native_webviewはiOSのWKWebViewやAndroid の WebViewに依存しているのでunit testではテストが出来ない。 なので、native_webview は integration test (ほとんど Widget testだけど)…
毎日のようにはてなスターのスパムがきます。こんにちは。 仕事で作っているアプリは、Flutterを使っておりかつFlavorがたくさんあってそれぞれのFlavorごとにrunConfigurationsを用意している。また今後Flavorは増える予定である。 同僚には、VSCodeを使っ…
久しぶりの外部の勉強会で、しかもFlutterの話をするのは初なのでなかなか緊張した。登壇者にはFlutterの人たちはもちろんReact Nativeの猛者がたくさんいて、僕はReact Nativeのことを全く知らないので話を聞くだけでも面白かった。TECH STAND #3 クロスプ…
コロナでリモートワークするようになってからまったくと言っていいほど家から出なくなった。 散歩するかな〜でも目的がないとやる気がな〜なんて言って全くしてなかったのだが、2020年もそろそろ終わるしグダグダ言ってやらないのダサいな〜と思ったのでいっ…
FlutterでWebViewをがんばる その2 - パルカワ2github.com前にWebViewの話を書いて、native_webviewというライブラリを自作した話を書いた。 すでにプロダクションで利用していて色々やったけど、最近だとBasic認証がかかっててもアクセスできるようにしたり…
こういうツイートをした。会社用のGoogleアカウントと家用のGoogleアカウントがあって、会社SlackからGCPのURLをクリックしたら家用のアカウントで開いてしまうみたいなのを1000万回はしてるんだけど、未だにどうすればいいのかわからない— ひさいち (@hisai…
api.flutter.dev native_webviewのテストのために example/lib/main.dart で enableFlutterDriverExtension() を有効にしていたのだけど、example アプリをビルドしてみるとキーボードが出なかった。普通にアプリに組み込むとキーボードは出るのでなんで?と…
github.com FlutterでWebViewをがんばる - パルカワ2 flutter_inappwebviewに関する知見 - パルカワ2 FlutterでWebViewを扱うために webview_flutter を使って、flutter_inappwebviewを使ってきたが、結局native_webviewというライブラリを自分で作り始めた…
おうち大好きマンなので、3年前くらいに今の家に引っ越してから作業環境を整えている。 自宅で働くことが増えて整えてきてよかったと思っているので、現状を書き出しておく。10年後とかに見たら面白いのではないか。2030年……41歳……… ぬいぐるみ hobby.dengek…
今まで会社に行く前にコンビニに寄ってコーヒーを買って出社するというのがルーチンになっていたのだけど、新型コロナウイルス感染症の影響で自宅で働くようになってからコンビニまでコーヒーを買いに行くのがめんどくさくなってしまった。なので、家でコー…
cirrus-ci.org 最近OSSでFlutterでWebViewを表示するプラグインを書いていて、AndroidエミュレータとiOSシミュレータを利用してそれぞれのプラットフォームでテスト(flutter drive)を動かしたいという欲求があった。 最初は、iOSの実装だけやっていたので使…
tmux 2.8からアップデートでもするか〜と思ってした。 どうせ動かなくなるだろと思って雑にupgradeしたら動かなくなった。ガッハッハ -fg みたいなのが廃止されて、-styleになったらしい /Users/hisaichi5518/.tmux.conf:11: invalid option: pane-active-bo…