Escolar Documentos
Profissional Documentos
Cultura Documentos
Fundamentos
Avanados
de Programao
Orientada por Objectos
Apresentao
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
1. Procedimentos e Funes
Passagem de parmetros por Referncia
e por Valor;
Procedimentos e funes recursivas;
2.
Sintaxe de Tabelas/Arrays
Unidimensionais
Multidimensionais
Dinmicas
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
3.
Classes
Conceitos Gerais
Criao de classes
Reutilizao de Objectos
Mdulos
Noo de Mdulo
Utilizao de Mdulos
4.
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
5.
Ficheiros
Leitura e Escrita de ficheiros
sequenciais
Ficheiros de Acesso Aleatrio
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
2. Objectivos de Aprendizagem
Utilizar mdulos
Aceder a ficheiros
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Introduo
Variveis
Variveis, so espaos que reservamos em
memria para guardar determinados valores
durante a execuo de uma determinada tarefa
ou programa.
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
AMBITO
DECLARAO
Somente onde
Procedure
Somente onde
declarada
Module
Private, na seco de
declaraes de um Form, ou
modulo (.frm, ou .bas)
Em cada
procedimento do
Form ou Modulo
Global
Public, na seco de
declaraes de um Modulo
(.bas)
Em toda a aplicao
declarada
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
1. Procedimentos e Funes
1.1
Procedimentos - O Conceito
Os procedimentos constituem a base de toda e
qualquer linguagem de programao, uma vez que,
para alm de permitirem uma conveniente separao
e agrupamento do cdigo-fonte segundo a sua
finalidade, do a possibilidade ao programador de
escrever o cdigo apenas uma vez, pois os
procedimentos podem ser invocados a partir de outros
procedimentos, mdulos de programao e projectos
diferentes, permitindo uma reutilizao inteligente
do cdigo-fonte.
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Tipos de Procedimentos
Tipo
Descrio
Gerais
De
evento
De
funo
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Procedimentos
Gerais
Sintaxe Tipo A:
Sub procedimento()
[Instruo 1]
[Instruo 2]
[]
[Instruo n]
End sub
Exemplo Tipo A:
Sub Colocar_texto()
Buttom1.text= ola!
End Sub
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Sintaxe Tipo B
Exemplo
Sub inicio()
Dim texto_a_enviar As String
Texto_a_enviar = Ola!
Colocar_texto(texto_a_enviar)
End Sub
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Sintaxe
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Procedimentos de Funo
Embora
Utiliza
Retorna um
Argumentos?
NO
Valor?
SIM
SIM
Sim
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Sintaxe
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Exemplo (procedimento de funo sem argumentos - Tipo A )
End Function
(chamada a um procedimento de funo sem argumentos)
End Sub
End Sub
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
O padro o Visual Basic passar todos os parmetros por referncia ( ByRef ), ou seja, ao invs de
passar o valor actual do argumento ele passa um endereo de 32 bits onde o valor esta armazenado.
Desta forma se ocorrer qualquer alterao no valor do parmetro isto ser reflectido no valor
original do mesmo.
Para passar um parmetro por valor usamos a palavra ByVal precedendo o parmetro, com isto
estamos passando uma cpia do valor do parmetro e no o seu endereo de localizao.
Nota: Ao passar uma string por valor esta passa o endereo do primeiro byte de dados da string . Se
passar uma string por referncia estar a passar o endereo de memria onde outro endereo esta
armazenado , neste caso o primeiro byte de dados da string.
A ter em conta:
As strings sempre so passadas por Valor ( ByVal ). Porm a funo API poder alterar o contedo
da varivel string.
Os Vectores ( Arrays ) sempre so passados ByRef quando passados por inteiro para a funo API.
Os valores numricos podem ser passados por Valor ou por Referncia dependendo da funo
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
VANTAGENS E DESVANTAGENS
Existem algumas vantagens e desvantagens na
utilizao de mtodos baseados na recursividade:
Vantagens:
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Desvantagens:
As
Um
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Funes Recursivas
Uma
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Private
Function Fact(num As
Integer)
If num = 0 Then
Fact = 1
Else
Fact = num * Fact(num - 1)
End If
End Function
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Tabelas/ Array
As variveis do tipo Array, ao contrrio das
escalares que armazenam um valor de cada vez
representam matrizes ou conjuntos de dados
alojados em posies ou ndices bem definidos.
Todos
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Dim
Exemplos:
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Dim
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Exemplos:
Dim
dias() As Date
Dias(0)= #1/1/1999#
ReDim dias(3)
Dias(2)= #1/1/1999#
ReDim dias(1) O contedo de ndice
2 eliminado
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Arrays Unidimensionais
Uma
Arrays Multidimensionais
As
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
4 Mdulos
Noo de Mdulo e Procedimentos
No
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Sintaxe (Criao de Mdulos)
Module Nome
[Procedimento
1]
[Procedimento 1]
[]
[Procedimento 1]
End Module
Aqui,
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Criao de Mdulos
Podemos
Gravao de Mdulos
O
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Apagar Mdulos
A
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
3.
Classes
Conceitos Gerais
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Criao
de classes
Ir ao gernciador de Solues> adicionar -> Classe
Exemplo Prtico
As classes tm propriedades
(publicas ou privadas) e mtodos.
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Reutilizao
de Objectos
A produtividade do
desenvolvimento de sistemas
orientados a objectos visvel e
bastante perceptvel principalmente
quando fazemos uso da reutilizao.
Esta, na prtica da OO, muito
mais do que simplesmente copiar
funes, ou mesmo utilizar
mdulos.
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
A
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Outra opo tambm pode ser a transformao de
objectos semelhantes, ou seja, objectos j
implementados cujas caractersticas so bastante
semelhantes aos objectos necessrios, podem,
com pequenas modificaes, serem teis ao novo
sistema.
Outra forma de reutilizao pode surgir
utilizando a propriedade da herana entre
objectos, ou seja, caso surja a necessidade de
criar um novo objecto cuja ideia esteja baseada
num objecto j existente, podemos criar novos
objectos com as caractersticas dos objectos j
desenvolvidos. Isto diminui sensivelmente o custo
de desenvolvimento de novos sistemas
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Exemplo Prtico
Aula
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
5.
Ficheiros
Leitura e Escrita de ficheiros
sequenciais
Ficheiros de Acesso Aleatrio
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
O que um Ficheiro?
Uma coleco de dados ou informao representada
por um nome, armazenados em dispositivos;
Existem vrios tipos de ficheiros.
Basicamente dividem-se entre Ficheiros de Texto e os
Ficheiros de dados ou ficheiros definidos pelos
utilizadores;
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Ficheiros de Texto
Aqui a informao totalmente armazenada em formato de
caracteres ASCII. Podem ser criados, consultados,
modificados no Sistema Operativo ou no editor de texto fora
do programa que os usa.
O acesso aos dados do tipo sequencial ou seja, a
leitura dos dados no pode ser iniciado num ponto qualquer
escolhido pelo utilizador, mas sempre o incio e percorrer
todos os elementos at chegar ao ponto pretendido.
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Exemplo de uma estrutura:
Structure fichaAluno
<VBFixedString(30)> Dim nome As String
<VBFixedString(30)> Dim local As String
Dim ano As Integer
End Structure
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
c:\teste.txt
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Membro
Descrio
Append
Input
Output
Binary
Random
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Ficheiros
de Acesso Aleatrio
FUNDAMENTOS AVANADOS DE
PROGRAMAO ORIENTADA POR
OBJECTOS
Utiliza
o acesso aleatrio.
Chama