Padrões de desenho de software - NAVARRO, Rodrigo (004, 2009)
Projetos em geral, principalmente os mais complexos, são difíceis de se estruturar e de se detalhar. Por definição, um projeto ideal deve ser específico em sua funcionalidade e genérico o bastante para ser adaptado em outros contextos completamente diferentes, além de garantir que requerimentos futuros sejam atendidos com velocidade e facilidade. Projetistas experientes utilizam soluções estruturadas e que já foram aplicadas em projetos que obtiveram sucesso, para não terem que pensar em novas. Essas soluções para determinados problemas são chamadas de Padrões de Desenho. Em desenvolvimento de softwares orientados a objetos, uma maneira de atingir esse objetivo é utilizando soluções que já provaram ser funcionais em como organizar a criação, a estrutura, o comportamento e a comunicação entre as classes e objetos. Como resultado disso, é possível obter um sistema em menor tempo, com o menor esforço e com maior qualidade.

Projects in general, especially the more complex ones, are difficult to structure and detail. By definition, an ideal project must be specific in its functionality and generic enough to be adapted in other completely different contexts, in addition to ensuring that future requirements are met with speed and ease. Experienced designers use structured solutions that have already been applied in successful projects, so they don't have to think of new ones. These solutions to certain problems are called Drawing Patterns. In object-oriented software development, one way to achieve this goal is by using solutions that have already proven to be functional in how to organize the creation, structure, behavior and communication between classes and objects. As a result, it is possible to obtain a system in less time, with less effort and with higher quality.
Software design patterns
Keywords: Programação orientada a objetos; Desenvolvimento de software; Informação e Comunicação