É relativamente fácil implementar um projeto orientado a
objetos -- definido tal como as recomendações do
Capítulo -- com uma linguagem orientada
a objetos, uma vez que as construções são semelhantes.
O primeiro passo na implementação de um projeto orientado a objetos é a declaração de classes. O mapeamento entre a representação de classes, tal como no modelo de objetos do OMT, e uma declaração de classe C ++ deve ser trivial -- o nome da classe está presente, assim como seus atributos e métodos. Da mesma forma, o diagrama apresenta o relacionamento entre classes bases e derivadas, permitindo implementar o mecanismo de herança de C ++ com um mapeamento direto.
O passo mais complexo é a representação de associações. C ++, como a maior parte das linguagens de programação orientadas a objetos, não suporta o conceito de ``objeto associação'' diretamente. Desta forma, associações devem ser mapeadas em termos de outras construções da linguagem -- tipicamente, apontadores para classes como membros de outras classes. Entretanto, a fim de se manter a consistência entre apontadores bidirecionais, é necessário utilizar o mecanismo de amizade em C ++.
Compiladores C ++ geralmente incluem uma biblioteca de classes genéricas, que podem ser utilizadas para agilizar o desenvolvimento da aplicação, promovendo reuso e uniformidade de código. Exemplos de classes usualmente fornecidas nestas bibliotecas incluem estruturas de dados tais como conjuntos, arranjos, listas, filas, pilhas, dicionários, árvores e assim por diante. Estas classes, normalmente chamadas de classes container, servem como um framework para organizar coleções de outros objetos.
Outra facilidade que tem surgido com frequência é a utilização de ferramentas CASE6.1, que permitem especificar um projeto de acordo com alguma metodologia (por exemplo, OMT) e a partir desta especificação gerar documentação e esqueletos de código C ++ contendo todas as declarações de classes necessárias -- cabe ao implementador definir os métodos associados.
O seguinte segmento ilustra um trecho do manual de uma destas ferramentas CASE, de nome OOD:
[...]
Correntemente, OOD tem as seguintes funções primárias:
[...]
Há atualmente uma grande variedade de ferramenta CASE disponível no mercado, com funcionalidades e preços abrangendo uma grande faixa -- desde sistemas em domínio público até sistemas de dezenas de milhares de dólares.