Anda di halaman 1dari 1

Design Patterns / Padres de Projeto

Afinal de onde vieram e o que so realmente Design Patterns ? Padres de projeto podem ser vistos como uma soluo que j foi testada para um problema. Desta forma , um padro de projeto geralmente descreve uma soluo ou uma instncia da soluo que foi utilizada para resolver um problema especfico. Padres de projetos so solues para problemas que algum um dia teve e resolveu aplicando um modelo que foi documentado e que voc pode adaptar integralmente ou de acordo com necessidade de sua soluo. Os design patterns tiveram suas razes no trabalho do engenheiro civil Christopher Alexander, que redigiu sobre as suas experincias em resolver problemas de projetos encontrados em arquitetura com construes em geral. Segundo o prprio Christopher, "cada pattern descreve um problema que ocorre com frequncia em nosso ambiente, e ento descreve o ncleo da soluo para tal problema, de uma maneira que possamos utilizar esta soluo milhares de vezes". Os princpios de Alexander foram trazidos para o desenvolvimento de software, pois finalmente, em 1995, liderados por Erich Gamma a GoF (Gang of Four) - Erich Gamma, Richard Helm, Ralph Johnson a John Vlissides publicaram o livro que deu origem onda dos Patterns na rea de informtica, Design Patterns: Elements of Reusable ObjectOriented Software. O primeiro catlogo bem descrito sobre patterns de projeto para programas orientados a objeto para a comunidade de software e tem influenciado na evoluo dos padres de projeto desde ento. A obra descreveu 23 padres baseados na experincia dos autores. Muitos outros padres foram documentados e catalogados desde a publicao de Design Patterns. Entretanto, esses 23 iniciais so provavelmente os mais populares. Em termos de documentao, os design patterns so altamente estruturados.Eles so documentados a partir de um modelo que identifica a informao necessria para entender o problema do software e a soluo em termos de relacionamentos entre as classes e objetos necessrios para implementar essa soluo. No h um ponto comum na comunidade de design patterns sobre como descrever um template de patterns. Alguns autores preferem ser mais expressivos e menos estruturados, enquanto outros preferem que seus templates sejam mais precisos e altamente estruturados. A UML tem papel importante nessa documentao. comumente usada para descrever patterns e cataloga-los, incluindo diagrama de classes, de seqncia ou de interaes. Os 23 padres do GoF so classificados em trs categorias com base no seu propsito: De Criao: Se preocupam com o processo de criao de objetos. Estruturais: Lidam com a composio de classes ou de objetos. Comportamentais: Descrevem como as classes ou objetos interagem e distribuem responsabilidades. Segundo a GoF, um Padro de Projeto composto por quatro elementos: Nome do Padro: Referncia de uma ou duas palavras para a soluo do problema. Problema: Descreve em que situao aplicar o padro. Soluo: Descreve os elementos que compem o padro de projeto. Consequncias: Anlise das vantagens e desvantagens da aplicao do padro.

Resumindo: Um Padro de Projeto descreve uma soluo bem sucedida para um problema recorrente. Representam solues comprovadas. Fornecem um vocabulrio comum entre a equipe de desenvolvimento.

Bons projetistas reutilizam solues que funcionaram no passado [GoF].

Anda mungkin juga menyukai