Dependency Injection & Decoupling
Several projects suffered from tightly coupled components, unclear ownership, and difficult-to-test logic. The goal was to separate responsibilities while keeping runtime performance predictable.

HiLo (ElectricManta)
Zenject was used to enforce strict, interface-driven dependency injection. While structurally clean, it introduced rigidity and noticeable initialization overhead, including frame drops during startup.
Shinayu & Shatterpoint
I implemented a lightweight dependency model using creation-time injection, data observers, and event-based dependency fulfillment. Systems declared their needs and reacted when dependencies became available.
Outcome
This approach improved testability, replaceability, and extensibility while avoiding unnecessary framework overhead.
Key Takeaway
Dependency injection should serve clarity and performance. Lightweight, context-aware solutions often outperform full DI frameworks in Unity projects.
