A more modular approach is for users to call functions to initialize and modify your data structures indirectly rather than doing it themselves.