Artefatos >
Conjunto de Artefatos de Análise e Design >
Modelo de Design... >
Classe de Design >
Diretrizes >
Design de Classes em Visual Basic
Diretrizes:
|
|
Este é um resumo das diretrizes de design de classe aplicáveis a um projeto do Visual Basic® que usa o Rational Rose® como ferramenta de modelagem. Essas diretrizes podem ser refinadas posteriormente para que se enquadrem em um ambiente de projeto específico.
Elas são estruturadas de acordo com a Atividade: Design de Classe, apresentando diretrizes específicas para cada etapa dessa atividade. |
Os livros e documentos a seguir são referências para estas diretrizes:
A descrição do Rational Unified Process (RUP) baseia-se na terminologia da UML, o que significa que, em alguns casos, ela precisa ser mapeada para a respectiva terminologia do Visual Basic® e COM. Existe também uma opção no Rational Rose® que pode ser definida para exibir o modelo através da terminologia COM. Quando isso é feito, os seguintes termos são alterados:
|
RUP/UML |
Visual Basic®/COM |
| operação | método |
| parâmetro | argumento |
| atributo | propriedade |
Lembre-se disso ao interpretar as descrições do RUP.
Consulte o arquivo de ajuda suplementar do Rational Rose® denominado "Rose Visual Basic", seção "Reference", subseção "Model to Visual Basic Mapping."
Uma classe de fronteira que represente uma parte da interface do usuário será provavelmente iniciada como um formulário.
Na maioria das vezes, uma classe de fronteira que represente uma interação com sistemas externos indica uma referência a um componente do ActiveX ou a uma DLL. Isso é feito através da declaração de uma variável de objeto ou de um procedimento de DLL, respectivamente. Em seguida, use essa variável ou procedimento para acessar a funcionalidade. Recomendamos que a declaração dessa variável de objeto ou desse procedimento seja feita no mesmo módulo e que o seu uso seja encapsulado dentro desse módulo. Isso localizará as alterações efetuadas na interação externa.
Uma classe de entidade será provavelmente iniciada como uma classe marcada como persistente. Quando essa "classe de dados" for refinada, os scripts de DDL que definem as tabelas de bancos de dados correspondentes poderão ser gerados (consulte abaixo "Como Lidar com a Persistência").
Uma classe de controle provavelmente será iniciada como um módulo de classe.
Defina os métodos em Visual Basic em termos de subrotinas (sub), funções e propriedades dos procedimentos.
Para obter detalhes, consulte o arquivo de ajuda suplementar do Rational Rose® denominado "Rose Visual Basic", seção "Reference", subseção "Model to Visual Basic Mapping", subseção "Method Mappings".
Para obter as diretrizes de nomeação de métodos, consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Programming with Objects", subseção "Naming Properties, Methods, and Events".
Observação: "Projetar atributos" significa "definir propriedades de classe" em um contexto do Visual Basic®.
No Rational Rose, as propriedades de classe são convertidas em membros de dados. Por padrão, o Rational Rose® não gera os procedimentos Get, Set e Let correspondentes a cada propriedade. Uma propriedade de modelo permite que o usuário ative a geração automática dos procedimentos de propriedade.
Para obter detalhes, consulte o arquivo de ajuda suplementar do Rational Rose® denominado "Rose Visual Basic", seção "Reference", subseção "Model to Visual Basic Mapping", subseção "Properties".
Para obter as diretrizes de nomeação de propriedades, consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Programming with Objects", subseção "Naming Properties, Methods, and Events".
As associações são mapeadas para pares de membros de dados no Visual Basic®. O nome de cada membro de dados é extraído do seu papel de associação correspondente.
Você pode usar as associações - e agregações (consulte a seguir) - para criar os chamados "modelos de objeto" no Visual Basic®. Consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Programming with Objects", subseção "Object Models".
No Rational Rose, as associações podem ser descritas em detalhes através da atribuição de vários adornos e propriedades. Esses adornos incluem direção da associação, papéis, multiplicidade, navegabilidade, agregação, acesso, confinamento, documentação e restrições de papéis, classes de associação e qualificadores.
Para obter detalhes, consulte o arquivo de ajuda suplementar do Rational Rose® denominado "Rose Visual Basic", seção "Reference", subseção "Model to Visual Basic Mapping", subseção "Relationships", subseção "Association Relationship and Advanced Relationship Mappings".
Um relacionamento de agregação é conceitualmente o mesmo que uma associação com o conjunto de adornos de agregação. No Rose, os adornos de agregação não surtem nenhum efeito sobre a geração de códigos nem sobre a engenharia reversa. Além disso, a associação de agregação pode ser navegada nas duas extremidades. Os membros de dados são gerados para cada uma das classes associadas.
Dependendo do tipo de agregação, você deve esclarecer o design da seguinte maneira:
Para obter detalhes, consulte o arquivo de ajuda suplementar do Rational Rose® denominado "Rose Visual Basic", seção "Reference", subseção "Model to Visual Basic Mapping", subseção "Relationships", subseção "Aggregation Relationship and Advanced Relationship Mappings".
No Visual Basic®, a correspondência mais próxima ao relacionamento de generalização é a construção implements. Desse modo, para um relacionamento de generalização entre uma subclasse B e uma superclasse A, o Rational Rose® gera o seguinte código no módulo de classe da subclasse B:
· Uma declaração Implements A
· Um objeto da superclasse
· Cópias dos métodos públicos da superclasse A, incluindo as implementações padrão de distribuição delegadas à classe pai A
Para obter detalhes, consulte o arquivo de ajuda suplementar do Rational Rose® denominado "Rose Visual Basic", seção "Reference", subseção "Model to Visual Basic Mapping", subseção "Generalization Relationship".
Para obter informações sobre a construção implements, consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Programming with Objects", subseção "Polymorphism".
Declare, amplie e manipule os eventos correspondentes.
Para obter detalhes, consulte o arquivo de ajuda suplementar do Rational Rose® denominado "Rose Visual Basic", seção "Reference", subseção "Model to Visual Basic Mapping", subseção "Events".
Para obter as diretrizes de nomeação de eventos, consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Programming with Objects", subseção "Naming Properties, Methods, and Events".
Os métodos (UML) podem ser especificados na guia Semântica da especificação de método (VB) no Rational Rose. O pseudocódigo ou código de implementação de métodos (UML) será gerado por código como um comentário dentro do método correspondente no Visual Basic®. Esse comentário poderá então ser usado como ponto de partida para a implementação de métodos (VB). Comece removendo as "marcas de comentário".
O Rational Rose® não suporta a geração de códigos em máquinas de estado. No entanto, você deve ainda definir máquinas de estado no Rational Rose® se os objetos de uma classe revelarem comportamentos interessantes controlados por estado. Assim, você estará fornecendo informações valiosas para o implementador da classe.
Consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seções "Creating a User Interface and Using Visual Basic's Standard Controls".
Consulte também Diretrizes: Interface do Usuário (Geral) para obter mais informações sobre como criar interfaces de usuário.
Consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Programming with Components".
Consulte também o arquivo de ajuda suplementar do Rational Rose®, "Rose Visual Basic", seção "How to...", subseção "Add Existing Software Components to a Model" para obter detalhes.
Consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Debugging Your Code and Handling Errors".
Consulte também o arquivo de ajuda suplementar do Rational Rose®, "Rose Visual Basic", seção "How to...", subseção "Generate Visual Basic Code", subseção "Generating Error Handling Code".
Consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Accessing Data".
Se você estiver usando a edição Professional/Enterprise do Visual Basic, consulte também o "Guide to Data Access Objects".
Além disso, consulte Atividade: Design de Banco de Dados para obter mais informações sobre persistência.
Consulte também o arquivo de ajuda suplementar do Rational Rose®, "Rational Rose", seção "Concepts", subseção "DDL Code Generation" para obter informações sobre como gerar código DDL.
Consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "Designing for Performance and Compatibility".
Consulte o "Visual Basic® Programmer's Guide", parte 2: "What Can You Do With Visual Basic?", seção "International Issues"
.
|
Rational Unified Process |