Resumo aula 24 v1.0
12/Novembro/2006
Arquitetura sob a ótica do reuso
Nessa aula aprendemos como ser mais eficiente do ponto de vista da arquitetura.
Com isso, o desenvolvedor que produz código para reusar, colocando seu foco de atenção em flexibilidade, armazenamento e catalogação acaba por ter mais trabalho.
Já aquele produz reusando, com foco em como descrever o que quer, em procurar e integrar, tem menos trabalho do que o primeiro.
Torna-se necessário então definirmos aquilo que estamos procurando e verificar qual dos objetos que tenho se adapta de forma mais perto daquilo que eu quero; a escolha da menor distância conceitual.
Nem sempre é se torna trivial a medição dessa distância conceitual, e então criam-se estruturas auxiliares que ficaram responsáveis por ajudar na organização e classificação dos objetos. Pode acontecer de a classificação de um objeto ocorrer em mais de uma categoria, como citado o exemplo do ornitorrinco, tendo-se que optar por uma decisão em detrimento de atender a todas as expectativas.
O reuso de um software pode acontecer em três camadas:
- Código
- Desenho
- Requisito
Se estas 3 camadas estiverem bem conectadas dizemos que o software atende ao requisito.
Alguns conceitos apresentados ainda durante a aula:
- Rúben Prietro-Diaz – sugere uma organização baseada no modelo em que 2 triplas classificam os componentes segundo definição e uso;
- Design Patterns – não existe hierarquia, sendo um modo não-taxonômico de se organizar os desenhos;
- Reuso Generativo – maneira mais flexível de se reutilizar o desenho, não deixando o código amarrado ao desenho;
- Tags – maneira de se catalogar informação, baseada na opinião da maioria, podendo ser uma maneira bem eficaz de se classificar por estar ligada ao bom-senso coletivo, colaborando para que a informação seja “achada” de forma mais fácil pela maioria.