SlideShare ist ein Scribd-Unternehmen logo
1 von 44
Downloaden Sie, um offline zu lesen
PROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO
11º ANO
Curso Profissional de Técnico de Gestão e Programação de
Sistemas Informáticos
Prof. Luis Folgado Ferreira
Planificação do Módulo
Módulo 9:Introdução à Programação
Orientada a Objetos
1. Características da Programação
Orientada por Objetos (POO).
2. Conceito de Classe, Atributos, Métodos,
e Eventos.
3. Conceito de Objeto.
4. Conceito de Encapsulamento.
5. Conceito de Visibilidade de Classes,
Métodos e Atributos.
6. Diagramas de Classe.
7. O ambiente de trabalho do Visual C#.
8. Objetos básicos e outras características
básicas da linguagem do Visual C# e
respetivo ambiente de trabalho.
Apresentação dos conteúdos
com o auxílio do quadro e
projetor de vídeo.
Aplicação prática dos
conteúdos expostos através
do desenvolvimento de
programas.
+-30 aulas
 Observação direta
 Fichas de trabalho
 Teste de avaliação
Links Interessantes
• https://msdn.microsoft.com/pt-br/library/cc580626.aspx
Linguagem
Natural
Linguagem
- Máquina
Linguagem
Assembly
(Simbólica)
Linguagem
Alto nível
1 - Linguagem natural
O Português é uma linguagem natural
2 – Linguagem-Máquina
Consiste num conjunto de números binários que somente são
entendidos pela unidade central de processamento e está relacionado com
as características intrínsecas de cada processador (Unidade Aritmética e
Lógica + Unidade de Controlo).
Caracteriza-se por não ter qualquer tipo de ambiguidade, ou seja,
a interpretação das instruções é única.
Os verdadeiros programadores
programam em binário
3 – Linguagem Assembly
No inicio dos anos 50 criou-se este tipo de linguagem com o
objectivo de aliviar o trabalho do programador.
A linguagem assembly é apenas uma variante da linguagem
máquina, em que os nomes e os símbolos substituem códigos das
instruções, valores e endereços de memória.
Não existem linguagens Assembly universais.
Cada processador usa a sua linguagem.
LOAD @R1, 0
JMP @R1
O Assembler é um programa que converte a linguagem Assembly
na sua forma binária e armazena o resultado numa memória externa para
posterior utilização.
4 - Linguagem de Programação de Alto-Nível
Linguagem de alto nível está muito mais próxima do programador do
que do dispositivo, ou seja, é uma linguagem muito mais intuitiva.
Sem as ambiguidades e imprecisões de uma linguagem natural, mas
não tão penosa de utilizar como a linguagem máquina, exemplo:
if (x == 1)
System.out.println(“X é igual a 1”);
Tradução:
Caso a variável x contenha neste momento o valor 1,
escreve no monitor a frase: X é igual a 1
5 – Vantagens de linguagens de Alto-Nível
• Especificação de muitas instruções de forma abreviada.
• Portáveis - Podem ser usadas em computadores diferentes com
poucas modificações.
• Custos de reprogramação menores.
• Mais fáceis de aprender.
• Menos tempo a escrever.
• Providenciam melhor documentação.
• Detectar erros durante a implementação.
Sumário
• Módulo 9:Introdução à Programação Orientada a
Objetos
• Continuação do estudo das caraterísticas da POO.
Características da POO
• a) Organiza os programas de uma forma mais intuitiva e
próxima do mundo real.
Características da POO
• b) Implica que organizemos a nossa visão do mundo e/ou de
um problema em termos de objetos, dos seus atributos e
operações.
Características da POO
• c) Um programa é visto como um conjunto de
objetos que cooperam entre si e trocam
mensagens (pedidos/chamadas e
respostas/devoluções) para resolver um problema.
Características da POO
• d) Um objecto é o dono dos seus dados. Sempre que é
necessário operar sobre estes dados faz-se através de uma
operação da classe a que este pertence
Características da POO
• e) Aumenta os mecanismos de abstração da linguagem,
providenciando maior flexibilidade, modularidade, clareza,
reutilização e robustez.
O que é Programação Orientada a Objetos?
POO (oop em inglês) é uma forma especial de programar na qual se utiliza a criação de
objetos de como expressaríamos as coisas na vida real.
Com a POO temos que aprender a pensar de uma maneira distinta.
Temos que desenvolver nossos programas em termos de classes, objetos,
propriedades, métodos, etc…
O
Quase todas as linguagens já existentes foram modificadas para suportar o
paradigma OO.
Algumas foram originalmente desenhadas para suporte deste paradigma
(JAVA). Por vezes são designadas OO puras.
Durante anos, os programadores dedicaram-se a construir aplicações muito parecidas
que resolviam geralmente, os mesmo problemas.
Para conseguir que os esforços dos programadores possam ser utilizados por outras
pessoas foi criado a POO.
Esta é uma série de normas que ajudam a uniformizar a programação de maneira a
que outras pessoas possam utilizá-las e adiantar seu trabalho (Reutilizar o código).
Então o que é uma Classe e um
Objeto?
• Uma definição de classe ou de estrutura é como um modelo
que especifica o que o tipo pode fazer.
• Um objeto é basicamente um bloco de memória que foi
atribuído e configurado de acordo com o modelo.
• Um programa pode criar vários objetos da mesma classe. Os
objetos são chamados também instâncias, e podem ser
armazenados em uma variável chamada ou matriz ou na
coleção.
Então o que é uma Classe e um Objeto?
• O código do cliente é o código que usa essas variáveis para
chamar os métodos e para aceder as propriedades públicas do
objeto.
• Em uma linguagem orientada a objeto como C#, um programa
típico consiste em vários objetos que interagem
dinamicamente.
Classes
• Dados e operações sobre esses dados são
modularizados dentro de uma única entidade,
a que se chama classe.
• Então o que é uma classe?
A POO não é difícil, mas é uma forma especial de
pensar, na maior parte das vezes depende de quem
a programa.
O que leva a que existam várias formas diferentes
de programar. Embora possamos fazer os
programas de formas distintas, nem todas elas são
corretas, o difícil não é programar orientado a
objetos, mas sim, programar bem.
Programar bem é bastante importante porque
assim podemos aproveitar todas as vantagens da
POO.
Carro
- Cor
- Modelo
- Marca
Andar()
Parar()
Estacionar()
Pensar em termos de objetos é muito parecido a como faríamos na vida real.
Por exemplo, vamos pensar num carro. Diríamos que o carro é o elemento principal
que tem uma série de características (cor, modelo ou marca).
Além das características o carro também tem uma série de funcionalidades
associadas (andar, parar ou estacionar).
CLASSE
PROPRIEDADES
OBJECTO
MÉTODOS
VISIBILIDADES
POLIMORFISMO
EVENTOS
HERANÇA
ENCAPSULAMENTO
Uma classe representa todos os potenciais objectos que partilham
um conjunto de atributos e operações (e.g. Carro).
 Independência do contexto e modularidade (reutilização)
 Abstracção (ao nível dos dados e operações sobre estes)
 Encapsulamento (protecção contra alterações)
Carro
- matricula: int
- modelo: String
- ano: int
- última_inspeção: int
+ últimaInspecção(): int
+ idade(): int
+ próximaInspeção(): int
+ inspeccionado()
OBJECTO
(1) Instância de uma classe;
(2) É criado e manipulado durante a execução do programa;
(3) Tem identidade e valores específicos para os seus atributos.
Os objectos são exemplares de uma classe qualquer.
Quando criamos um exemplar temos que especificar a classe a
partir da qual se criará
O meu_carro: Carro
matricula: 00-AA-00
modelo: VW-GTI-TDI-SLK
ano: 2005
última_inspeção: 2005
últimaInspecção(): int
idade(): int
próximaInspeção(): int
inspeccionado()
Um objecto da classe Carro define
uma variável única com um conjunto
de valores específicos que definem o
seu estado.
Um objecto representa uma entidade no mundo real que pode ser
distintamente identificada (e.g. o meu carro)
Identificador único (a sua referência)
Estado interno
Diagramas de Classes
• Os diagramas de classes, visões lógicas e
físicas e o relacionamento entre objetos de
uma solução são “desenhados em diagramas”.
• É uma representação da estrutura estática de
um sistema, em termos de classes e da sua
relação.
• A sua imagem na forma mais simples está
demonstrada na figura:
Diagramas de Classes
• As questões de visibilidade de atributos e operadores estão
explicados na figura:
Diagrama de Classes
PROPRIEDADES
• As propriedades ou atributos são as características dos objectos.
• Quando definimos uma propriedade normalmente especificamos seu
nome e seu tipo.
As propriedades são as variáveis onde armazenamos
os dados relativos aos objectos.
VISIBILIDADES
OS MEMBROS PODEM SER:
• Privados (private)
• Protegidos (protected)
• Públicos (public)
• Estáticas (static)
MÉTODOS
Os métodos são como funções que estão associadas a um objecto.
As operações correspondem a métodos (também designados como rotinas)
que podem ser funções ou procedimentos
Os procedimentos (que alteram o estado do objecto) chamam-se
modificadores
As funções (que não alteram o estado do objecto) chamam-se inspectores
É boa politica (em geral) não incluir modificação e inspecção no mesmo
método
Os métodos que definem a inicialização dos atributos (variáveis-membro) da
classe chamam-se construtores
 PRIVADOS (private)
(variáveis-membro da classe e operações internas)
• As variáveis Private estão apenas disponíveis no módulo em que
foram definidas.
• Utilizar a palavra-chave Private para definir a variável.
• O modificador de acesso "private" quando aplicado a um atributo
ou a um método indica que os mesmos só podem ser acedidos de
dentro da classe que os criou (encapsulamento).
• Uma classe que herde de uma superclasse com atributos
declarados como "private" só poderá ter acesso a eles através dos
métodos públicos da própria superclasse, caso contrário, não haverá
acesso a estes atributos.
 Protegidos (protected)
A instrução protected indica que o método ou a variável assim declarada
possa ser acedida somente dentro do pacote em que está contida através
de uma subclasse.
 Públicos (public)
(operações a fornecer ao exterior e constantes)
A instrução public indica que a classe, método ou variável assim
declarada possa ser acedida em qualquer lugar e a qualquer momento da
execução do programa.
 Estáticas (static)
A instrução static serve:
na declaração de uma variável dentro de uma classe, para se criar
uma variável que poderá ser acedida por todas as instâncias de objectos
desta classe como um variável comum.
Ou seja,
a variável criada será a mesma em todas instâncias e quando seu conteúdo
é modificado numas das instâncias, o será em todas instâncias;
na declaração de um método que deve ser acedido diretamente na classe e
não nas suas instâncias.
• http://www.javacoffeebreak.com/faq/faq0002.html
EVENTOS
Acção exercida sobre um objecto, e tomada pelo utilizador, sistema
operativo ou pela própria aplicação.
 Um click num botão
 Pressionar de uma tecla
 A expiração de um período de tempo
Exemplos de eventos
Word Choice
• √ DO choose easily readable identifier names.
For example, a property named HorizontalAlignment is more English-readable than
AlignmentHorizontal.
• √ DO favor readability over brevity.
The property name CanScrollHorizontally is better than ScrollableX (an obscure
reference to the X-axis).
• X DO NOT use underscores, hyphens, or any other nonalphanumeric characters.
• X DO NOT use Hungarian notation.
• X AVOID using identifiers that conflict with keywords of widely used programming
languages.
Using Abbreviations and Acronyms
• X DO NOT use abbreviations or contractions as part of
identifier names.
• For example, use GetWindow rather than GetWin.
• X DO NOT use any acronyms that are not widely accepted, and
even if they are, only when necessary.
Avoiding Language-Specific Names
• √ DO use semantically interesting names rather than language-specific keywords for type names.
For example, GetLength is a better name than GetInt.
• √ DO use a generic CLR type name, rather than a language-specific name, in the rare cases when an
identifier has no semantic meaning beyond its type.
For example, a method converting to Int64 should be named ToInt64, not ToLong (because Int64 is a CLR
name for the C#-specific alias long). The following table presents several base data types using the CLR
type names (as well as the corresponding type names for C#, Visual Basic, and C++).
* Common Representation Language

Weitere ähnliche Inhalte

Was ist angesagt?

Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoLeinylson Fontinele
 
Ficheiros em C
Ficheiros em CFicheiros em C
Ficheiros em CBaguiasri
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL BásicoIgor Alves
 
Sistema Operacional Windows (versão 11)
Sistema Operacional Windows (versão 11)Sistema Operacional Windows (versão 11)
Sistema Operacional Windows (versão 11)DaviMatos25
 
Conceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de SistemasConceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de SistemasClayton de Almeida Souza
 
Desenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos BásicosDesenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos BásicosFabio Moura Pereira
 
Metodologias de análise e desenvolvimento de sistemas
Metodologias de análise e desenvolvimento de sistemasMetodologias de análise e desenvolvimento de sistemas
Metodologias de análise e desenvolvimento de sistemasSusana Oliveira
 
Módulo 12 - Introdução aos sistemas de informação
Módulo 12 - Introdução aos sistemas de informaçãoMódulo 12 - Introdução aos sistemas de informação
Módulo 12 - Introdução aos sistemas de informaçãoLuis Ferreira
 
Introdução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareIntrodução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareCamilo Ribeiro
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidosGleydson Sousa
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POODaniel Brandão
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Leinylson Fontinele
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareÁlvaro Farias Pinheiro
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPDaniel Brandão
 

Was ist angesagt? (20)

Banco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro BancoBanco de Dados I - Aula Prática - Criando o Primeiro Banco
Banco de Dados I - Aula Prática - Criando o Primeiro Banco
 
Ficheiros em C
Ficheiros em CFicheiros em C
Ficheiros em C
 
Treinamento de SQL Básico
Treinamento de SQL BásicoTreinamento de SQL Básico
Treinamento de SQL Básico
 
Sistema Operacional Windows (versão 11)
Sistema Operacional Windows (versão 11)Sistema Operacional Windows (versão 11)
Sistema Operacional Windows (versão 11)
 
Conceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de SistemasConceitos Básicos Sobre Analise de Sistemas
Conceitos Básicos Sobre Analise de Sistemas
 
Desenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos BásicosDesenvolvimento de Sistemas Web - Conceitos Básicos
Desenvolvimento de Sistemas Web - Conceitos Básicos
 
Sistemas Operativos
Sistemas OperativosSistemas Operativos
Sistemas Operativos
 
Metodologias de análise e desenvolvimento de sistemas
Metodologias de análise e desenvolvimento de sistemasMetodologias de análise e desenvolvimento de sistemas
Metodologias de análise e desenvolvimento de sistemas
 
Módulo 12 - Introdução aos sistemas de informação
Módulo 12 - Introdução aos sistemas de informaçãoMódulo 12 - Introdução aos sistemas de informação
Módulo 12 - Introdução aos sistemas de informação
 
Introdução a Automação de Teste de Software
Introdução a Automação de Teste de SoftwareIntrodução a Automação de Teste de Software
Introdução a Automação de Teste de Software
 
Banco de dados exercícios resolvidos
Banco de dados exercícios resolvidosBanco de dados exercícios resolvidos
Banco de dados exercícios resolvidos
 
Aula 1 - Introdução a POO
Aula 1 -  Introdução a POOAula 1 -  Introdução a POO
Aula 1 - Introdução a POO
 
Tutorial de Microsoft Office Word
Tutorial de Microsoft Office WordTutorial de Microsoft Office Word
Tutorial de Microsoft Office Word
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de Software
 
Redes sociais
Redes sociais Redes sociais
Redes sociais
 
POO - 16 - Polimorfismo
POO - 16 - PolimorfismoPOO - 16 - Polimorfismo
POO - 16 - Polimorfismo
 
Aula 1
Aula 1Aula 1
Aula 1
 
Aula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHPAula 02 - Introdução ao PHP
Aula 02 - Introdução ao PHP
 

Andere mochten auch

Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoMarconi Rodrigues
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a ObjetosEdy Segura
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosLeonardo Melo Santos
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaÁlvaro Farias Pinheiro
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVACristiano Almeida
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetosNécio de Lima Veras
 
Minicurso wxWidgets
Minicurso wxWidgetsMinicurso wxWidgets
Minicurso wxWidgetsRenzo Petri
 
Sistemas Operativos Apple
Sistemas Operativos AppleSistemas Operativos Apple
Sistemas Operativos ApplePedro Peniche
 
Apostila de poo em c++
Apostila de poo em c++Apostila de poo em c++
Apostila de poo em c++Lindomar ...
 
Linguagens de programação 12º M11
Linguagens de programação 12º M11Linguagens de programação 12º M11
Linguagens de programação 12º M11Luis Ferreira
 
Configuração de dispositivos de io
Configuração de dispositivos de ioConfiguração de dispositivos de io
Configuração de dispositivos de ioLuis Ferreira
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – IIGabriel Faustino
 
Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...
Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...
Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...Natanael Simões
 
Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)Luis Ferreira
 
Comunicação de dados - Módulo 1
Comunicação de dados - Módulo 1Comunicação de dados - Módulo 1
Comunicação de dados - Módulo 1Luis Ferreira
 

Andere mochten auch (20)

Introdução a programação Orientada a Objeto
Introdução a programação Orientada a ObjetoIntrodução a programação Orientada a Objeto
Introdução a programação Orientada a Objeto
 
Orientação a Objetos
Orientação a ObjetosOrientação a Objetos
Orientação a Objetos
 
Programação Orientado a Objetos
Programação Orientado a ObjetosProgramação Orientado a Objetos
Programação Orientado a Objetos
 
Conceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetosConceitos básicos de programação orientada a objetos
Conceitos básicos de programação orientada a objetos
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001Programação Orientada a Objetos - 001
Programação Orientada a Objetos - 001
 
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVAProgramação Orientada a Objetos - Conceitos básicos da linguagem JAVA
Programação Orientada a Objetos - Conceitos básicos da linguagem JAVA
 
O paradigma da orientação a objetos
O paradigma da orientação a objetosO paradigma da orientação a objetos
O paradigma da orientação a objetos
 
Minicurso wxWidgets
Minicurso wxWidgetsMinicurso wxWidgets
Minicurso wxWidgets
 
JRebel para desenvolvedores
JRebel para desenvolvedoresJRebel para desenvolvedores
JRebel para desenvolvedores
 
Sistemas Operativos Apple
Sistemas Operativos AppleSistemas Operativos Apple
Sistemas Operativos Apple
 
Apostila de poo em c++
Apostila de poo em c++Apostila de poo em c++
Apostila de poo em c++
 
ticEduca2016
ticEduca2016ticEduca2016
ticEduca2016
 
Linguagens de programação 12º M11
Linguagens de programação 12º M11Linguagens de programação 12º M11
Linguagens de programação 12º M11
 
Configuração de dispositivos de io
Configuração de dispositivos de ioConfiguração de dispositivos de io
Configuração de dispositivos de io
 
Programação orientada a objetos – II
Programação orientada a objetos – IIProgramação orientada a objetos – II
Programação orientada a objetos – II
 
Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...
Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...
Processo de Desenvolvimento de Software - Programação e Linguagens Fortemente...
 
Sessão 2 app
Sessão 2 appSessão 2 app
Sessão 2 app
 
Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)Unidade 2 - Processador de texto (Aula 1 e 2)
Unidade 2 - Processador de texto (Aula 1 e 2)
 
Comunicação de dados - Módulo 1
Comunicação de dados - Módulo 1Comunicação de dados - Módulo 1
Comunicação de dados - Módulo 1
 

Ähnlich wie POO e Classes

Reutilização
ReutilizaçãoReutilização
Reutilizaçãoemjorge
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaCharles Jungbeck
 
Modelagem de sistemas
Modelagem de sistemasModelagem de sistemas
Modelagem de sistemassauloroos01
 
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) Grupo Treinar
 
Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Jhonefj
 
Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Marcelo Zeferino
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-conceptsjorge600
 
Potfólio de Evidências
Potfólio de EvidênciasPotfólio de Evidências
Potfólio de EvidênciasPaulo Sateles
 
DDD e PHP - TDC 2012
DDD e PHP - TDC 2012DDD e PHP - TDC 2012
DDD e PHP - TDC 2012Luís Cobucci
 
Poo apostila visual c
Poo apostila visual cPoo apostila visual c
Poo apostila visual cFabiano Lima
 
Intro oca,ocp 6 & 7, oo basics
Intro   oca,ocp 6 & 7, oo basicsIntro   oca,ocp 6 & 7, oo basics
Intro oca,ocp 6 & 7, oo basicsJuarez Junior
 
POO2-Pre-32-PadroesProjetos_.pdf
POO2-Pre-32-PadroesProjetos_.pdfPOO2-Pre-32-PadroesProjetos_.pdf
POO2-Pre-32-PadroesProjetos_.pdfAndreCosta502039
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetosPaulo Carvalho
 

Ähnlich wie POO e Classes (20)

Reutilização
ReutilizaçãoReutilização
Reutilização
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e Java
 
Modelagem de sistemas
Modelagem de sistemasModelagem de sistemas
Modelagem de sistemas
 
Análise de sistemas oo 1
Análise de sistemas oo   1Análise de sistemas oo   1
Análise de sistemas oo 1
 
Aula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptxAula01-IntroducaoOO.pptx
Aula01-IntroducaoOO.pptx
 
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO) CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
CURSO DELPHI FUND. CLIENT SERVER (DIURNO)
 
Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02Umlv4 090813182632-phpapp02
Umlv4 090813182632-phpapp02
 
Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1Apresentação curso de Extensão em Java (UERJ-IME) v1
Apresentação curso de Extensão em Java (UERJ-IME) v1
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-concepts
 
Potfólio de Evidências
Potfólio de EvidênciasPotfólio de Evidências
Potfólio de Evidências
 
3 oo-concepts
3 oo-concepts3 oo-concepts
3 oo-concepts
 
DDD e PHP - TDC 2012
DDD e PHP - TDC 2012DDD e PHP - TDC 2012
DDD e PHP - TDC 2012
 
Domain-Driven Design
Domain-Driven DesignDomain-Driven Design
Domain-Driven Design
 
Padrões de Projeto de Software
Padrões de Projeto de SoftwarePadrões de Projeto de Software
Padrões de Projeto de Software
 
Poo apostila visual c
Poo apostila visual cPoo apostila visual c
Poo apostila visual c
 
Intro oca,ocp 6 & 7, oo basics
Intro   oca,ocp 6 & 7, oo basicsIntro   oca,ocp 6 & 7, oo basics
Intro oca,ocp 6 & 7, oo basics
 
POO2-Pre-32-PadroesProjetos_.pdf
POO2-Pre-32-PadroesProjetos_.pdfPOO2-Pre-32-PadroesProjetos_.pdf
POO2-Pre-32-PadroesProjetos_.pdf
 
Poo frank
Poo frankPoo frank
Poo frank
 
Reuso desw
Reuso deswReuso desw
Reuso desw
 
Java programação orientada a objetos
Java   programação orientada a objetosJava   programação orientada a objetos
Java programação orientada a objetos
 

Mehr von Luis Ferreira

IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)
IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)
IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)Luis Ferreira
 
1º Congresso Nacional de Professores de Informática 2015
1º Congresso Nacional de Professores de Informática 20151º Congresso Nacional de Professores de Informática 2015
1º Congresso Nacional de Professores de Informática 2015Luis Ferreira
 
Módulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresMódulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresLuis Ferreira
 
Arquitetura de computadores Módulo 4
Arquitetura de computadores Módulo 4Arquitetura de computadores Módulo 4
Arquitetura de computadores Módulo 4Luis Ferreira
 
Projeto de Investigação do Curso de Doutoramento
Projeto de Investigação do Curso de DoutoramentoProjeto de Investigação do Curso de Doutoramento
Projeto de Investigação do Curso de DoutoramentoLuis Ferreira
 
Novos professores nas escolas.
Novos professores nas escolas.Novos professores nas escolas.
Novos professores nas escolas.Luis Ferreira
 
Informação digital na gestão e organização escolar
Informação digital na gestão e organização escolarInformação digital na gestão e organização escolar
Informação digital na gestão e organização escolarLuis Ferreira
 
Plano de Comunicação Digital e Gestão Educacional
Plano de Comunicação Digital e Gestão EducacionalPlano de Comunicação Digital e Gestão Educacional
Plano de Comunicação Digital e Gestão EducacionalLuis Ferreira
 
Plano de Comunicação e Gestão Educacional (Pré-Projeto)
Plano de Comunicação e Gestão Educacional (Pré-Projeto)Plano de Comunicação e Gestão Educacional (Pré-Projeto)
Plano de Comunicação e Gestão Educacional (Pré-Projeto)Luis Ferreira
 
Linguagens de programação 12º M12
Linguagens de programação 12º M12Linguagens de programação 12º M12
Linguagens de programação 12º M12Luis Ferreira
 
Redes de Comunicação 11º M11 - TGPSI
Redes de Comunicação 11º M11 - TGPSIRedes de Comunicação 11º M11 - TGPSI
Redes de Comunicação 11º M11 - TGPSILuis Ferreira
 
Redes de Comunicação 11º M1 - TGPSI
Redes de Comunicação 11º M1 - TGPSIRedes de Comunicação 11º M1 - TGPSI
Redes de Comunicação 11º M1 - TGPSILuis Ferreira
 
Apresentação da Dissertação
Apresentação da DissertaçãoApresentação da Dissertação
Apresentação da DissertaçãoLuis Ferreira
 

Mehr von Luis Ferreira (17)

IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)
IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)
IMEI Módulo 8 (Curso profissional de Gestão de Equipamentos Informáticos)
 
Modulo 15 PSI
Modulo 15 PSIModulo 15 PSI
Modulo 15 PSI
 
1º Congresso Nacional de Professores de Informática 2015
1º Congresso Nacional de Professores de Informática 20151º Congresso Nacional de Professores de Informática 2015
1º Congresso Nacional de Professores de Informática 2015
 
Psi m14
Psi m14Psi m14
Psi m14
 
Módulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de ComputadoresMódulo 5 Arquitetura de Computadores
Módulo 5 Arquitetura de Computadores
 
Arquitetura de computadores Módulo 4
Arquitetura de computadores Módulo 4Arquitetura de computadores Módulo 4
Arquitetura de computadores Módulo 4
 
Projeto de Investigação do Curso de Doutoramento
Projeto de Investigação do Curso de DoutoramentoProjeto de Investigação do Curso de Doutoramento
Projeto de Investigação do Curso de Doutoramento
 
Novos professores nas escolas.
Novos professores nas escolas.Novos professores nas escolas.
Novos professores nas escolas.
 
Informação digital na gestão e organização escolar
Informação digital na gestão e organização escolarInformação digital na gestão e organização escolar
Informação digital na gestão e organização escolar
 
Plano de Comunicação Digital e Gestão Educacional
Plano de Comunicação Digital e Gestão EducacionalPlano de Comunicação Digital e Gestão Educacional
Plano de Comunicação Digital e Gestão Educacional
 
Plano de Comunicação e Gestão Educacional (Pré-Projeto)
Plano de Comunicação e Gestão Educacional (Pré-Projeto)Plano de Comunicação e Gestão Educacional (Pré-Projeto)
Plano de Comunicação e Gestão Educacional (Pré-Projeto)
 
Leadership Starratt
Leadership StarrattLeadership Starratt
Leadership Starratt
 
Linguagens de programação 12º M12
Linguagens de programação 12º M12Linguagens de programação 12º M12
Linguagens de programação 12º M12
 
Redes de Comunicação 11º M11 - TGPSI
Redes de Comunicação 11º M11 - TGPSIRedes de Comunicação 11º M11 - TGPSI
Redes de Comunicação 11º M11 - TGPSI
 
Redes de Comunicação 11º M1 - TGPSI
Redes de Comunicação 11º M1 - TGPSIRedes de Comunicação 11º M1 - TGPSI
Redes de Comunicação 11º M1 - TGPSI
 
SDAC 12º - M9 TGEI
SDAC 12º - M9 TGEISDAC 12º - M9 TGEI
SDAC 12º - M9 TGEI
 
Apresentação da Dissertação
Apresentação da DissertaçãoApresentação da Dissertação
Apresentação da Dissertação
 

Kürzlich hochgeladen

6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptxErivaldoLima15
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira partecoletivoddois
 
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptAlineSilvaPotuk
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...Martin M Flynn
 
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.HildegardeAngel
 
Gametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoGametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoCelianeOliveira8
 
Junto ao poço estava eu Quando um homem judeu Viu a sede que havia em mim
Junto ao poço estava eu Quando um homem judeu Viu a sede que havia em mimJunto ao poço estava eu Quando um homem judeu Viu a sede que havia em mim
Junto ao poço estava eu Quando um homem judeu Viu a sede que havia em mimWashingtonSampaio5
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxkarinasantiago54
 
Mini livro sanfona - Diga não ao bullying
Mini livro sanfona - Diga não ao  bullyingMini livro sanfona - Diga não ao  bullying
Mini livro sanfona - Diga não ao bullyingMary Alvarenga
 
Mini livro sanfona - Povos Indigenas Brasileiros
Mini livro sanfona  - Povos Indigenas BrasileirosMini livro sanfona  - Povos Indigenas Brasileiros
Mini livro sanfona - Povos Indigenas BrasileirosMary Alvarenga
 
Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptxpamelacastro71
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxDeyvidBriel
 
Sistema de Bibliotecas UCS - A descoberta da terra
Sistema de Bibliotecas UCS  - A descoberta da terraSistema de Bibliotecas UCS  - A descoberta da terra
Sistema de Bibliotecas UCS - A descoberta da terraBiblioteca UCS
 
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdforganizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdfCarlosRodrigues832670
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfErasmo Portavoz
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdfProfGleide
 
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTREVACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTREIVONETETAVARESRAMOS
 
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...nexocan937
 
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptxQUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptxAntonioVieira539017
 
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptxAULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptxGislaineDuresCruz
 

Kürzlich hochgeladen (20)

6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx6°ano Uso de pontuação e acentuação.pptx
6°ano Uso de pontuação e acentuação.pptx
 
Dança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parteDança Contemporânea na arte da dança primeira parte
Dança Contemporânea na arte da dança primeira parte
 
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
 
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
DIGNITAS INFINITA - DIGNIDADE HUMANA -Declaração do Dicastério para a Doutrin...
 
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
 
Gametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e femininoGametogênese, formação dos gametas masculino e feminino
Gametogênese, formação dos gametas masculino e feminino
 
Junto ao poço estava eu Quando um homem judeu Viu a sede que havia em mim
Junto ao poço estava eu Quando um homem judeu Viu a sede que havia em mimJunto ao poço estava eu Quando um homem judeu Viu a sede que havia em mim
Junto ao poço estava eu Quando um homem judeu Viu a sede que havia em mim
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
 
Mini livro sanfona - Diga não ao bullying
Mini livro sanfona - Diga não ao  bullyingMini livro sanfona - Diga não ao  bullying
Mini livro sanfona - Diga não ao bullying
 
Mini livro sanfona - Povos Indigenas Brasileiros
Mini livro sanfona  - Povos Indigenas BrasileirosMini livro sanfona  - Povos Indigenas Brasileiros
Mini livro sanfona - Povos Indigenas Brasileiros
 
Aula 1, 2 Bacterias Características e Morfologia.pptx
Aula 1, 2  Bacterias Características e Morfologia.pptxAula 1, 2  Bacterias Características e Morfologia.pptx
Aula 1, 2 Bacterias Características e Morfologia.pptx
 
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptxÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
ÁREA DE FIGURAS PLANAS - DESCRITOR DE MATEMATICA D12 ENSINO MEDIO.pptx
 
Sistema de Bibliotecas UCS - A descoberta da terra
Sistema de Bibliotecas UCS  - A descoberta da terraSistema de Bibliotecas UCS  - A descoberta da terra
Sistema de Bibliotecas UCS - A descoberta da terra
 
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdforganizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
organizaao-do-clube-de-lideres-ctd-aamar_compress.pdf
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdf
 
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do  3ANO fundamental 1 MG.pdfPLANEJAMENTO anual do  3ANO fundamental 1 MG.pdf
PLANEJAMENTO anual do 3ANO fundamental 1 MG.pdf
 
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTREVACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
VACINAR E DOAR, É SÓ COMEÇAR - - 1º BIMESTRE
 
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
Minha Luta (Mein Kampf), A História do País que Lutou contra a União Soviétic...
 
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptxQUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
QUIZ – GEOGRAFIA - 8º ANO - PROVA MENSAL.pptx
 
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptxAULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
AULA-06---DIZIMA-PERIODICA_9fdc896dbd1d4cce85a9fbd2e670e62f.pptx
 

POO e Classes

  • 1. PROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO 11º ANO Curso Profissional de Técnico de Gestão e Programação de Sistemas Informáticos Prof. Luis Folgado Ferreira
  • 2. Planificação do Módulo Módulo 9:Introdução à Programação Orientada a Objetos 1. Características da Programação Orientada por Objetos (POO). 2. Conceito de Classe, Atributos, Métodos, e Eventos. 3. Conceito de Objeto. 4. Conceito de Encapsulamento. 5. Conceito de Visibilidade de Classes, Métodos e Atributos. 6. Diagramas de Classe. 7. O ambiente de trabalho do Visual C#. 8. Objetos básicos e outras características básicas da linguagem do Visual C# e respetivo ambiente de trabalho. Apresentação dos conteúdos com o auxílio do quadro e projetor de vídeo. Aplicação prática dos conteúdos expostos através do desenvolvimento de programas. +-30 aulas  Observação direta  Fichas de trabalho  Teste de avaliação
  • 4.
  • 6. 1 - Linguagem natural O Português é uma linguagem natural
  • 7. 2 – Linguagem-Máquina Consiste num conjunto de números binários que somente são entendidos pela unidade central de processamento e está relacionado com as características intrínsecas de cada processador (Unidade Aritmética e Lógica + Unidade de Controlo). Caracteriza-se por não ter qualquer tipo de ambiguidade, ou seja, a interpretação das instruções é única. Os verdadeiros programadores programam em binário
  • 8. 3 – Linguagem Assembly No inicio dos anos 50 criou-se este tipo de linguagem com o objectivo de aliviar o trabalho do programador. A linguagem assembly é apenas uma variante da linguagem máquina, em que os nomes e os símbolos substituem códigos das instruções, valores e endereços de memória. Não existem linguagens Assembly universais. Cada processador usa a sua linguagem. LOAD @R1, 0 JMP @R1 O Assembler é um programa que converte a linguagem Assembly na sua forma binária e armazena o resultado numa memória externa para posterior utilização.
  • 9. 4 - Linguagem de Programação de Alto-Nível Linguagem de alto nível está muito mais próxima do programador do que do dispositivo, ou seja, é uma linguagem muito mais intuitiva. Sem as ambiguidades e imprecisões de uma linguagem natural, mas não tão penosa de utilizar como a linguagem máquina, exemplo: if (x == 1) System.out.println(“X é igual a 1”); Tradução: Caso a variável x contenha neste momento o valor 1, escreve no monitor a frase: X é igual a 1
  • 10. 5 – Vantagens de linguagens de Alto-Nível • Especificação de muitas instruções de forma abreviada. • Portáveis - Podem ser usadas em computadores diferentes com poucas modificações. • Custos de reprogramação menores. • Mais fáceis de aprender. • Menos tempo a escrever. • Providenciam melhor documentação. • Detectar erros durante a implementação.
  • 11. Sumário • Módulo 9:Introdução à Programação Orientada a Objetos • Continuação do estudo das caraterísticas da POO.
  • 12. Características da POO • a) Organiza os programas de uma forma mais intuitiva e próxima do mundo real.
  • 13. Características da POO • b) Implica que organizemos a nossa visão do mundo e/ou de um problema em termos de objetos, dos seus atributos e operações.
  • 14. Características da POO • c) Um programa é visto como um conjunto de objetos que cooperam entre si e trocam mensagens (pedidos/chamadas e respostas/devoluções) para resolver um problema.
  • 15. Características da POO • d) Um objecto é o dono dos seus dados. Sempre que é necessário operar sobre estes dados faz-se através de uma operação da classe a que este pertence
  • 16. Características da POO • e) Aumenta os mecanismos de abstração da linguagem, providenciando maior flexibilidade, modularidade, clareza, reutilização e robustez.
  • 17. O que é Programação Orientada a Objetos? POO (oop em inglês) é uma forma especial de programar na qual se utiliza a criação de objetos de como expressaríamos as coisas na vida real. Com a POO temos que aprender a pensar de uma maneira distinta. Temos que desenvolver nossos programas em termos de classes, objetos, propriedades, métodos, etc… O Quase todas as linguagens já existentes foram modificadas para suportar o paradigma OO. Algumas foram originalmente desenhadas para suporte deste paradigma (JAVA). Por vezes são designadas OO puras.
  • 18.
  • 19. Durante anos, os programadores dedicaram-se a construir aplicações muito parecidas que resolviam geralmente, os mesmo problemas. Para conseguir que os esforços dos programadores possam ser utilizados por outras pessoas foi criado a POO. Esta é uma série de normas que ajudam a uniformizar a programação de maneira a que outras pessoas possam utilizá-las e adiantar seu trabalho (Reutilizar o código).
  • 20.
  • 21. Então o que é uma Classe e um Objeto? • Uma definição de classe ou de estrutura é como um modelo que especifica o que o tipo pode fazer. • Um objeto é basicamente um bloco de memória que foi atribuído e configurado de acordo com o modelo. • Um programa pode criar vários objetos da mesma classe. Os objetos são chamados também instâncias, e podem ser armazenados em uma variável chamada ou matriz ou na coleção.
  • 22. Então o que é uma Classe e um Objeto? • O código do cliente é o código que usa essas variáveis para chamar os métodos e para aceder as propriedades públicas do objeto. • Em uma linguagem orientada a objeto como C#, um programa típico consiste em vários objetos que interagem dinamicamente.
  • 23. Classes • Dados e operações sobre esses dados são modularizados dentro de uma única entidade, a que se chama classe. • Então o que é uma classe?
  • 24. A POO não é difícil, mas é uma forma especial de pensar, na maior parte das vezes depende de quem a programa. O que leva a que existam várias formas diferentes de programar. Embora possamos fazer os programas de formas distintas, nem todas elas são corretas, o difícil não é programar orientado a objetos, mas sim, programar bem. Programar bem é bastante importante porque assim podemos aproveitar todas as vantagens da POO.
  • 25. Carro - Cor - Modelo - Marca Andar() Parar() Estacionar() Pensar em termos de objetos é muito parecido a como faríamos na vida real. Por exemplo, vamos pensar num carro. Diríamos que o carro é o elemento principal que tem uma série de características (cor, modelo ou marca). Além das características o carro também tem uma série de funcionalidades associadas (andar, parar ou estacionar).
  • 27.
  • 28. Uma classe representa todos os potenciais objectos que partilham um conjunto de atributos e operações (e.g. Carro).  Independência do contexto e modularidade (reutilização)  Abstracção (ao nível dos dados e operações sobre estes)  Encapsulamento (protecção contra alterações) Carro - matricula: int - modelo: String - ano: int - última_inspeção: int + últimaInspecção(): int + idade(): int + próximaInspeção(): int + inspeccionado()
  • 29. OBJECTO (1) Instância de uma classe; (2) É criado e manipulado durante a execução do programa; (3) Tem identidade e valores específicos para os seus atributos. Os objectos são exemplares de uma classe qualquer. Quando criamos um exemplar temos que especificar a classe a partir da qual se criará
  • 30. O meu_carro: Carro matricula: 00-AA-00 modelo: VW-GTI-TDI-SLK ano: 2005 última_inspeção: 2005 últimaInspecção(): int idade(): int próximaInspeção(): int inspeccionado() Um objecto da classe Carro define uma variável única com um conjunto de valores específicos que definem o seu estado. Um objecto representa uma entidade no mundo real que pode ser distintamente identificada (e.g. o meu carro) Identificador único (a sua referência) Estado interno
  • 31. Diagramas de Classes • Os diagramas de classes, visões lógicas e físicas e o relacionamento entre objetos de uma solução são “desenhados em diagramas”. • É uma representação da estrutura estática de um sistema, em termos de classes e da sua relação. • A sua imagem na forma mais simples está demonstrada na figura:
  • 32. Diagramas de Classes • As questões de visibilidade de atributos e operadores estão explicados na figura:
  • 34. PROPRIEDADES • As propriedades ou atributos são as características dos objectos. • Quando definimos uma propriedade normalmente especificamos seu nome e seu tipo. As propriedades são as variáveis onde armazenamos os dados relativos aos objectos.
  • 35. VISIBILIDADES OS MEMBROS PODEM SER: • Privados (private) • Protegidos (protected) • Públicos (public) • Estáticas (static)
  • 36. MÉTODOS Os métodos são como funções que estão associadas a um objecto. As operações correspondem a métodos (também designados como rotinas) que podem ser funções ou procedimentos Os procedimentos (que alteram o estado do objecto) chamam-se modificadores As funções (que não alteram o estado do objecto) chamam-se inspectores É boa politica (em geral) não incluir modificação e inspecção no mesmo método Os métodos que definem a inicialização dos atributos (variáveis-membro) da classe chamam-se construtores
  • 37.  PRIVADOS (private) (variáveis-membro da classe e operações internas) • As variáveis Private estão apenas disponíveis no módulo em que foram definidas. • Utilizar a palavra-chave Private para definir a variável. • O modificador de acesso "private" quando aplicado a um atributo ou a um método indica que os mesmos só podem ser acedidos de dentro da classe que os criou (encapsulamento). • Uma classe que herde de uma superclasse com atributos declarados como "private" só poderá ter acesso a eles através dos métodos públicos da própria superclasse, caso contrário, não haverá acesso a estes atributos.
  • 38.  Protegidos (protected) A instrução protected indica que o método ou a variável assim declarada possa ser acedida somente dentro do pacote em que está contida através de uma subclasse.  Públicos (public) (operações a fornecer ao exterior e constantes) A instrução public indica que a classe, método ou variável assim declarada possa ser acedida em qualquer lugar e a qualquer momento da execução do programa.
  • 39.  Estáticas (static) A instrução static serve: na declaração de uma variável dentro de uma classe, para se criar uma variável que poderá ser acedida por todas as instâncias de objectos desta classe como um variável comum. Ou seja, a variável criada será a mesma em todas instâncias e quando seu conteúdo é modificado numas das instâncias, o será em todas instâncias; na declaração de um método que deve ser acedido diretamente na classe e não nas suas instâncias.
  • 41. EVENTOS Acção exercida sobre um objecto, e tomada pelo utilizador, sistema operativo ou pela própria aplicação.  Um click num botão  Pressionar de uma tecla  A expiração de um período de tempo Exemplos de eventos
  • 42. Word Choice • √ DO choose easily readable identifier names. For example, a property named HorizontalAlignment is more English-readable than AlignmentHorizontal. • √ DO favor readability over brevity. The property name CanScrollHorizontally is better than ScrollableX (an obscure reference to the X-axis). • X DO NOT use underscores, hyphens, or any other nonalphanumeric characters. • X DO NOT use Hungarian notation. • X AVOID using identifiers that conflict with keywords of widely used programming languages.
  • 43. Using Abbreviations and Acronyms • X DO NOT use abbreviations or contractions as part of identifier names. • For example, use GetWindow rather than GetWin. • X DO NOT use any acronyms that are not widely accepted, and even if they are, only when necessary.
  • 44. Avoiding Language-Specific Names • √ DO use semantically interesting names rather than language-specific keywords for type names. For example, GetLength is a better name than GetInt. • √ DO use a generic CLR type name, rather than a language-specific name, in the rare cases when an identifier has no semantic meaning beyond its type. For example, a method converting to Int64 should be named ToInt64, not ToLong (because Int64 is a CLR name for the C#-specific alias long). The following table presents several base data types using the CLR type names (as well as the corresponding type names for C#, Visual Basic, and C++). * Common Representation Language