Design Patterns – Padrões de Projeto

Estive fora por um tempo, mais agora esta tudo se resolvendo … rsrs. Neste periodo andei estudando e continuo, um tema da Arquitetura de Software chamado Design Patterns ou Padrões de Projeto.

O Que são Design Patterns ? Vamos tentar levar do modo mais explicativo … Se você tem um problema, como resolve-lo de maneira mais eficaz e diminuindo os riscos com todo escopo ? O Design Patterns nada mais é que um conjunto de soluções para problemas que ocorrem com frequencia em situações especificas baseado em experiências e conhecimento na área.

Estes princípios foram desenvolvidos e levaram a publicação de um livro chamado “Design Patterns: Elements of Reusable Object-Oriented Software“, de 1995 por Eric Gamma, Richard Helm, Ralph Johnson e John Vlissides. Este livro é considerado a principal referência de design patterns para a comunidade de software e tem influenciado na evolução dos padrões de projeto até hoje. Com isso foi criado o nome GoF (Gang of Four) dos quatro criadores do livro. Posteriormente, vários outros livros do estilo foram publicados, como Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, que introduziu um conjunto de padrões conhecidos como GRASP (General Responsibility Assignment Software Patterns).

Padrões  GoF :

Padrões de criação

  • Abstract Factory
  • Builder
  • Factory Method
  • Prototype
  • Singleton

Padrões estruturais

  • Adapter
  • Bridge
  • Composite
  • Decorator
  • Façade
  • Flyweight
  • Proxy

Padrões comportamentais

  • Chain of Responsibility
  • Command
  • Interpreter
  • Iterator
  • Mediator
  • Memento
  • Observer
  • State
  • Strategy
  • Template Method
  • Visitor

Os padrões GoF são organizados em famílias de padrões: de criação, estruturais e comportamentais.

Padrões de criação – são relacionados à criação de objetos.

Padrões Estruturais - tratam das associações entre classes e objetos.

Padrões  Comportamentais – interações e divisões de responsabilidades entre as classes ou objetos.

Padrões GRASP

  • Controller
  • Creator
  • Expert
  • Law of Demeter
  • Low Coupling/High Cohesion
  • Polymorphism
  • Pure Fabrication

Ao decorrer dos dias em que eu for me aprofundando no assunto irei postando aqui as resoluções com os fontes de cada padrão citado.

Sobre Estevão Ferreira Maia
* Desenvolvedor em Web e Desktop (especialmente na plataforma .NET e Java), graças à formação em tecnologia e dedicação a muito estudo, solidificados pela experiência na área. * Realiza trabalhos de design de conceito em softwares, logos, sites, etc. * Participa de projetos utilizando arquiteturas de desenvolvimento ágil como SCRUM e padrões em arquitetura de software (Design Patterns). * Facilidade para trabalhar em equipe e criar sinergia com clientes e gestores. Além disso, está constantemente em crescimento técnico e metodológico, através de cursos, seminários e certificações. * Ministra várias palestras e míni cursos na área de dispositivos móveis Google Android e sobre desenvolvimento, e colaboro com a comunidade código aberto (OpenSource) e acadêmico e com artigos publicados no site Viva o Linux e outros. - Áreas de Conhecimento - Web: Web Services, SOAP, Java EE, ASP.NET, HTML, JavaScript, Adobe Flash, Adobe Flex, EXTJs; Desktop: .NET C#, QT Develop C/C , VB .NET; Móvel: Google Android, Windows Phone, iPhone SDK. Bancos de Dados: DB2, SQL Server, Firebird, MySQL; Servidores: Apache, Apache Tomcat, IIS, IBM WebSphere, Azure (Cloud Computing); Linguagens: .NET C#, Java, Android SDK, Objective C (iPhone), C/C e ActionScript; Redes: Windows NT/2000/2003, MacOS X, OpenSuse, Slackware; Ferramentas: Enterprise Architect, Crystal Reports, VisualStudio, Eclipse , Rational IBM, Netbeans, Adobe Flex Builder, Adobe Photoshop CS, Dreamweaver CS. Certificações MS2B - Microsoft Students to Business; IPELA – Sony Network Camera;

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Sair / Alterar )

Imagem do Twitter

You are commenting using your Twitter account. Sair / Alterar )

Foto do Facebook

You are commenting using your Facebook account. Sair / Alterar )

Connecting to %s

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.