One of the most important principles of object oriented programming -- delimiting internal interface from the external one. That is "a must" practice in developing anything more complex than a "hello ...