Client-Server vs. Repository
publish date: 2026/06/11 07:37:10.278012 UTC
A startup is building a new collaborative code editing platform. Developers need to work on shared project files simultaneously, with tools like a linter, auto-formatter, and documentation generator all accessing the same codebase. Which architectural pattern is more appropriate for managing the shared codebase among tools, and why?
Correct Answer
Explanation
The Repository pattern suits this scenario because large volumes of data (source code) are generated and used by multiple tools, and there is no need for tools to communicate directly. The shared codebase acts as the repository; the linter, auto-formatter, and documentation generator all read from and write to it independently.
Reference
Software Engineering, Ian Sommerville, 10th edition
