Tagged articles

Composition over Inheritance

4 articles · Page 1 of 1
Linyb Geek Road
Linyb Geek Road
Oct 9, 2026 · Fundamentals

Palantir Ontology Modeling: 4 Core Principles for Scalable Domain Design

This article breaks down Palantir's four prioritized ontology modeling principles—domain-driven design, DRY with Rule of Three, open/closed extension, and composition over inheritance—illustrating each with concrete anti-patterns and a practical 12-question review checklist to prevent model fragmentation as teams scale.

Composition over InheritanceDRYDomain-Driven Design
0 likes · 20 min read
Palantir Ontology Modeling: 4 Core Principles for Scalable Domain Design
Dabaoshi
Dabaoshi
Aug 8, 2026 · Fundamentals

Bridge Pattern – How to Avoid Multiplicative Class Explosion in Structural Design

The article explains how the Bridge design pattern separates two orthogonal dimensions—such as order type and notification channel—into independent hierarchies, replacing inheritance‑driven class explosion with compositional bridges, and demonstrates its rationale, code, real‑world examples, and differences from similar patterns.

Bridge PatternComposition over InheritanceJava
0 likes · 14 min read
Bridge Pattern – How to Avoid Multiplicative Class Explosion in Structural Design
Mike Chen's Internet Architecture
Mike Chen's Internet Architecture
Nov 4, 2023 · Fundamentals

Understanding the Composite Reuse Principle (CRP): Concepts, Benefits, UML, and Implementation Examples

This article provides a comprehensive explanation of the Composite Reuse Principle (CRP), covering its definition, background, advantages over inheritance, UML representation, practical Java code examples, and guidelines for choosing between composition and inheritance in object‑oriented design.

Composite Reuse PrincipleComposition over InheritanceJava
0 likes · 11 min read
Understanding the Composite Reuse Principle (CRP): Concepts, Benefits, UML, and Implementation Examples
Baixing.com Technical Team
Baixing.com Technical Team
Dec 12, 2017 · Mobile Development

Why Composition Beats Inheritance in Android List Refactoring

This article explains how refactoring the Baixing Android app’s list feature from an inheritance-heavy design to a composition-based architecture improves modularity, reduces coupling, and eases future extensions by applying OOP principles such as dependency inversion and component interfaces.

Component ArchitectureComposition over Inheritancedependency inversion
0 likes · 11 min read
Why Composition Beats Inheritance in Android List Refactoring