A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

PADROES DE PROJETO PROF. OSIEL MARLON. PADRÕES DE PROJETO INTRODUÇÃO Padrões de projeto têm emergido como uma das mais promissoras abordagens para a melhoria.

Apresentações semelhantes


Apresentação em tema: "PADROES DE PROJETO PROF. OSIEL MARLON. PADRÕES DE PROJETO INTRODUÇÃO Padrões de projeto têm emergido como uma das mais promissoras abordagens para a melhoria."— Transcrição da apresentação:

1 PADROES DE PROJETO PROF. OSIEL MARLON

2 PADRÕES DE PROJETO INTRODUÇÃO Padrões de projeto têm emergido como uma das mais promissoras abordagens para a melhoria da qualidade de software. Eles enfatizam a identificação e comunicação entre pessoas de elementos dos melhores exemplos e práticas em software. Entretanto, não substituem as abordagens correntes, e sim as complementam com o preenchimento de lacunas que não estavam sendo tratadas adequadamente. A principal lacuna é a deficiência no compartilhamento dos melhores exemplos e práticas em software. O enfoque nestes aspectos tem gerado um grande número de “soluções” para os problemas do software que não tem tido os resultados práticos esperados, agravando o que é conhecido como a “crônica crise do software”.

3 Os padrões de projeto tornam mais fáceis reutilizar projetos e arquiteturas bem- sucedidas. Ajudam a escolher alternativas de projeto que tornam um sistema mais reutilizável e a evitar alternativas que comprometam a utilização.

4 PRINCIPAIS CONCEITOS A idéia central de Padrões de Projeto está fortemente baseada nos trabalhos de Christopher Alexander, que propôs uma nova atitude para arquitetura, construção e planejamento de cidades, comunidades, prédios e casas.

5 Um padrão descreve uma solução para um problema que ocorre com freqüência durante o desenvolvimento de software, podendo ser considerado como um par “problema/solução”. Os padrões de software podem se referir aos diferentes níveis de abstração no desenvolvimento de sistemas orientados a objetos.

6 Um padrão de projeto sistematicamente nomeia, explica e avalia um projeto importante e recorrente em sistemas orientados a objetos, descrevendo “moldes” para a arquitetura de software.

7 ELEMENTOS ESSENCIAIS A abordagem Padrões de Projeto pode ser definida por meio de quatro perspectivas complementares: nome, problema, solução, conseqüências. Nome - referência a descrição de um problema de projeto, suas soluções e conseqüências, em uma ou duas palavras. Dar nome a um padrão aumenta imediatamente o vocabulário de projeto. Problema - descreve quando aplicar um padrão, defi nindo o contexto do sistema, as estruturas de classe e a lista de condições que devem ser satisfeitas para que faça sentido aplicar o padrão. Solução - descreve os elementos que compõem o projeto, seus relacionamentos, suas responsabilidades e colaborações, além de mostrar um arranjo geral de elementos que resolvem um determinado problema. É feito o uso de UML para descrição de soluções. Conseqüências: é feita uma análise crítica do padrão fornecido, incluindo vantagens, desvantagens e limitações, definindo elementos que infl uenciam decisivamente na escolha de um padrão, como solução para um problema.

8 CLASSIFICAÇÃO DE PADRÕES Padrões se referem à comunicação de problemas e soluções, permitindo documentar um problema conhecido recorrente a sua solução em um contexto específico, repassando esse conhecimento para outras pessoas. Padrões de projeto – descrevem soluções para problemas de projeto de software. Padrões de interface – defi nem soluções para problemas comuns no projeto de interfaces de sistemas. Padrões de programação – descrevem soluções de programação particulares de uma determinada linguagem de programação ou regras gerais de estilo de programação. Padrões de persistência – descrevem soluções para problemas de armazenamento de informação em arquivos ou bancos de dados. Padrões para hipertextos – descrevem soluções para problemas encontrados no projeto de hipertextos. Padrões para hipermídia – descrevem soluções para problemas encontrados no desenvolvimento de aplicações multimídia.

9 EXEMPLO DE UMA ARQUITETURA Um padrão de projeto servirá para auxiliar o trabalho, comunicação e entendimento entre os desenvolvedores sobre a natureza do problema. Um exemplo de padrão, que será mostrado como exemplo, é o façade (fachada) [Gamma]. A finalidade do façade é estabelecer uma única interface de comunicação entre a classe cliente e a classe de negócio. A utilização deste padrão facilita na manutenção, portabilidade e produção de novos sistemas, já que toda a comunicação entre as classes já foi estabelecida.

10

11 Dentre os benefícios que se obtêm com a implementação do fachada, podem ser destacados: separação entre os clientes e os componentes do subsistema, diminuindo o número de objetos que têm que se comunicar com os clientes; baixo acoplamento entre o subsistema e os clientes, permitindo que haja alterações dos componentes do subsistema sem que isso afete os clientes; não há restrições, caso seja necessário utilizar as classes do sistema nas aplicações, sendo possível optar por facilidade de uso ou generalidade.

12 Facade-Fachada  Estrutura-Uma única interface é definida para comunicação com o banco de dados. Padrão Façade aplicado a uma classe de um projeto.

13 Facade-Fachada Considerações sobre implementação Considerações sobre implementação Redução do acoplamento do cliente-subsistema. Redução do acoplamento do cliente-subsistema. Ocorre tornando o Facade uma classe abstrata com subclasses concretas. Ocorre tornando o Facade uma classe abstrata com subclasses concretas. Classe de subsistemas: públicas ou privadas ? Classe de subsistemas: públicas ou privadas ? A classe Facade deve ser naturalmente pública. As classes envolvidas no processo podem ser privadas, mas por convenção de padronização independente de linguagem de programação devem ser públicas. A classe Facade deve ser naturalmente pública. As classes envolvidas no processo podem ser privadas, mas por convenção de padronização independente de linguagem de programação devem ser públicas.

14 Considerações Finais Ao usar um padrão de projeto é importante: Ao usar um padrão de projeto é importante: Ler e entender o padrão por inteiro; Ler e entender o padrão por inteiro; Estudar como os padrões se interrelacionam; Estudar como os padrões se interrelacionam; Estudar padrões com finalidades semelhantes; Estudar padrões com finalidades semelhantes; Definir de maneira clara as classes e operações que suportem as responsabilidades e colaborações presentes no padrão. Definir de maneira clara as classes e operações que suportem as responsabilidades e colaborações presentes no padrão. Os padrões de projeto não devem ser aplicados indiscriminadamente, mas apenas quando a flexibilidade que eles oferecem é realmente necessária. Os padrões de projeto não devem ser aplicados indiscriminadamente, mas apenas quando a flexibilidade que eles oferecem é realmente necessária.

15 Referência Bibliográfica Salviano, Clenio. Introdução à Software Patterns Tutorial SBES’97 ftp://st.cs.uiuc.edu/pub/patterns/presentations/nswpatt.zip Alur,Deepak- Core J2EE patterns: as melhoeres práticas e estratégias de design Gamma,Erich et all- Padrões de projeto:Soluções reutilizáveis de software orientada a objeto


Carregar ppt "PADROES DE PROJETO PROF. OSIEL MARLON. PADRÕES DE PROJETO INTRODUÇÃO Padrões de projeto têm emergido como uma das mais promissoras abordagens para a melhoria."

Apresentações semelhantes


Anúncios Google