Man… I thought this was going to be a proper rant about using maps where you should be using other things… No, it’s a make sure you type your function inputs rant…
I wasn’t trying to go into typing as much as using structs or objects when working with known data attributes. Sorry that it was a bit misleading.
The original actually went into using trees, sets, heaps, tries, etc., but it felt way too… ranty. After writing all that out, I realized that most of those other cases come up really infrequently, and that my biggest gripe was about not using structs or other pre-defined key container types. I thought it would be better to keep things short and focused.
Maybe I should re-write and publish a data structures edition.
I would like that! Very much!
Dataclass all the things!
I love the addition of dataclass. Makes refactoring such a breeze. If you need to extract some function, boom, you already have a class that you’re using everywhere.
Me too. I like to really take my time up front when modelling, because it makes a project so much easier and enjoyable down the road.
Chances are there’s probably something similar to dictionary in Python in your languages or at least it’s a import/#include away. Although I don’t use general programming languages at all, in my used language (G’MIC), I do something like
dict$var=input
where$var
is a defined variable, and this way I can access input by doing${dict$var}
and that’s similar to Python dictionary. In C++, there’s hash table implementation out there via github. That being said, there are sometimes when you don’t need a hashtable dependent on the hashmap, and sometimes, it’s just as simple as basic mathematics to access data.