Planta

Disponível somente no TrabalhosFeitos
  • Páginas : 5 (1122 palavras )
  • Download(s) : 0
  • Publicado : 19 de abril de 2011
Ler documento completo
Amostra do texto
TUTORIAL:
"C++ COMO UMA LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS."
Copyright © 1996
PROGRAMAÇÃO ORIENTADA A OBJETOS
Este tutorial se propõe a ensinar programação orientada a objetos em C++. A maioria dos livros não apresenta a linguagem nesse contexto, dando uma atenção maior para os recursos de C++ do que para a metodologia de programação. É recomendável que o leitor tenha acesso a umdesses livros visto que não ensinaremos aqui aspectos considerados básicos que são em geral quase todos que permitem usar C++ como um C melhorado. Você pode usar C++, como uma linguagem procedural com recursos avançados, mais uma vez não é isso que pretendemos ensinar neste texto.
Na prática de programação orientada a objetos estaremos atentos em nossos programas para pontos como:-Compatibilidade, portabilidade.
-Segurança.
-Reusabilidade.
-Facilidade de integração.
-Facilidade de extensão.
-Eficiência.
Os tópicos seguintes nos guiarão nesses objetivos, mostrando numa curva de aprendizado suave, como programar usando orientação a objetos em C++.
1. CLASSES E OBJETOS
Uma classe é um tipo definido pelo usuário que contém o molde, a especificação para os objetos, assim como o tipointeiro contém o molde para as variáveis declaradas como inteiros. A classe envolve, associa, funções e dados, controlando o acesso a estes, definí-la implica em especificar os seus atributos (dados) e suas funções membro (código).
Um programa que utiliza uma interface controladora de um motor elétrico provavelmente definiria a classe motor. Os atributos desta classe seriam: temperatura,velocidade, tensão aplicada. Estes provavelmente seriam representados na classe por tipos como float ou long . As funções membro desta classe seriam funções para alterar a velocidade, ler a temperatura, etc.
Um programa editor de textos definiria a classe parágrafo que teria como um de seus atributos uma string ou um vetor de strings, e como funções membro, funções que operam sobre estas strings. Quando umnovo parágrafo é digitado no texto, o editor cria a partir da classe parágrafo um objeto contendo as informações particulares do novo texto. Isto se chama instanciação ou criação do objeto.
Classes podem ser declaradas usando a palavra reservada struct ou a palavra reservada class, nos exemplos posteriores entraremos em mais detalhes. As classes do próximo tópico 1.2 são declaradas com structpor razões didáticas. Quando chegarmos em encapsulamento 1.3 mostraremos como declarar classes com class e não usaremos mais struct no tutorial.
1.1. ESPECIFICANDO UMA CLASSE
Suponha um programa que controla um motor elétrico através de uma saída serial. A velocidade do motor é proporcional a tensão aplicada, e esta proporcional aos bits que vão para saída serial e passando por um conversordigital analógico.
Vamos abstrair todos estes detalhes por enquanto e modelar somente a interface do motor como uma classe, a pergunta é que funções e que dados membro deve ter nossa classe, e que argumentos e valores de retorno devem ter essas funções membro:
Representação da velocidade:
A velocidade do motor será representada por um atributo, ou dado membro, inteiro (int). Usaremos a faixa de bitsque precisarmos, caso o valor de bits necessário não possa ser fornecido pelo tipo , usaremos então o tipo long , isto depende do conversor digital analógico utilizado e do compilador.
Representação da saída serial:
O motor precisa conhecer a sua saída serial, a sua ligação com o "motor do mundo real". Suponha uma representação em hexadecimal do atributo endereço de porta serial, um possívelnome para o atributo: enderecomotor. Não se preocupe em saber como usar a representação hexadecimal.
Alteração do valor da velocidade:
Internamente o usuário da classe motor pode desejar alterar a velocidade, cria-se então o método ( em C++ função membro): void altera_velocidade(int novav); . O código anterior corresponde ao cabeçalho da função membro, ela é definida junto com a classe motor,...
tracking img