. . . "Knowing how to identify areas where a new object can be introduced to simplify the code in your application is a talent that many spend years improving (I can not say perfect, because software development is truly an evolutionary process)." .