Angular Signals (signal, computed, effect)
Design a small subsystem that relies on Angular Signals (signal, computed, effect). Outline components, data flow, failure modes, and metrics.
Answers use simple, clear English.
Quick interview answer
Use Angular Signals (signal, computed, effect) as the core idea. Example shape: cartCount = computed(() => items().reduce(...)); template reads cartCount()..
Detailed answer
Use Angular Signals (signal, computed, effect) as the core idea. Example shape: cartCount = computed(() => items().reduce(...)); template reads cartCount().. Watch for: Migration from RxJS-heavy patterns takes learning.. Measure success via latency/error/saturation. Core: Signals are reactive primitives: signal() writable, computed() derived, effect() side effects. Fine-grained updates reduce reliance on Zone.js change detection for many cases. Real-time example: cartCount = computed(() => items().reduce(...)); template reads cartCount(). Pros: Predictable reactivity; better performance mental model. Cons: Migration from RxJS-heavy patterns takes learning. Common mistakes: Writing to signals inside computed; infinite effect loops. Best practices: Prefer signals for local UI state; RxJS for async streams still fine. Audience level: Junior.
Full explanation
Signals are reactive primitives: signal() writable, computed() derived, effect() side effects. Fine-grained updates reduce reliance on Zone.js change detection for many cases.
Real example & use case
cartCount = computed(() => items().reduce(...)); template reads cartCount().
Pros & cons
Pros: Predictable reactivity; better performance mental model. Cons: Migration from RxJS-heavy patterns takes learning.
Common mistakes
Writing to signals inside computed; infinite effect loops.
Best practices
Prefer signals for local UI state; RxJS for async streams still fine.
Follow-up questions
- How would you test Angular Signals (signal, computed, effect)?
- What metrics prove Angular Signals (signal, computed, effect) is healthy in prod?
- How does Angular Signals (signal, computed, effect) change at 10× traffic?