API-suggestions » History » Version 4

« Previous - Version 4/6 (diff) - Next » - Current version
C. Emmerich, 02/08/2012 07:22 PM


API-suggestions

  • incomplete documentation: Buffer->get(), Buffer->tryGet() - where is the difference
  • improve naming for factory-methods, e.g. JointAngles::fromRad can be renamed in JointAnlges::createFromRad
  • some questions concerning the get() and publish() logic of CCA::Ports:
    • get():
      • Why do I get a pointer to the buffer's content? Wouldnt it be more correct to - at least - get a pointer to a const object? Because otherwise I am allowed to manipulate the buffer's content.
      • Even if i get a pointer to a const object, there is still the problem, that buffer's content can change while I am using it and I will not be informed about that change
    • publish()"
      • same for the const correctness: why dont I publish a pointer to a const object
    • As a user, I would prefer to not work with pointers
      • problems amongst the mentioned ones:
        • it forces me to work with shared_pointers even if it's not necessary at all
        • it can produce overhead
  • print-methods for DTOs: plz do not append a newline() command at the end of printing a DTO (see e.g. JointAngles.print()). this is confusing, because the 'user' himself wants determine a when a new line starts, or he wants to print two of them in one line what is not possible with your current printing style