2018-01-01から1年間の記事一覧
Android テスト全書を読んでたら、「Kotlin でアサーションを書くなら AssertJ」って感じだったので。 確かに AssertJ は堅実で、現実的な選択肢だと思うんですけれど、ちょっと気になったきっかけが P42 の AssertJ Android のコラムで、「サポートライブラ…
元ネタ RxSwiftの仕組みを利用して、MVVMモデルを導入しよう CodeZineにあるRxSwiftの記事(第4回)に対して自分ならこうするという話 某RxSwiftを使ったMVVMの記事の改善案 感想 他人のコードを読むとき、どういうフレームワークや言語でも、「この機能をこん…
アプリ界隈で「設計」の話をするときに MVC / MVP / MVVM のような「設計パターン」だけが語られるようになった気がする。 往々にして、「アプリの規模によってどれを採択すべきかは変わる」みたいなお茶を濁すような結論で終わることが多い。 私的な結論 「…
iOS11 だと UISearchController を UINavigationBar に入れられて楽しいので、入力した文字列をうまい感じで Observable<String> にしてくれる DelegateProxy を作ってみた。 UISearchResultUpdating+Rx の私的実装 なんで RxCocoa にないの? PR 自体は何度か出てた</string>…
static void hoge() { static os_log_t log; static os_activity_t activity; static os_activity_t activity2; static os_activity_t activity3; static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ log = os_log_create("activity", "a butt…
と思って調べた内容のメモ。 結論から言って、watchOS みたいなパフォーマンスにシビアなデバイスで、マルチスレッドが絡む部分をロギングしたいとかじゃない限り、普通のロガーでよさそう…。 OSLog の優位点 メモリ上の循環バッファにバイナリでログを保持…
Qiita に久々に記事を書いたのですけれど、なんか途中で力尽きていろいろツッコミどころが多い感じになってしまった。 qiita.com わたしとしてはコメントがとても勉強になったので良かったのですけれど…。 以下、書ききれなかった内容の供養みたいなの。 画…
ルートが配列で、最初の要素はその後の要素の個数を表す、という JSON があったときに、どういう Decodable を書けばいいのか?で少し悩んだので。 [ {"count" : 5 }, {"name" : "itemA", "value" : "valueA" }, {"name" : "itemB", "value" : "valueB" }, {…