Escolar Documentos
Profissional Documentos
Cultura Documentos
MINISTÉRIO DA EDUCAÇÃO
GOVERNO PROVINCIAL DE LUANDA
INSTITUTO TÉCNICO MÉDIO LUIZA ANDALUZ (IMTLA)
TEMA:
Docente
___________________________
GRUPO Nº 4
CURSO: INFORMÁTICA
TURNO: TARDE
TURMA: B
CLASSE: 11ª
SALA: 7
MEMBROS DO GRUPO:
Nº NOME NOTA
N 19 Josimar Antônio
N 20 Júlia Carlos
N 21 Manuel Da Silva
N 22 Marinela Manuel
N 23 Matilde Job
N 29 Regina Quitoco
Docente
___________________________
Expresamos a nossa gratidão a Deus por ter nos dado a chance de chegar até aqui e
concluir este trabalho. Agradecer a equipe de trabalhho, aos nossos colegas e professores que
tem nos apoiado e que nos incentivam durante este processo de produção do nosso aprendisa-
do.
4
Introdução
5
Fundamentação Teórica
Alan Kay pensou em como contruir um sistema de software a partir de agentes autô-
nomos que interagissem entre si, estabelecendo principios de que, para a orientação objectos
qualquer coisa é um ojecto, um objeto realizaria tarefas através de requisições de serviços,
cada objecto pertence a uma determinada classe, uma classe agrupa objectos similares, uma
classe possui comportamentos associados ao objecto e as classes são organizada em hierar-
quia.
Os atributos e métodos podem ser referentes a uma classe (e todas as suas instâncias)
ou a uma única instância. O vínculo dos atributos aos métodos, é de forma a manter uma
interface bem definida para operação sobre os dados, e a evitar corrupção dos dados, isto é
chamado de encapsulamento. O encapsulamento é responsável pelo conceito de ocultamento
de dados central para a POO.
6
Quando um objeto contém outros objetos, diz-se que há composição de
objetos. A composição de objetos é usada para representar uma relação entre classes.
✓ Reutilização de códigos
✓ Modularidade no desenvolvimento
Isto é anslizar coisas que já existem, pegar algo real e transformar em uma
ideia para uso vivtual.
7
Caracteristicas da POO
Classe
Classes Abstratas
É um tipo de classe especial que não pode ser instanciada, apenas herdada. Sendo
assim, uma classe abstrata não pode ter um objeto criado a partir de sua instanciação. Essas
classes são muito importantes quando não queremos criar um objeto a partir de uma classe
“geral”, apenas de suas “subclasses”.
Imagine que possuímos três classes (Conta, Conta Corrente e Conta Poupança), sendo
a classe Conta uma classe “geral” (comumente chamada de classe “pai”). Ao ir em um banco,
nós não criamos uma nova Conta, mas sim uma Conta Corrente ou uma Conta Poupança.
Sendo assim, não faz sentido que a classe Conta possa ser instanciada, já que é um
erro na regra de negócio caso isso ocorra. É aí que entra o termo “abstrato” desse tipo de
classe, por não haver a necessidade de criar objetos com base em uma classe “pai”, não há
porquê ela permitir a instanciação de novos objetos.
Agora, ao invés de criarmos um objeto do tipo Conta, só será permitido a criação de
objetos do tipo Conta Corrente ou Conta Poupança, o que faz mais sentido.
8
Por não permitir a instanciação de novos objetos com base em uma classe
abstrata, este tipo de classe é utilizada para implementar o conceito de Herança da OO.
Ou seja, as classes abstratas irão armazenar atributos e métodos comuns às classes que
a irão herdar, permitindo um maior reaproveitamento de código.
Objetos
Um objeto é algo que pode ser manipulado, é criado a partir de uma classe
através do processo de programação chamado instanciamento (instanciar um
objeto), onde os objetos são operados com o conceito de 'this' (isto) ou 'self' (si), de
forma que seus métodos muitas vezes modifiquem os dados da própria instância, que
também define o tipo do objeto. Cada classe determina o comportamento (definido
nos métodos) e estados possíveis (atributos) de seus objetos, assim como o
relacionamento com outros objetos.
Atributos
9
Métodos
Assim, os métodos são as ações que o objeto pode realizar. Tudo o que o objeto faz é
através de seus métodos, pois é através dos seus métodos que um objeto se manifesta, através
deles que o objeto interage com os outros objetos.
Os métodos mais utilizados, que inclusive geraram em diversas IDEs soluções prontas
para a criação deles são os métodos conhecidos como "Getters and Setters", basicamente são
os métodos utilizados para se obter a informação sobre algum atributo do objeto (getters) e
definir o valor de algum atributo do objeto (setters).
Mensagem
10
Pilares da Programação Orientada a Objeto
Abstração
11
Encapsulamento
Figura 4- Os dados ficam armazenados de uma forma semelhante a uma capsula ou até mes-
mo uma pilha.
13
Suponha o seguinte exemplo escrito em java:
return x + y;
}}
14
Herança
A herança, tal como na vida real, é o processo pelo qual os objetos ganham algumas
das características dos seus pais. Embora, uma classe deva sempre introduzir
comportamento e características próprias, mas através do mecanismo de herança é
possível criar relações entre diferentes classes e reutilizar código. É um mecanismo
muito importante em linguagens POO.
SuperClasse
public class Veiculo {
private string tipo;
public string Tipo {
get { return tipo; }
set { tipo = value; }
}
public Veiculo (string tipoVeiculo)
{
}
this.tipo = tipoVeiculo;
public virtual void Mover() { }
public virtual void Parar() {} 15
}
SubClasse SubClasse
public class Aeronave : Veiculo { using System;
public Aeronave (string tipoVeiculo) namespace Teste
: base(tipoVeiculo) {
{} public class Automovel : Veiculo
public override void Mover() {
{ public Automovel (string
tipoVeiculo)
Console.WriteLine("Decolando a aeronave");
: base(tipoVeiculo)
}
{}
public override void Parar()
public override void Mover()
{
{
Console.WriteLine("Estou aterrisando a aeronave.");
Console.WriteLine("Acelerando o
} veículo");
} }
public override void Parar()
{
Console.WriteLine("Estou
brecando o veículo.");
}
}
}
16
Instanciação de objetos
Instanciação é o processo de leitura ou de especificação de informações, como tipo de
armazenamento e valores para um campo de dados.
// Classe
class Animal
// Atributo
// Construtor
this.especie = especie;
// Execução
// Instâncias
17
Na instanciação de objeto encontramos palavras chaves ou identificadores que servem
para definir e modificar atributos e metods das subclasses, são eles :
18
Linguagens da POO
C++;
C#;
Java;
Object;
pascal;
VB.NET;
Objective-C;
Python;
Figure 8- Linguagens de programação orien-
tadas a objeto.
C++: É uma linguagem de programação open source orientada a objetos,
utilizada tanto como linguagem de máquina quanto para softwares empresariais,
acadêmicos, jogos, edição de imagens, fotos e vídeos.
20
Vantagens da POO
1. Confiável
2. Oportuno
3. Ajustável
4. Extensível
5. Reutilizável
22
Conclusão
A POO está em nosso dia-a-dia facilitando as nossas vidas. Muitas das vezes
estamos desfrutando dos seus benefícios sem mesmo perceber, por exemplo: quando
falamos ao celular, utilizamos o PC e, até mesmo quando estamos fazendo uma
simples compra no supermercado, não temos essa percepção mas, a maioria dos
programas instalados nesses equipamentos foi desenvolvido em linguagem de POO.
23
Referência Bibliográfica
24