Remix.run Logo
sublinear 20 hours ago

If you don't know enough to design a data structure, requirements are missing and someone talking to the client is dropping the ball big time.

jeswin 19 hours ago | parent [-]

Where did I say any of that?

I'm saying that if you care about performance, data structures should be designed with approach specific tradeoffs in mind. And like I've said above, in typical business apps, it's ok to start with data structures because (a) performance is usually not a problem, (b) staying close to the domain is cleaner.

reverius42 19 hours ago | parent | next [-]

You said: "You can't design a data structure without knowing how you will use it."

But the whole discussion involves knowing how you will use it; the advocacy is for careful consideration of data structures (based on how you will use them) resulting in less pain when designing/choosing algorithms.

jeswin 19 hours ago | parent [-]

My point is that one doesn't follow the other. To design good data structures, you need to know how it'll get used (the algorithm).

> If you've chosen the right data structures and organized things well, the algorithms will almost always be self-evident.

This is what I was responding to.

reverius42 19 hours ago | parent | prev [-]

See also:

"Show me your flowcharts and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won’t usually need your flowcharts; they’ll be obvious."

https://en.wikiquote.org/wiki/Fred_Brooks