3 ms·
Agreed 100%. What are the common cases we need the data structures to optimize? How does this penalize other parts of the system? How do we make the data str
by bcrl 6y ago
Agreed 100%. What are the common cases we need the data structures to optimize? How does this penalize other parts of the system? How do we make the data structures extensible for new features in the future? Does this data structure prevent us from making any other use-cases work well? How complex is the resulting system going to be, and will this cause us any future maintenance issues? Does everyone on the team understand the approach we are taking?
My experience is that good teams start by asking lots of questions. The design may not be entirely formal, but good developers do go through the process of figuring out their internal list of requirements needed to satisfy the requirements of the system as a whole, and try to make sure that the decisions made are well thought out and don't box the codebase into a problem space in the future.