Avatar

Quick Dev Notes

Technical notes from real-world software development

  1. Home
  2. Categories
  3. Tags
  4. Archives
    1. ダークモード

アーカイブ

2025 7
2024 7

カテゴリ

プログラミング 設計 Meta

タグ

Kotlin 設計パターン Android Jetpack Compose OOP 訳語の罠 HUGO Java Markdown
Featured image of post その interface、本当に必要ですか? — クリーンアーキテクチャの Dependency Rule から考える
設計

その interface、本当に必要ですか? — クリーンアーキテクチャの Dependency Rule から考える

クリーンアーキテクチャが要求しているのは Dependency Rule であり、層の境界に interface を設けることではない

2025-11-05
読了時間: 5分
Featured image of post [Android] フレームワークのソースコードを正しく読む
設計

[Android] フレームワークのソースコードを正しく読む

ComponentActivity が多数の interface を implements しているのを見て「こう書いて良いのだ」と結論づけるのは誤読である

2025-09-16
読了時間: 3分
Featured image of post 過度な抽象化・共通化のアンチパターン
設計

過度な抽象化・共通化のアンチパターン

見た目の類似性ではなく、ドメイン境界を基準に共通化を判断すべきである。DRY 原則の誤用と偶然の一致について

2025-07-26
読了時間: 4分
Featured image of post interface 継承は型の契約である(is-a が崩れると何が起きるか)
設計

interface 継承は型の契約である(is-a が崩れると何が起きるか)

interface を継承することは「その型として扱える」と宣言する行為である。契約が成立しない継承がなぜ危険かを具体例で示す

2025-06-08
読了時間: 4分
Featured image of post is-a 継承の判断基準と interface の落とし穴
設計

is-a 継承の判断基準と interface の落とし穴

is-a 関係が成立していても継承が正しいとは限らない。interface の多重継承にも設計原則を適用すべき理由を具体例で示す

2025-04-19
読了時間: 5分
Featured image of post 「継承より委譲」の正確な意味
設計

「継承より委譲」の正確な意味

原義は Favor Composition over Inheritance である。合成・委譲・転送の用語を整理する

2025-02-28
読了時間: 3分
Featured image of post [Android] IndicatorState でローディングを宣言的に扱う
プログラミング

[Android] IndicatorState でローディングを宣言的に扱う

ローディング状態を UiState から分離し、IndicatorState で管理する設計を提案する

2025-01-15
読了時間: 5分
Featured image of post クライアント開発に独自例外は(ほぼ)要らない
プログラミング

クライアント開発に独自例外は(ほぼ)要らない

エラーは例外ではなく Result で返す。独自例外を定義する前に、本当に throw が必要か考える

2024-09-10
読了時間: 4分
Featured image of post 独自例外設計のアンチパターン(Exception.message はログ用)
プログラミング

独自例外設計のアンチパターン(Exception.message はログ用)

例外の message に UI テキストを入れてはいけない。エラー情報はレスポンスとして設計する

2024-07-29
読了時間: 3分
Featured image of post [Android] getString のために Context を渡すのをやめる
プログラミング

[Android] getString のために Context を渡すのをやめる

getString のために Context を渡すのをやめる。文字列リソースの解決を View まで遅延させる設計

2024-06-13
読了時間: 3分
1 2
© 2024 - 2026 Quick Dev Notes
Hugo で構築されています。
テーマ Stack は Jimmy によって設計されています。