Starting From the Top Imagine joining a new team at a new company and you finally get access to a codebase. Slack iOS Xcode File Hierarchy 2017 Where do you add a source file for your team’s project? Great question. Your new team has three source directories for you to add files to, and oh,…
Overview
The article discusses the challenges and strategies of organizing a codebase, particularly within Slack's iOS team. It highlights the importance of a well-structured directory and file organization to enhance developer experience and efficiency.
What You'll Learn
How to create a coherent folder hierarchy for a codebase
Why maintaining a clean codebase improves developer productivity
How to implement tooling to enforce folder organization rules
Prerequisites & Requirements
- Understanding of codebase structure and organization principles
- Familiarity with Xcode and version control systems like Git(optional)
Key Questions Answered
What are the main challenges faced when organizing a codebase?
How did Slack's iOS team improve their codebase organization?
What specific strategies were used to move source files into a new structure?
Key Statistics & Figures
Technologies & Tools
Key Actionable Insights
1Establish a clear folder hierarchy to improve codebase navigation.A well-defined structure allows developers to quickly locate files, reducing onboarding time for new team members and enhancing overall productivity.
2Implement tooling like Danger to enforce organization rules.Using automated checks can prevent developers from adding files to incorrect directories, ensuring adherence to the established structure and maintaining code quality.
3Create a committee to oversee codebase organization efforts.Having a dedicated group can facilitate discussions around best practices and ensure that all team members are aligned on the organization strategy.