http://www.les.inf.puc-rio.br/opus OPUS Group OpenOrb: implementação de algumas composições de Padrões em CaesarJ Alessandro Gurgel | [email protected] Francisco Dantas | [email protected] Alessandro Garcia | [email protected] LES | DI |PUC-Rio - Brazil Composite e Visitor OO Composite Visitor November 15 2 Composite Visitor CaesarJ Métodos accept do Visitor na estrutura de Componentes. Solução AO Solução CaesarJ November 15 Usa um aspecto com ID para inserir esses métodos na estrutura. Uso de Virtual Classes Representar as estruturas (Composite e Visitor) Implementação pelos métodos accept do Visitor Francisco Dantas et. al @ OPUS Group 3 CompositeVisitor CaesarJ November 15 Francisco Dantas et. al @ OPUS Group 4 FactoryMethod FactoryMethod November 15 Transformação da classe em Virtual Class. Tipo de padrão que a implementação em OO já é boa. A única vantagem de transformar em cclass é que poderá ser combinado com outras factories através de mixin composition o que não está no escopo da aplicação. Francisco Dantas et. al @ OPUS Group 5 Abordagem November 15 Transformar a aplicação OpenOrb em uma aplicação CaesarJ pensando nos padrões como features de forma a modularizálos usando mixin composition para integrá-los aos componentes Francisco Dantas et. al @ OPUS Group 6 Problemas November 15 Dificuldade na identificação de Padrões. Dificuldade de entendimento da aplicação. Não tenho bom domínio em relação a desenvolvimentos de Middlewares e programação Reflexiva. Documentação Fraca do OpenOrb e código sem comentários. Nos padrões FactoryMethod e Command não vejo a utilidade dos mesmos na aplicação. Em relação a FactoryMethod não a utilização de abstrações pela aplicação e no Command há apenas um comando. No artigo AOSD06 é dito que alguns padrões (ex Command) não tiveram bons rendimentos por causa da instância do padrão na aplicação. Utilizando a mesma aplicação não poderemos ter o mesmos tipos de problema ? O desempenho do Padrão não poderá ser prejudicado na mesma forma? Francisco Dantas et. al @ OPUS Group 7 Próximas Atividades Definir um Cronograma Definir quais Padrões serão implementados November 15 FASE 1: padrões pouco entrelaçados FASE 2: seguir as orientações do Nélio Francisco Dantas et. al @ OPUS Group 8