Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Androidチームにおけるレガシーコードとの向き合い方/ #nikkei_tech_talk

Androidチームにおけるレガシーコードとの向き合い方/ #nikkei_tech_talk

2023/06/15開催、NIKKEI Tech Talk #8登壇資料です #nikkei_tech_talk
タイトルは「Androidチームにおけるレガシーコードとの向き合い方
」です
https://nikkei.connpass.com/event/284090/

More Decks by 日本経済新聞社 エンジニア採用事務局

Other Decks in Technology

Transcript

  1. レガシーコードとは 5 t • テストのないコード、テストができないコード • 修正や拡張、作業が難しいコード 参考 ・Michael C

    Feathers.「レガシーコード改善ガイド」 . 2009/7/14. 翔泳社 ・David Scott Bernstein. 「レガシーコードからの脱却」 . 2019/9/19. O’Reilly Japan
  2. 僕たちのアプリにおけるレガシーコード 7 • Androidアプリ開発のスタンダードが変化することによってレガシーになったもの ◦ アプリアーキテクチャガイド登場以前の複数世代のアーキテクチャが混在 ◦ 当時はメジャーだった古いサードパーティライブラリと設計が密結合している ◦ BaseActivity,

    BaseFragment, BasePresenter, BaseFragmentViewなど継 承を利用した画面が多く、ライフサイクルのタイミングが異なるケースなど都度継承 元の実装に対する考慮が必要 ◦ その他、OSやSDKのバージョンアップに伴って修正が必要なもの
  3. 19

  4. 継続的にコード改善を行えるチーム体制に 25 認知負荷の種類から適切な境界を模索する • 課題内在性負荷 ◦ 問題領域の本質的なタスクに関連するもの • 課題外在性負荷 ◦

    タスクが実施される環境に関連するもの • 学習関連負荷 ◦ 学習を進めたり高性能を実現したりする上で、特別な注意が必要な タスクに関連するもの 参考 ・Skelton Matthew, Pais Manuel 「チームトポロジー」日本能率協会マネジメントセンター