第19回コベチケの会

コベリンの最近の取り組みとして、業務などで役立ちそうな知見を共有する会を開催することになりました。 そのついでに発表に使ったアジェンダもそのまま公開してしまおうという豪快な企画です。

※ アジェンダをそのままコピペして公開したものなので若干見にくい箇所もあるかもしれませんが、ご了承ください。

続きを読む

第18回コベチケの会

コベリンの最近の取り組みとして、業務などで役立ちそうな知見を共有する会を開催することになりました。 そのついでに発表に使ったアジェンダもそのまま公開してしまおうという豪快な企画です。

※ アジェンダをそのままコピペして公開したものなので若干見にくい箇所もあるかもしれませんが、ご了承ください。

続きを読む

人によって好みが分かれるけど、僕の好きな Swift の書き方: Swift の extension をどこに書くか?

Swift の extension ってどこに書きますか? 例えば String の extension を書く場合.

  • StringExtensions.swift みたいなファイルにまとめて書く
  • StringHoge.swiftStringHuga.swift みたいに意味のある単位で分けて書く
  • 使うところで private extension に書く

などなど色々あると思います。 実際はある一つの方法だけを選ぶのではなく状況に合わせて書く事が多いと思います。

僕はどんな事を考えながら extension を書く場所を決めているかを紹介したいと思います。

個人的な基本的な考えでは framework が用意している型に対して広いスコープの extension を作るのは結構メンテナンス性が悪いと思うので気をつけて実装するようにしています。

続きを読む

Jetpack Compose 画面全体のプレビューを出すにはどうしたら良い?

Jetpack Composeで画面全体のデザインとロジックを作り込むとき、プレビューを表示しつつ開発することで効率が上る可能性があります。しかし、プレビューは、ネットワークアクセスやファイルアクセス、Contextの利用が一部制限されます。そのため、プレビューに表示するデータはFakeデータやViewModelを用意して、プレビュー表示時のみの振る舞いを実現します。

その一方で、FakeViewModelの実装や管理にもコストがかかってしまいそうです。今回の記事はFakeViewModelを使うべきか、使わないべきときはなんなのかをまとめます。

FakeViewModel とは

続きを読む