Why this matters
- Fat interface smell — detailed pointwise breakdown in the section below.
- Role interfaces — detailed pointwise breakdown in the section below.
- Constructor injection — detailed pointwise breakdown in the section below.
- DIP in practice — detailed pointwise breakdown in the section below.
- SOLID is scored as refactor skill, not acronym recall.
SRPOne reason to change
OCPExtend, don't modify
LSPSubtypes substitutable
ISPSmall interfaces
DIPDepend on abstractions
Overview
Small interfaces and constructor injection keep CampusOS modules testable. Study each section below in order — every list is interview-ready reference material.
Fat interface smell
Points to cover
- Definition — what Fat interface smell means in one clear sentence
- When to use — the force or smell that triggers this concept
- CampusOS example — where this appears in parking, booking, or library modules
- How to explain — pointwise bullets you can say aloud in an interview
- Common mistake — what weak candidates do instead
- Refactor move — one concrete change that improves the design
Role interfaces
Points to cover
- Definition — what Role interfaces means in one clear sentence
- When to use — the force or smell that triggers this concept
- CampusOS example — where this appears in parking, booking, or library modules
- How to explain — pointwise bullets you can say aloud in an interview
- Common mistake — what weak candidates do instead
- Refactor move — one concrete change that improves the design
Constructor injection
Points to cover
- Definition — what Constructor injection means in one clear sentence
- When to use — the force or smell that triggers this concept
- CampusOS example — where this appears in parking, booking, or library modules
- How to explain — pointwise bullets you can say aloud in an interview
- Common mistake — what weak candidates do instead
- Refactor move — one concrete change that improves the design
DIP in practice
Points to cover
- Definition — what DIP in practice means in one clear sentence
- When to use — the force or smell that triggers this concept
- CampusOS example — where this appears in parking, booking, or library modules
- How to explain — pointwise bullets you can say aloud in an interview
- Common mistake — what weak candidates do instead
- Refactor move — one concrete change that improves the design
// CampusOS — apply "Fat interface smell" on paper first, then in code
public final class IspDipWiringExample {
// 1. Name entities from the problem statement
// 2. Draw relationships before writing methods
// 3. Introduce patterns only when a force appears
}
Quick recall
Everything you need if you only revisit this box.
- Fat interface smell — review this slice before mock interviews.
- Role interfaces — review this slice before mock interviews.
- Constructor injection — review this slice before mock interviews.
- DIP in practice — review this slice before mock interviews.
Test yourself
Answer these before moving on — recall is what makes it stick.