I often have data that in some contexts I want to handle uniformly, but in other contexts I wish to differentiate it. For example, I could have a vector that is series of angles or a series of velocities, or a std::string that contains the current mode of a device or the name of that device instance. In some cases I want to operate on the specific information, such as modifying the angles or velocities using input data. In other cases I want to simply operate on all the data uniformly, such as serializing all of the strings or writing algorithms that will perform calculations for any device with a set of angles, or using a standard string algorithm. In yet more cases, physical devices will often have specific values that differ from one to another, like button differences between a wii remote and an xbox controller.
Has anyone put thought into designing and implementing data storage, algorithms, and device drivers in a maximally generic way and have insight or resources they can share?
One interesting document of note is the boost best practice handbook.
javac
! (And from the tone and context of that mail, I get the impression he – the designer(!) – does not count himself among those three people.) – Jörg W Mittag Jun 30 at 19:56