design patterns solid oop and uml complete guide | Comidoc