fresh digitable

めんどくさかったなってことを振り返ったり振り返らなかったりするための記録

2021-01-01から1年間の記事一覧

effective dartを一言ぐらいでまとめていく(Usage編)

続きです:akihito104.hatenablog.com Usage Library 複数のファイルに分かれたプログラムを、一貫性のあるメンテナンス可能な方法で構成するのに役立つ。importについてのみ言及しているが、exportディレクティブに対しても応用できる。 part ofディレクテ…

effective dartを一言ぐらいでまとめていく(Document編)

続きです:akihito104.hatenablog.com Document dart.dev そのコードを書いている間はコードの意図が明白であったとしても、そのコードを初めて見る人や、将来の自分でさえも、その時の文脈を知らないかもしれない。 コメントを書くのには数秒程度しかかから…

effective dartを一言ぐらいでまとめていく(Style編)

JavaではEffective Javaを、KotlinではKotlin in actionを読んだので、同じようなことをDartでもやっておこうと思って探したら公式のページに書いてあった。 dart.dev 書き始めて3か月ぐらい経つのでちょっと遅いかもしれないが読んでいくことにする。全訳す…

BackdropFilterを使わずに画像にblurをかける

"flutter Image blur"で検索してもBackdropFilterの記事しか出ないのでカッとなって書いた。画像にボケと透明度を同時に適用したいとか、BackdropFilterだとボケの感じが思ってたのとなんか違うなという時にどうぞ。 ImageFiltered( imageFilter: ImageFilte…

NavController.currentBackstackEntryをみながら戻りたい画面までpopBackStack()する

前提とやりたいこと 関係しそうな環境: "androidx.navigation:navigation-fragment-ktx:2.3.0" "androidx.navigation:navigation-ui-ktx:2.3.0" ツイッタークライアントを作っている。起動したらホームタイムラインを表示して、そこからツイートの詳細やユ…

fluxとかMVIみたいな構造のアプリを作ってみたかった その7

前回: akihito104.hatenablog.com の最後に、 とくにActionsはもっと定型化できるように思う。 というようなことを書いた。ここまでの実装は、 class HogeActions( private val dispatcher: EventDispatcher, ) : HogeEventListener { val selectAccount: Fl…

ここまでの話をまとめてzennに投稿した

fluxとかMVIみたいな構造のアプリを作ってみたかったシリーズの主にその5と6をまとめたりまとめなかったりしてZennに投稿した。 zenn.dev FeaturedにのったりPick upということで公式のTwitterアカウントで流れたりして、自分としては初めてのことなのでよか…

fluxとかMVIみたいな構造のアプリを作ってみたかった その6

前の記事: akihito104.hatenablog.com Viewの状態の更新処理はViewModelSourceで行っている。このクラスでの過去の実装を振り返り、反省点を踏まえてリファクタリングした時のことについて書く。その5の内容に強く依存しているので先にそちらを読むことをお…

github actions でやっているcommit checkの処理を早く終わらせたかった

3行で 平行に処理してみたりキャッシュが効くようにしたが早くはならなかった やってみたかったのでやった 後悔はしていない その時のPR: github.com チェックを並列に実行するが効果なし(むしろ増) これまでのコミットチェックではAndroidのLintとktlint…

テストの後片付けでLiveData.removeObserver()すると怒られることがある

はじめに そんなことをやる必要はありません。あくまでもネタとしてお読みください。 今回の: org.jetbrains.kotlinx:kotlinx-coroutines-core:1.4.3 org.jetbrains.kotlinx:kotlinx-coroutines-test:1.4.3 androidx.lifecycle:lifecycle-livedata-ktx:2.2.…

fluxとかMVIみたいな構造のアプリを作ってみたかった その5

前回: akihito104.hatenablog.com 前回からの進捗としては、NavigationDelegateをActivity, Fragmentに持たせることにしたり機能追加をやっていた。その中でViewModel以下のクラスをリファクタリングしたところしっくりくるような形になったのでまとめてみ…

テスト対象を初期化する際にはlazyを使う

前置き JavaでJUnit4のテストを書いていたころは、@Beforeを付けた(setup()のような名前の)メソッドの中にテスト対象やその依存関係の初期化処理を書き、テストケースの中で使うもの(テスト対象など)はフィールドに定義してsetup()メソッドの中でフィー…

2020年に見たアニメ

いつものやつをやります。 前回: akihito104.hatenablog.com いつもは帰省して暇になった時間に書くんだけど今年は帰省しなかったので書きそびれていた。例によって五十音順です。もしそうなっていないところがあったら私のミスです。カッコ[]付きは未視聴(…