principio de reutilização comum
-
Upload
engenharia-de-software-agil -
Category
Technology
-
view
352 -
download
3
description
Transcript of principio de reutilização comum
![Page 1: principio de reutilização comum](https://reader030.fdocumentos.com/reader030/viewer/2022020110/5595821b1a28ab23548b4620/html5/thumbnails/1.jpg)
TRABALHO DE
PROGRAMAÇÃO
ORIENTADO A
OBJETO
Prof. Edgar Davidson Alunos: Marco Antônio Wanderson Ribeiro
![Page 2: principio de reutilização comum](https://reader030.fdocumentos.com/reader030/viewer/2022020110/5595821b1a28ab23548b4620/html5/thumbnails/2.jpg)
Princípio da Reutilização Comum (CRP)
Princípio da Reutilização Comum diz que as classes em pacote (package) são
reutilizadas em conjunto e se reutilizar umas das classes em um pacote, estará
reutilizando todas.
Somente as classes coesas devem ser empacotadas em conjunto. Assim como
em tudo, os pacotes de classes e sua coesão devem ser definidos a partir da perspectiva
do usuário. Se um usuário utiliza um pacote (package), todas as classes do pacote devem
ser reutilizáveis no mesmo contexto. As classes que não estão intimamente relacionados
entre si não devem está no mesmo pacote, então toda vez que houver dependência de
um pacote, haverá dependência de cada classe existente no pacote. É muito importante
decidir quais classes devem ser unidas por um pacote (package). A Inadequada seleção
de classes pode criar dependências indesejáveis e tornar o uso do pacote um pesadelo.
Exemplo se estiver usando um pacote para cálculos de matrizes, é melhor ter
somente classes relacionadas a essa funcionalidade, caso contrário, estará reavaliando e
redistribuindo, mas do que necessário, gastando assim também mais esforço do que
suficiente.
Um outro exemplo simples pode ser uma classe container e seus associados
iteradores. Estas classes são reutilizadas juntas devido a estarem estreitamente ligada
uma as outras.
Ponto Relevante do CRP
Mesmo usando apenas uma classe dentro do pacote, ainda assim existe uma
dependência, portanto se houver mudança em apenas uma classe do pacote (package),
todo o pacote dever reavaliado e redistribuído.
![Page 3: principio de reutilização comum](https://reader030.fdocumentos.com/reader030/viewer/2022020110/5595821b1a28ab23548b4620/html5/thumbnails/3.jpg)
As figuras abaixo irão ilustrar melhor o prin cipio CRP:
Classes reutilizadas colaboram com outras classes q ue são parte de uma abstração bem coesa que chamamos de pacotes (packag e).
Quando um pacote usa outro é criado então uma depen dência entre eles.
Se dentro do pacote (package) é usado somente uma c lasse mesmo assim
haverá uma forte dependência de todo o pacote .
Cada vez que o pacote (P2) é atualizado, usando o pacote (P1) então (P1)
deve ser reavaliado e redistribuído.
![Page 4: principio de reutilização comum](https://reader030.fdocumentos.com/reader030/viewer/2022020110/5595821b1a28ab23548b4620/html5/thumbnails/4.jpg)
Conclusão:
Conforme ficou demonstrado no exemplo e nas ilustrações acima, a desvantagem do princípio está no forte vinculo das classes do pacote, se for usar somente uma classe do mesmo terá que usar todo o pacote, empreendendo mais esforço do que é necessário.