Personally, I'm much more comfortable with the simple approach of having properties directly on the object (e.g. port.manufacturer) rather than adding additional layers to the API (e.g. port.getInfo().manufacturer).  Comes across to me as much cleaner and readable and like rwaldron stated, it you're really interested in setting the property as read-only, you [can do it](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty) if you feel so moved.