Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouLuiz Gustavo Domingos Benke Alterado mais de 8 anos atrás
1
Frameworks e Componentes Daniel Fernando Pavelec
2
Motivação Reuso Orientação a objetos Diminuição do tempo para produzir uma aplicação
3
Componentes “Um componente de software é um empacotamento físico de software executável com uma interface pública bem definida.” (Jon Hopkins) “Um pacote coerente de artefatos de software que podem ser independentemente desenvolvidos e entregues como uma unidade e que pode ser composto, sem modificação, com outros componentes para construir algo maior”. (D´Souza e Wills)
4
Framework – O que é ? Técnicas de Reuso e “Componentização” Design e Código Representação física Fluxo de Controle -> Domínio Adaptáveis (Hot Spots)
5
Algumas definições “Um framework é um conjunto de classes que constitui um design abstrato para soluções de uma família de problemas” - Johnson e Foote - 1988 “Um framework é um conjunto de objetos que colaboram com o objetivo de cumprir um conjunto de responsabilidades para uma aplicação ou um domínio de um subsistema.” - Johnson -1991 “Uma arquitetura desenvolvida com o objetivo de se obter a máxima reutilização, representada como um conjunto de classes abstratas e concretas, com grande potencial de especialização.” - Mattsson - 1996
6
Biblioteca Comum Framework
7
Objetivo Manter o conhecimento Código menor Otimizar generalização e a especialização
8
Benefícios Modularidade Reuso Extensibilidade
9
Classificação - Extensão Whitebox Blackbox Graybox
10
Diminuição de linhas de código na aplicação O código do framework já está escrito e depurado Frameworks oferecem reutilização de código e design Maior foco na área específica e menor foco na parte de compatibilidade do sistema Facilidade na manutenção da aplicação Pouco esforço de desenvolvimento da aplicação Integração Eficiência Vantagens
11
Desvantagens Dificuldade para se desenvolver bons frameworks A qualidade da documentação é essencial para o usuário (desenvolvedor) Maturidade do Framework vs. Compatibilidade Depuração complicado A flexibilidade e a generalização do framework podem afetar a eficiência em algumas aplicações Curva de aprendizagem Pouca padronização Manutenção do framework
12
Framework vs. Patterns Design patterns são mais abstratos do que um framework Frameworks são mais especializados do que patterns. Design patterns possuem uma arquitetura menor do que um framework. Pattern descreve como fazer um design, enquanto um framework é o próprio design Patterns complementam frameworks
13
Processo de desenvolvimento Processo baseado na experiência Processo baseado na análise do domínio Processo utilizando design patterns
14
Diretrizes de desenvolvimento O foco deve ser como o usuário interage com o framework. É importante identificar quais as classes e operações do framework o usuário terá que utilizar A quantidade de código escrita deverá ser reduzida a um mínimo
15
Documentação Documentação Adaptativa: Os que decidem qual framework utilizar. Os que já decidiram usar o framework Os que desejam realizar algum tipo de manutenção no framework
16
Documentação Propósito do framework Como usar os fundamentos do framework Propósito das aplicações: exemplos Design do framework
17
Exemplo Agenda Eletrônica Enunciado: O sistema de agenda pode ter vários usuários Os usuários selecionam o tipo de evento para o qual ele deseja ser alarmado Ao selecionar um evento o usuário escolhe o alarme(data e hora) que deseja e como ele deve ser avisado O usuário é avisado através dos canais de comunicação do sistema com o usuário Ex. de evento: tarefa, aniversário Ex. de canal: celular, email
19
Design do Framework
20
Conclusão Analisar: O domínio do problema que um framework endereça A estrutura interna de um framework Como o framework deve ser usado “Quanto mais customizado um componente é, mais ele se adapta a uma situação em particular porém mais esforço é necessário para aprende-lo e para usa-lo efetivamente.”
21
Referências Cris Kobryn, Modeling Components and Frameworks with UML, Communications of the ACM, 43(10), pp. 31-38, October 2000. Silva, P. Ricardo, Suporte ao desenvolvimento e uso de componentes e framework, Tese Doutorado – UFRS – 2000
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.