Programação Orientada a Objetos

Tamanho: px
Começar a partir da página:

Download "Programação Orientada a Objetos"

Transcrição

1 1 Programação Orientada a Objetos No Pascal da Borland a partir da versão 5.5 encontramos o tipo Object (palavra reservada) Encapsulamento Um tipo objeto é uma estrutura de dados que contém um número fixo de componentes. Os objetos encapsulam dados e rotinas. Na declaração do tipo object os dados são declarados com seus tipos (como em um record) e as rotinas apenas com seus cabeçalhos. objeto procedimentos Ex.: dados T1=object Campo1: ; Campo2: ; Procedure Rot1(parâmetros); Function Rot2: ; Constructor Inicia; Destructor Termina; As rotinas, também chamadas de métodos, são declaradas como: procedure, function, constructor ou destructor. As sintaxes das declarações dos dados e dos métodos são: Campo NomeCampo(s): tipo; Método procedure NomeMétodo(<parâmetro(s)>: tipo); function NomeMétodo(<parâmetro(s)>: tipo): tipo; constructor NomeMétodo(<parâmetro(s)>: tipo); destructor NomeMétodo(<parâmetro(s)>: tipo); Herança Um tipo object pode herdar componentes de outro tipo object.

2 2 Classe2 Classe1 Herança da Classe1 Ex.: T2=object(T1) Campo3: ; procedure Rot3; O tipo T2, além do Campo3 e da procedure Rot3, tem também os Campo1; Campo2, Rot1, Rot2, Inicia e Termina. Métodos Um método é um procedimento ou função declarada dentro de um tipo object. Os métodos são elementos utilizados para manipular os dados encapsulados dentro do tipo object. A declaração dentro de um tipo object consiste apenas do cabeçalho (como no forward). O corpo do método é definido fora da declaração do tipo object. Ex.: Procedure T1.Rot1(parâmetros);... Observe que o tipo object T1 aparece no instante da declaração do corpo da rotina. Um método pode ser estático, virtual ou dinâmico. Instanciação Para que os tipos object possam ser utilizados devemos declarar iáveis desses tipos, Esse tipo de declaração é denominado instanciação: Classe1 Objeto1 Objeto2 Objeto3 Instâncias da Classe1 Instanciação

3 3 Ex.: O1: T1; O2: T2; A iável O1 tem: dois campos (Campo1 e Campo2) e quatro métodos (Rot1, Rot2, Inicia, Termina). A iável O2 tem três campos (Campo1, Campo2 e Campo3) e cinco métodos (Rot1, Rot2, Inicia, Termina e Rot3). De outra forma poderíamos também utilizar instâncias alocadas dinamicamente. Esta forma é a mais comum. P3=^T3; T3=object(T2) Campo4: ; procedure Rot4;... O3: P3;... new(o3, Inicia); O3^.Rot2;... Termos utilizados em POO Nos exemplos: T1 e T2 são classes (em Pascal: objetos) O1 e O2 são objetos ou instâncias de T1 e T2 (em Pascal: iáveis) Campo1, Campo2 e Campo3 são dados-membro (em Pascal: campos) ou propriedades Rot1, Rot2, Rot3, Inicia e Termina são funções membro (em Pascal: métodos) Programa exemplo Programa exemplo utilizando programação orientada a objetos: TTipoDado=Real; TIndice=1..6; TVet=array [TIndice] of TTipoDado; TVetUni=object V: TVet; procedure Atrib(i: TIndice; Val: TTipoDado); function Consu(i: TIndice): TTipoDado; procedure TVetUni.Atrib(i: TIndice; Val: TTipoDado); if (i<1) or (i>6) then writeln('índice Inválido') else V[i]:=Val;

4 4 function TVetUni.Consu(i: TIndice): TTipoDado; if (i<1) or (i>6) then writeln('índice Inválido') else Consu:=V[i]; V1, V2: TVetUni; X: TTipoDado; V1.Atrib(1, 7.2); (* atribuiçao *) V2.Atrib(2, 3.5); with V1 do Atrib(3, 0.4); Atrib(4,-1.0); Atrib(5, 2.3); V2.Atrib(6,-9.2); X:=V1.Consu(1)+V2.Consu(2); (* consulta e operaçoes *) Duas palavras reservadas são exclusivas no tipo object: private e public. Essas palavras criam seções dentro de um tipo object restringindo ou ampliando o escopo dos campos. Os escopos dos componentes declarados na seção private são restritos ao módulo (programa ou unit) que contém o objeto onde o tipo object está declarado. Dentro do módulo, um componente private atua como um componente public; Fora do módulo, um componente private não é conhecido nem acessível. Teoricamente um objeto seguro deveria ter todos os seus campos private. Isso impediria que acessos "mal comportados" alterassem o funcionamento esperado do objeto. Todas as alterações aos campos seriam feitas através de chamadas aos métodos públicos do objeto. O programa abaixo pode utilizar a unidade ADAI_1A.TPU ou ADAI_1B.TPU (apresentadas abaixo). uses ADAI_1?; VE, X: TVetUni; i: TIndice; VE.Inicia; for i:=1 to 3 do VE.Atrib(i, i-2); for i:=1 to 3 do VE.Atrib(i, i-1); for i:=1 to 3 do writeln(ve.consu(i)); Observe que a classe TVetUni nas duas unidades (ADAI_1A.TPU e ADAI_1B.TPU) tem a mesma interface pública. Observe ainda as três formas de implementação de vetor esparso com OOP e suas diferenças.

5 5 unit ADAI_1A; interface const MaxElem=1000; TTipoDado=Real; TIndice=1..MaxElem; TVet=array [TIndice] of TTipoDado; TVetUni=object private V: TVet; public procedure Inicia; procedure Atrib(i: TIndice; Val: TTipoDado); function Consu(i: TIndice): TTipoDado; implementation procedure TVetUni.Inicia; i: TIndice; for i:=1 to MaxElem do V[i]:=0; procedure TVetUni.Atrib(i: TIndice; Val: TTipoDado); if (i<1) or (i>6) then writeln('índice Inválido') else V[i]:=Val; function TVetUni.Consu(i: TIndice): TTipoDado; if (i<1) or (i>6) then writeln('índice Inválido') else Consu:=V[i]; unit ADAI_1B; interface const MaxElem=1000; MaxElemDifer0=50; TTipoDado=Real; TIndice=1..MaxElem; TVetUni=object private M: Array [1..MaxElemDifer0] of record Valor: TTipoDado; Ind: integer; function Encontra(Ind: integer): integer; public procedure Inicia; procedure Atrib(I: TIndice; Val: TTipoDado); function Consu(I: TIndice): TTipoDado;

6 6 implementation procedure TVetUni.Inicia; i: integer; for i:=1 to MaxElemDifer0 do M[i].Ind:=-1; function TVetUni.Encontra(Ind: integer): integer; i: integer; i:=1; while (i<=maxelemdifer0) and (M[i].Ind<>Ind) do Inc(i); if i<=maxelemdifer0 then Encontra:=i else Encontra:=-1; (* indicador de nao encontrado *) function TVetUni.Consu(I: TIndice): TTipoDado; Ind: integer; Ind:=Encontra(I); if Ind<>-1 then Consu:=M[Ind].Valor else Consu:=0; procedure TVetUni.Atrib(I: TIndice; Val: TTipoDado); Ind: integer; Ind:=Encontra(I); if Val=0 then if Ind<>-1 then M[Ind].Ind:=-1 (* retira elemento da tabela *) end else if Ind<>-1 then M[Ind].Valor:=Val (* já existe o índice *) else Ind:=Encontra(-1); (* encontra índice vazio *) if Ind=-1 then writeln('erro, nao cabe mais') else M[Ind].Ind:=i; M[Ind].Valor:=Val end end Mensagens Conceitualmente, na OOP, os objetos, em um programa, interagem através da troca de mensagens. No mínimo, enviar uma mensagem envolve especificar o nome de um objeto e o nome da mensagem a ser enviada. Constantemente haverá também argumentos que deverão ser especificados. Podemos imaginar, em um certo sentido, que cada objeto se comporta como um pequeno programa especializado, que se comunica através das mensagens com outros programas especializados.

7 7 As trocas de mensagens em Pascal são simples chamadas às subrotinas (métodos) dos objetos. Assim se na linguagem da OOP dizemos: o objeto O1 envia uma mensagem M ao objeto O2, em Pascal a mensagem M para O2 seria: O2.M, onde O2 é uma instância e M é uma rotina declarada na classe de O2. Métodos Virtuais Um método declarado como virtual pode ser substituído nas suas classes descendentes. Essas rotinas usam uma tabela adicional para identificar em qual classe está o método a ser chamado. Assim, a ligação desses métodos não ocorre no instante da ligação (link), ela ocorre no instante em que o método será executado. Esse tipo de ligação recebe o nome de vinculação tardia de métodos no momento de execução ( runtime late binding of methods ). A=object procedure M1; procedure M2; virtual; B=object(A) procedure M2; virtual; procedure A.M1; writeln('a.m1'); M2; procedure A.M2; writeln('a.m2'); procedure B.M2; writeln('b.m2'); Classe A ObjA: A; ObjB: B; ObjA.M1; ObjB.M1; Método M1 M1 chama M2 Método M2 Classe B Método M2 A figura mostra a classe A com duas funções, M1 e M2, tal que M1 chama M2; e a classe B que é subclasse de A. Considerando a criação de dois objetos a partir de A e B, teremos respectivamente ObjA e ObjB. Quando uma mensagem M1 é enviada para ObjA as funções M1 e M2 de A serão executadas. O que acontecerá se a mensagem M1 for para ObjB? 1 O sistema em execução pega a mensagem ObjB.M1 e tenta encontrar o método M1 na classe B. 2 A ação 1 fracassa e o sistema procura nos métodos das classes mães (classe A). A busca tem sucesso e o código do método A.M1 é usado. 3 Como o método A.M1 chama o método M2, o sistema em execução precisa resolver a chamada: 1 a Se M2 NÃO for virtual: A.M2 será imediatamente executado (a vinculação foi feita na ligação e, portanto, é estática); 2 a Se M2 for virtual: o sistema primeiro volta aos métodos da classe B (a classe cuja instância recebeu a mensagem original) e tenta localizar um método M2. A busca tem sucesso e o sistema emprega o código de B.M2 para resolver a chamada de ObjA.M1 (a vinculação é feita no instante da execução). O Borland Pascal utiliza uma tabela (tabela de métodos virtuais) para resolver a vinculação tardia. Essa tabela é alocada e iniciada por um método especial chamado construtor e liberada por outro método especial chamado destrutor. Assim, sempre que forem utilizados métodos virtuais é

8 necessária a iniciação da tabela de métodos virtuais, no momento da instanciação, que é executada por um dos construtores da classe. A forma correta de escrever a classe apresentada anteriormente é: 8 A=object constructor C; procedure M1; procedure M2; virtual; destructor D; B=object(A) procedure M2; virtual constructor A.C; destructor A.D; procedure A.M1; writeln('a.m1'); M2; procedure A.M2; writeln('a.m2'); procedure B.M2; writeln('b.m2'); ObjA: A; ObjB: B; ObjA.C; ObjB.C; ObjA.M1; ObjB.M1; ObjA.D; ObjB.D; Note que neste exemplo não existe instrução executável no corpo do método construtor nem no destrutor, eles são declarados e chamados apenas para criar e destruir a tabela de métodos virtuais. Exemplo: TPessoa=object Nome, Endereco: string[30]; RG: longint; procedure LeDados; procedure Mostra; procedure Titulo(funcao: string); procedure TPessoa.Titulo(funcao: string); writeln('-- ', funcao, ' Pessoa: --'); writeln; procedure TPessoa.LeDados; Titulo('Le Dados'); write('nome: '); readln(nome); write('endereco: '); readln(endereco); write('r.g.: '); readln(rg); No vídeo teremos: -- Le Dados Pessoa: -- Nome: João Endereco: XV de novembro S/N R.G.: Mostra Pessoa: -- Nome: João Endereco: XV de novembro S/N R.G.:

9 9 procedure TPessoa.Mostra; Titulo('Mostra'); writeln('nome: ', nome); writeln('endereco: ', endereco); writeln('r.g.: ', RG); Pessoa: TPessoa; Pessoa.LeDados; Pessoa.Mostra; O programa abaixo coloca uma nova classe descendente de TPessoa. Observe que no instante da impressão em vídeo o título é mostrado como: -- "funcao" Pessoa -- ou seja, o método TAluno.Titulo NÃO foi usado. TPessoa=object Nome, Endereco: string[30]; RG: longint; procedure LeDados; procedure Mostra; procedure Titulo(funcao: string); procedure TPessoa.Titulo(funcao: string); writeln('-- ', funcao, ' Pessoa: --'); writeln; procedure TPessoa.LeDados; Titulo('Le Dados'); write('nome: '); readln(nome); write('endereco: '); readln(endereco); write('r.g.: '); readln(rg); procedure TPessoa.Mostra; Titulo('Mostra'); writeln('nome: ', Nome); writeln('endereco: ', Endereco); writeln('r.g.: ', RG); TAluno=object(TPessoa) Numero: longint; procedure LeDados; procedure Mostra; procedure Titulo(funcao: string); No vídeo teremos: -- Le Dados Pessoa: -- Nome: João Endereco: XV de novembro S/N R.G.: Numero: Mostra Pessoa: -- Nome: João Endereco: XV de novembro S/N R.G.: Numero: 111

10 10 procedure TAluno.Titulo(funcao: string); writeln('-- ', funcao, ' Aluno: --'); writeln; procedure TAluno.LeDados; TPessoa.LeDados; write('numero: '); readln(numero); procedure TAluno.Mostra; TPessoa.Mostra; writeln('numero: ', Numero); Aluno: TAluno; Aluno.LeDados; Aluno.Mostra; O programa abaixo corrige o anterior utilizando um método virtual Observe que foram utilizados dois métodos especiais o: constructor Inicia; e destructor Termina indispensáveis em objetos que utilizam métodos virtuais. TPessoa=object Nome, Endereco: string[30]; RG: longint; constructor Inicia; procedure LeDados; procedure Mostra; procedure Titulo(funcao: string); virtual; destructor Termina; constructor TPessoa.Inicia; procedure TPessoa.Titulo(funcao: string); writeln('-- ', funcao, ' Pessoa: --'); writeln; procedure TPessoa.LeDados; Titulo('Le Dados'); write('nome: '); readln(nome); write('endereco: '); readln(endereco); write('r.g.: '); readln(rg);

11 11 procedure TPessoa.Mostra; Titulo('Mostra'); writeln('nome: ', Nome); writeln('endereco: ', Endereco); writeln('r.g.: ', RG); destructor TPessoa.Termina; TAluno=object(TPessoa) Numero: longint; procedure LeDados; procedure Mostra; procedure Titulo(funcao: string); virtual; procedure TAluno.Titulo(funcao: string); writeln('-- ', funcao, ' Aluno: --'); writeln; procedure TAluno.LeDados; TPessoa.LeDados; write('numero: '); readln(numero); procedure TAluno.Mostra; TPessoa.Mostra; writeln('numero: ', Numero); Aluno: TAluno; No vídeo teremos: -- Le Dados Aluno: -- Nome: João Endereco: XV de novembro S/N R.G.: Numero: Mostra Aluno: -- Nome: João Endereco: XV de novembro S/N R.G.: Numero: 111 Aluno.Inicia; Aluno.LeDados; Aluno.Mostra; Aluno.Termina; Note no programa acima que as rotinas TAluno.Mostra e TAluno.LeDados chamam as mesmas rotinas declaradas na classe mãe, que agora estão sendo substituídas. Esta facilidade é muito útil em classes descendentes de classes complexas, quando toda a complexidade não precisa ser repetida.

12 12 Criando Instancias em Borland Pascal Utilizaremos o exemplo anterior: PPessoa=^TPessoa; TPessoa=object Nome, Endereco: string[30]; RG: longint; constructor Inicia; procedure LeDados; procedure Mostra; procedure Titulo(funcao: string); virtual; destructor Termina;... PAluno=^TAluno; TAluno=object(TPessoa) Numero: longint; procedure LeDados; procedure Mostra; procedure Titulo(funcao: string); virtual;... A instanciação utiliza até agora foi: Aluno: TAluno; Aluno.Inicia; Aluno.LeDados; Aluno.Mostra; Aluno.Termina; Existe ainda uma forma mais utilizada que cria uma instancia a partir de memória alocada dinamicamente. Três formas podem ser utilizadas: Forma 1: Aluno: PAluno; New(Aluno); Aluno^.Inicia; Aluno^.LeDados; Aluno^.Mostra; Aluno^.Termina; Dispose(Aluno);

13 13 Forma 2: Aluno: PAluno; New(Aluno, Inicia); Aluno^.LeDados; Aluno^.Mostra; Dispose(Aluno, Termina); Forma 3: Aluno: PAluno; Aluno:=New(PAluno, Inicia); Aluno^.LeDados; Aluno^.Mostra; Dispose(Aluno, Termina); Para exemplificar a utilização da programação orientada a objetos usaremos o Turbo Vision que é fornecido pela Borland junto com o Borland Pascal 7.0. Este pacote facilita a criação de interfaces com janelas em ambiente DOS. program Minimal; uses App; MyApp: TApplication; MyApp.Init; MyApp.Run; MyApp.Done; program Tutor02b; Alt-X Exit uses App, Objects, Menus, Drivers, Views; TTutorApp = object(tapplication) procedure InitMenuBar; virtual; procedure InitStatusLine; virtual; Arquivo Abre... F3 Salva F2 Sair Alt-S procedure TTutorApp.InitMenuBar; R: TRect; GetExtent(R); R.B.Y := R.A.Y + 1; MenuBar := New(PMenuBar, Init(R, NewMenu( NewSubMenu('~A~rquivo', hcnocontext, NewMenu( NewItem('~A~bre...', 'F3', kbf3, cmopen, hcopen, NewItem('~S~alva', 'F2', kbf2, cmsave, hcsave, NewLine( NewItem('Sai~r~', 'Alt+S', kbalts, cmquit, hcexit, nil))))), nil))));

14 14 procedure TTutorApp.InitStatusLine; R: TRect; GetExtent(R); R.A.Y := R.B.Y - 1; Alt+F Sair New(StatusLine, Init(R, NewStatusDef(0, $EFFF, NewStatusKey('~Alt+F~ Sair', kbaltf, cmquit, nil), nil))); TutorApp: TTutorApp; TutorApp.Init; TutorApp.Run; TutorApp.Done; program InsWin; uses Objects, App, Drivers, Views, Menus; const cmnewwin = 2000; TInsApp = object(tapplication) WinCount: Integer; procedure HandleEvent( Event: TEvent); virtual; procedure InitMenuBar; virtual; procedure TInsApp.HandleEvent( Event: TEvent); R: TRect; inherited HandleEvent(Event); if Event.What = evcommand then if Event.Command = cmnewwin then Inc(WinCount); Desktop^.GetExtent(R); InsertWindow(New(PWindow, Init(R, 'Test window', WinCount))); procedure TInsApp.InitMenuBar; R: TRect; GetExtent(R); R.B.Y := R.A.Y + 1; MenuBar := New(PMenuBar, Init(R, NewMenu( NewItem('~A~dd window', 'F3', kbf3, cmnewwin, hcnocontext, nil)))); Add Window InsApp: TInsApp; InsApp.Init; InsApp.Run; InsApp.Done; Alt-X Exit

15 15 Além do Turbo Vision a Borland oferece também um pacote, chamado Object Windows, voltado a criação de interfaces no ambiente Windows. O exemplo abaixo cria uma janela vazia sem título. program Vazio; uses OWindows; MyApp: TApplication; MyApp.Init('Vazio'); MyApp.Run; MyApp.Done; O exemplo abaixo cria uma janela vazia com o título "XXXXX". program Step01a; uses OWindows; TMyApplication = object(tapplication) procedure InitMainWindow; virtual; procedure TMyApplication.InitMainWindow; MainWindow := New(PWindow, Init(nil, 'XXXXX')); MyApp: TMyApplication; MyApp.Init('Steps'); MyApp.Run; MyApp.Done; O exemplo abaixo cria uma janela com o título "YYYYY". Esta janela é capaz de atender ao clicar do botão esquerdo do mouse. Sempre que o botão esquerdo for pressionado um dialogo de mensagem será aberto com o texto: "You have pressed the left mouse button" program Step01b; uses WinTypes, WinProcs, OWindows; PStepWindow = ^TStepWIndow; TStepWindow = object(twindow) procedure WMLButtonDown( Msg: TMessage); virtual wm_first + wm_lbuttondown; TMyApplication = object(tapplication) procedure InitMainWindow; virtual; procedure TStepWindow.WMLButtonDown( Msg: TMessage); MessageBox(HWindow, 'You have pressed the left mouse button', 'Message Dispatched', mb_ok);

16 16 procedure TMyApplication.InitMainWindow; MainWindow := New(PStepWindow, Init(nil, 'YYYYY')); MyApp: TMyApplication; MyApp.Init('Steps'); MyApp.Run; MyApp.Done;

Programação Orientada a Objetos

Programação Orientada a Objetos 1 Programação Orientada a Objetos A linguagem C, desde a sua primeira especificação, vem sendo desenvolvida com várias extensões. De uma dessas extensões foi criada a Linguagem C++ onde encontramos diversas

Leia mais

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1 Estrutura de Dados Introdução a Ponteiros Prof. Gerson Borges Estrutura de Dados I 1 Sumário è Explicação da importância do planejamento de ensino; è Métodos e técnicas que iremos trabalhar durante o semestre;

Leia mais

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Memória Flash Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário Filas Fila é um tipo de lista linear onde as inserções são realizadas num extremo (final da Fila) e as remoções restritas ao outro (começo da Fila). O primeiro a entrar é o primeiro a sair e último a entrar

Leia mais

INTRODUÇÃO OBJECT PASCAL/DELPHI

INTRODUÇÃO OBJECT PASCAL/DELPHI Introdução Object Pascal/Delphi 1 INTRODUÇÃO OBJECT PASCAL/DELPHI Objetivo Demonstrar a sintaxe e a semântica do Object Pascal e a forma como esse linguagem de programação será aplicada na disciplina de

Leia mais

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais

Curso de Java. Orientação a objetos e a Linguagem JAVA. TodososdireitosreservadosKlais Curso de Java Orientação a objetos e a Linguagem JAVA Roteiro A linguagem Java e a máquina virtual Objetos e Classes Encapsulamento, Herança e Polimorfismo Primeiro Exemplo A Linguagem JAVA Principais

Leia mais

Representação de Algoritmos - Linguagens de Programação

Representação de Algoritmos - Linguagens de Programação Representação de Algoritmos - Linguagens de Programação A representação de algoritmos em uma pseudo-linguagem mais próxima às pessoas é bastante útil principalmente quando o problema a ser tratado envolve

Leia mais

UNIP UNIVERSIDADE PAULISTA INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA (ICET) CURSO DE CIÊNCIAS DA COMPUTAÇÃO. O Paradigma da Orientação a Objeto

UNIP UNIVERSIDADE PAULISTA INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA (ICET) CURSO DE CIÊNCIAS DA COMPUTAÇÃO. O Paradigma da Orientação a Objeto UNIP UNIVERSIDADE PAULISTA INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA (ICET) CURSO DE CIÊNCIAS DA COMPUTAÇÃO O Paradigma da Orientação a Objeto Apresentada em Cumprimento Parcial dos Requerimentos para

Leia mais

PROG. DE COMPUTADORES II SI Arquivos

PROG. DE COMPUTADORES II SI Arquivos 1 PROG. DE COMPUTADORES II SI Arquivos Arquivos Permitem que gravemos nossas informações em dispositivos físicos Pendrive HD Estão organizados logicamente em registros Cada registro é similar a um campo

Leia mais

Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows

Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows DINAMIC LINK LIBRARIES Capítulo 7 Neste capítulo discutiremos o que é uma DLL, seus aspectos e tipos e ainda, porquê é tão importante para as aplicações Windows O QUE É UMA DLL? Dinamic Link Libraries

Leia mais

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente

Leia mais

IFTO TÉCNICO EM INFORMÁTICA DESENVOLVIMENTO DE SISTEMAS AULA 01

IFTO TÉCNICO EM INFORMÁTICA DESENVOLVIMENTO DE SISTEMAS AULA 01 IFTO TÉCNICO EM INFORMÁTICA DESENVOLVIMENTO DE SISTEMAS AULA 01 Prof. Manoel Campos da Silva Filho Tecnólogo em Processamento de Dados / Unitins Mestre em Engenharia Elétrica / UnB http://lab.ifto.edu.br/~mcampos

Leia mais

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Display de 7 Segmentos Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

Podemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto :

Podemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto : Podemos agora ver no IDE do Morfik os objetos que já incorporamos ao nosso projeto : O form Index A tabela Fotos A query Q_seleção_de_fotos Vide figura 46. Figura 46 O próximo passo é criar um form que

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada.

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada. Texto retirado e adaptado da apostila A Linguagem Pascal, disponível no site http://www.portaldaprogramacao.com (autor: desconhecido) ARQUIVOS Anteriormente, foi estudado o conceito de tabelas em memória

Leia mais

Parte 5 LibreOffice Base

Parte 5 LibreOffice Base Parte 5 LibreOffice Base 1. Criação do banco de dados 1. Abra o LibreOffice Base; 2. Escolha Criar um novo banco de dados e clique em Concluir; 3. Salve o banco de dados em alguma pasta do computador.

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

ÍNDICE. Delphi... 3 CAPÍTULO 1 INTRODUÇÃO... 06 CAPÍTULO 2 INSTALANDO O DELPHI... 10

ÍNDICE. Delphi... 3 CAPÍTULO 1 INTRODUÇÃO... 06 CAPÍTULO 2 INSTALANDO O DELPHI... 10 Delphi 7 ÍNDICE CAPÍTULO 1 INTRODUÇÃO... 06 CAPÍTULO 2 INSTALANDO O DELPHI... 10 CAPÍTULO 3 INICIANDO O Delphi... 18 FORM DESIGN... 19 CODE EDITOR... 23 OBJECT INSPECTOR... 26 OBJECT TREE VIEW... 29 PALHETA

Leia mais

Tutorial de Matlab Francesco Franco

Tutorial de Matlab Francesco Franco Tutorial de Matlab Francesco Franco Matlab é um pacote de software que facilita a inserção de matrizes e vetores, além de facilitar a manipulação deles. A interface segue uma linguagem que é projetada

Leia mais

Programação Orientada a Objetos em Java

Programação Orientada a Objetos em Java Programação Orientada a Objetos em Java Rone Ilídio da Silva Universidade Federal de São João del-rei Campus Alto Paraopeba 1:14 1 Objetivo Apresentar os principais conceitos de Programção Orientada a

Leia mais

PROGRAMAÇÃO II 3. PILHA DINÂMICA

PROGRAMAÇÃO II 3. PILHA DINÂMICA 3. PILHA DINÂMICA PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma pilha é um tipo especial de Pilha na quais todas as inserções e remoções são feitas na primeira posição, que é chamada de topo. Outro nome

Leia mais

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MANUAL

Leia mais

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.

Leia mais

Informática I. Aula 6. http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1

Informática I. Aula 6. http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1 Informática I Aula 6 http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e

Leia mais

Profº. Enrique Pimentel Leite de Oliveira

Profº. Enrique Pimentel Leite de Oliveira Profº. Enrique Pimentel Leite de Oliveira O termo orientação a objetos significa organizar o mundo real como uma coleção de objetos que incorporam estrutura de dados e um conjunto de operações que manipulam

Leia mais

Curso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming

Curso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming Curso de PHP FATEC - Jundiaí A programação orientada a objetos (object-oriented oriented programming OOP) é um conjunto de técnicas t para organizar o código c em torno de entidades ou objetos representados

Leia mais

Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo;

Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; um objeto; é definido; Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; class ClasseBase{ é instanciado; $objetobase = new ClasseBase; Caso queira,

Leia mais

Manipulação de Arquivos em Pascal

Manipulação de Arquivos em Pascal Manipulação de Arquivos em Pascal Estrutura de Dados II Aula 03 UFS - DComp Adaptados a partir do material da Profa. Kenia Kodel Cox 1 Para implementar programa infantil para ordenação (alfabética) de

Leia mais

PROGRAMANDO EM C# ORIENTADO A OBJETOS

PROGRAMANDO EM C# ORIENTADO A OBJETOS PROGRAMANDO EM C# ORIENTADO A OBJETOS AGENDA MÓDULO 2 Domínio e Aplicação Objetos, Atributos e Métodos Classes em C# Criando Objetos em C# Referências em C# Manipulando Atributos Valores Padrão Exercícios

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação 1I Prof. Osório Fila / Alocação Estática Pag.: 1 - UNIVERSIAE O VALE O RIO OS SINOS IÊNIAS EXATAS E TENOLÓGIAS urso: Informática / iência da omputação Programação II isciplina: Linguagem de

Leia mais

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho.

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho. DELPHI BÁSICO VANTAGENS Ambiente de desenvolvimento fácil de usar; 1. Grande Biblioteca de Componentes Visuais (VCL - Visual Component Library), que são botões, campos, gráficos, caixas de diálogo e acesso

Leia mais

Delphi 7 Aula 01 Área do Triângulo

Delphi 7 Aula 01 Área do Triângulo Delphi 7 Aula 01 Área do Triângulo Prof. Gilbert Azevedo da Silva I. Objetivos Conhecer o Ambiente Integrado de Desenvolvimento (IDE) do Delphi 7, Desenvolver a primeira aplicação no Delphi 7, Aprender

Leia mais

PROGRAMAÇÃO II 4. ÁRVORE

PROGRAMAÇÃO II 4. ÁRVORE 4. ÁRVORE PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma árvore impõe uma estrutura hierárquica em uma coleção de itens. Um exemplo familiar é a árvore genealógica. Árvores despontam de forma natural em

Leia mais

Criando um script simples

Criando um script simples Criando um script simples As ferramentas de script Diferente de muitas linguagens de programação, você não precisará de quaisquer softwares especiais para criar scripts de JavaScript. A primeira coisa

Leia mais

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada Programação Estruturada Programação Estruturada Paradigmas de Linguagens de Programação As linguagens desse paradigma são muitas vezes chamadas de linguagens convencionais, procedurais ou imperativas.

Leia mais

Safeweb enotar versão 4.1

Safeweb enotar versão 4.1 Safeweb enotar versão 4.1 O software Safeweb enotar é um aplicativo para uso integrado com sistemas de ERP que implementa um conjunto de serviços destinados a emissão de notas fiscais eletrônicas. O presente

Leia mais

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA

UNIVERSIDADE FEDERAL DO RIO GRANDE DO SUL INSTITUTO DE INFORMÁTICA INFORMÁTICA APLICADA Responda 1) Quem desenvolveu a linguagem C? Quando? 2) Existe alguma norma sobre a sintaxe da linguagem C? 3) Quais são os tipos básicos de dados disponíveis na linguagem C? 4) Quais são as principais

Leia mais

Interface para Regras de Negócios em Multi-Banco

Interface para Regras de Negócios em Multi-Banco 1 Interface para Regras de Negócios em Multi-Banco MARCELO JALOTO (marcelo@jaloto.net) é graduado no curso superior Projetos e Gestão de Redes de Computadores e formado no curso Técnico em Processamento

Leia mais

Adicionando Propriedades e Funcionalidades aos Componentes Parte II

Adicionando Propriedades e Funcionalidades aos Componentes Parte II Adicionando Propriedades e Funcionalidades aos Componentes Parte II Quantas vezes eu não lamentei por este componente não ter uma propriedade que guardasse uma lista paralela a lista que é mostrada em

Leia mais

Introdução a Java. Hélder Nunes

Introdução a Java. Hélder Nunes Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais

Leia mais

Bem vindo! Esta é a tela inicial do Webmail da Universidade federal de Juiz de Fora. O link de acesso é: http://correio.ufjf.edu.

Bem vindo! Esta é a tela inicial do Webmail da Universidade federal de Juiz de Fora. O link de acesso é: http://correio.ufjf.edu. Manual WebMail 1. Tela inicial... pág. 2 2. Caixa de Entrada... pág. 2 3. A pasta Lidas... pág. 3 4. Criando sua assinatura... pág. 3 5. Enviar Mensagens... pág. 3 6. Anexando arquivos... pág. 4 7. Adicionando

Leia mais

1 Code::Blocks Criação de projetos

1 Code::Blocks Criação de projetos Programação MEEC Índice 1Code::Blocks Criação de projetos...1 2Code::Blocks Localização do projeto...5 3Code::Blocks Abertura de projetos já existentes...7 4Code::Blocks Funcionamento...8 5Code::Blocks

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO Versão do documento: 1.1 1. Introdução...3 2. Documentação...3 2.1. DOCUMENTAÇÃO DE REFERÊNCIA... 3 2.2. DESCRIÇÃO FUNCIONAL... 4 2.2.1. INTERFACE...

Leia mais

Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos.

Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos. Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos. Construtor: método executado por uma CLASSE (e não por um objeto, instância da classe)

Leia mais

1.6. Tratamento de Exceções

1.6. Tratamento de Exceções Paradigmas de Linguagens I 1 1.6. Tratamento de Exceções Uma exceção denota um comportamento anormal, indesejado, que ocorre raramente e requer alguma ação imediata em uma parte do programa [GHE 97, DER

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

Manual de Utilização do Aplicativo Validador. Documento 3040

Manual de Utilização do Aplicativo Validador. Documento 3040 Manual de Utilização do Aplicativo Validador Documento 3040 1. Introdução Para que validar o documento 3040? A cada data-base as instituições financeiras enviam ao Banco Central do Brasil informações sobre

Leia mais

Polimorfismo. Prof. Leonardo Barreto Campos 1

Polimorfismo. Prof. Leonardo Barreto Campos 1 Polimorfismo Prof. Leonardo Barreto Campos 1 Sumário Introdução; Polimorfismo; Polimorfismo Java; Métodos Abstratos Java Classes Abstratas Java Exercício - Java Polimorfismo C++ Classe Abstrata C++; Funções

Leia mais

CRIANDO FUNÇÕES EM VISUAL BASIC PARA TRANSFORMAÇÕES DE GRAUS SEXAGESIMAIS

CRIANDO FUNÇÕES EM VISUAL BASIC PARA TRANSFORMAÇÕES DE GRAUS SEXAGESIMAIS CRIANDO FUNÇÕES EM VISUAL BASIC PARA TRANSFORMAÇÕES DE GRAUS SEXAGESIMAIS Autor: Prof. Dr. Paulo Sergio Oliveira de Carvalho Introdução Fevereiro de 2013 O Visual Basic (abreviado como VB) é uma linguagem

Leia mais

Este trabalho tem como objetivo praticar o uso de tipos abstratos de dados e estruturas do tipo Lista.

Este trabalho tem como objetivo praticar o uso de tipos abstratos de dados e estruturas do tipo Lista. Universidade Federal do Espírito Santo Departamento de Informática Estruturas de Dados I (INF09292) 1 o Trabalho Prático Período: 2013/1 Prof a Patrícia Dockhorn Costa Email: pdcosta@inf.ufes.br Data de

Leia mais

Autor: Tiago Lone Nível: Básico Criação: 19/12/2005 Última versão: 18/12/2006. PdP. Pesquisa e Desenvolvimento de Produtos

Autor: Tiago Lone Nível: Básico Criação: 19/12/2005 Última versão: 18/12/2006. PdP. Pesquisa e Desenvolvimento de Produtos TUTORIAL Barra de LEDs Autor: Tiago Lone Nível: Básico Criação: 19/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

Manual SAGe Versão 1.2 (a partir da versão 12.08.01)

Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação

Leia mais

Capítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra

Capítulo 14. Herança a e Polimorfismo. Rui Rossi dos Santos Programação de Computadores em Java Editora NovaTerra Capítulo 14 Herança a e Polimorfismo Objetivos do Capítulo Apresentar os conceitos de herança e de polimorfismo. Explorar os diversos recursos disponíveis no Java para a aplicação da herança e do polimorfismo

Leia mais

Análise de Ponto de Função

Análise de Ponto de Função Complemento para o Curso Análise de Ponto de Função FUNÇÕES DO TIPO DADO O termo Arquivo não significa um arquivo do sistema operacional, como é comum na área de processamento de dados. Se refere a um

Leia mais

Programando Jogos com Delphi (LÓGICA, ANIMAÇÃO, CONTROLE) Autor: Antônio Sérgio de Sousa Vieira Email: sergiosvieira@hotmail.com

Programando Jogos com Delphi (LÓGICA, ANIMAÇÃO, CONTROLE) Autor: Antônio Sérgio de Sousa Vieira Email: sergiosvieira@hotmail.com Programando Jogos com Delphi (LÓGICA, ANIMAÇÃO, CONTROLE) Autor: Antônio Sérgio de Sousa Vieira Email: sergiosvieira@hotmail.com Introdução Este texto foi escrito para pessoas que se interessam pela arte

Leia mais

INTRODUÇÃO 12. DOCUMENTAÇÃO INTRODUÇÃO INTRODUÇÃO

INTRODUÇÃO 12. DOCUMENTAÇÃO INTRODUÇÃO INTRODUÇÃO INTRODUÇÃO 12. DOCUMENTAÇÃO Na plataforma Java SE 7, há cerca de 4000 classes e interfaces disponíveis para utilizarmos em nossas aplicações Podemos visualizar a documentação dessas classes e interfaces

Leia mais

Entradas Digitais. PdP. Autores: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 27/12/2005 Última versão: 18/12/2006

Entradas Digitais. PdP. Autores: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 27/12/2005 Última versão: 18/12/2006 TUTORIAL Entradas Digitais Autores: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 27/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br

Leia mais

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM

CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM CAPÍTULO 7 NÍVEL DE LINGUAGEM DE MONTAGEM 71 Introdução Difere dos níveis inferiores por ser implementado por tradução A tradução é usada quando um processador está disponível para uma mensagem fonte mas

Leia mais

UFSM Introdução ao Dev-C++ Profa. Patrícia Pitthan. Introdução ao Dev-C++

UFSM Introdução ao Dev-C++ Profa. Patrícia Pitthan. Introdução ao Dev-C++ Introdução ao Dev-C++ O Dev-C++ oferece um ambiente que integra um editor de textos a um compilador para linguagem C. O compilador usado pelo Dev-C++ é o gcc (Gnu C Compiler). 1) Primeiro programa Para

Leia mais

O Primeiro Programa em Visual Studio.net

O Primeiro Programa em Visual Studio.net O Primeiro Programa em Visual Studio.net Já examinamos o primeiro programa escrito em C que servirá de ponto de partida para todos os demais exemplos e exercícios do curso. Agora, aprenderemos como utilizar

Leia mais

Desenvolvendo plugins WordPress usando Orientação a Objetos

Desenvolvendo plugins WordPress usando Orientação a Objetos Desenvolvendo plugins WordPress usando Orientação a Objetos por Daniel Antunes danieldeveloper.com @danieldeveloper Introdução Desenvolver plugins WordPress é mais que programar: é obter grandes resultados

Leia mais

ROTINAS PADRÕES DO SISTEMAS

ROTINAS PADRÕES DO SISTEMAS ROTINAS PADRÕES DO SISTEMAS Usando o Sistema pela primeira vez Ao executar o seu Sistema pela primeira vez a tela abaixo será apresentada para que você possa configurar os diretórios onde serão achados

Leia mais

A Linguagem Pascal e o Ambiente de Programação Dev-Pascal. Introdução à Ciência da Computação I

A Linguagem Pascal e o Ambiente de Programação Dev-Pascal. Introdução à Ciência da Computação I A Linguagem Pascal e o Ambiente de Programação Dev-Pascal Introdução à Ciência da Computação I Março/2004 Introdução (1 de 3) Homenagem a Blaise Pascal, filósofo e matemático do século XVII. Desenvolvida

Leia mais

Inspirado pela inovação, na continuidade

Inspirado pela inovação, na continuidade CAPA Para inovar, uma Instituição forte e inabalável como a nossa precisa continuar criando projetos coerentes para inspirar as pessoas, afim de facilitar seus mecanismos de trabalho através da inovação.

Leia mais

Síntese das discussões do fórum Livro-APF: Julho/2010

Síntese das discussões do fórum Livro-APF: Julho/2010 Síntese das discussões do fórum Livro-APF: Julho/2010 Assunto: Estimativa de Aumento de Produtividade Data: 01/07/2010 Link: http://br.groups.yahoo.com/group/livro-apf/message/2577 Dúvida: Existe alguma

Leia mais

JavaScript. JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos.

JavaScript. JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos. JavaScript JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos. Pode ser usada dentro do próprio arquivo HTML ou estruturada em um

Leia mais

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada

Leia mais

IBM Software Demos WebSphere Portal Composite Application Workflow

IBM Software Demos WebSphere Portal Composite Application Workflow Introdução: mostrar tela de logon com stock ticker em execução} O IBM WebSphere Portal inclui um Composite Application Workflow Builder. Essa ferramenta permite criar aplicativos de fluxo de trabalho baseados

Leia mais

Slide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education

Slide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education Java Como Programar, 8/E Slide 1 Slide 2 Slide 3 Métodos genéricos e classes genéricas (e interfaces) permitem especificar, com uma única declaração de método, um conjunto de métodos relacionados ou, com

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Capítulo I Preliminares: Visual Basic na planilha eletrônica Excel.

Capítulo I Preliminares: Visual Basic na planilha eletrônica Excel. Capítulo I Preliminares: Visual Basic na planilha eletrônica Excel. 1.1. Editor do Visual Basic do Excel (VBA) A maioria dos problemas desse livro será resolvida com o VBA da planilha eletrônica Excel,

Leia mais

DIFERENÇAS ENTRE FUNÇÃO E BLOCO FUNCIONAL; CRIAÇÃO DE FUNÇÃO / BLOCO FUNCIONAL; UTILIZAÇÃO NO LADDER; EXEMPLO DE BLOCO FUNCIONAL;

DIFERENÇAS ENTRE FUNÇÃO E BLOCO FUNCIONAL; CRIAÇÃO DE FUNÇÃO / BLOCO FUNCIONAL; UTILIZAÇÃO NO LADDER; EXEMPLO DE BLOCO FUNCIONAL; Boletim Técnico EP3 11/07 Utilizando Funções e Blocos Funcionais de usuário pelo software A1 19 de outubro de 2007 O objetivo deste boletim é mostrar como utilizar o recurso de Funções (Functions) e Blocos

Leia mais

Como mandar mensagens OSC pelo Flash via Flosc

Como mandar mensagens OSC pelo Flash via Flosc Como mandar mensagens OSC pelo Flash via Flosc Primeiro, deve-se baixar o Flosc. Existe uma base de dados Flosc no sourceforge, mas essa base está em formato.swc, só possível de ser lido pelo Flex (hoje

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação 1I Prof. Osório Árvores Genéricas Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação II Disciplina: Linguagem

Leia mais

PROGRAMAÇÃO II 3. FILA DINÂMICA

PROGRAMAÇÃO II 3. FILA DINÂMICA 3. FILA DINÂMICA PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma fila é um tipo especial de lista na qual todas as inserções são feitas sempre depois do fim e as deleções no início. Por isso também recebe

Leia mais

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor

Leia mais

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação 1I Prof. Osório Árvores Binárias Pag.: 1 - UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação Programação II Disciplina: Linguagem

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do mundo

Leia mais

Prof. Rafael Gross. rafael.gross@fatec.sp.gov.br

Prof. Rafael Gross. rafael.gross@fatec.sp.gov.br Prof. Rafael Gross rafael.gross@fatec.sp.gov.br Todo protocolo define um tipo de endereçamento para identificar o computador e a rede. O IP tem um endereço de 32 bits, este endereço traz o ID (identificador)

Leia mais

Veja abaixo um exemplo de um endereço IP de 32 bits: 10000011 01101011 00010000 11001000

Veja abaixo um exemplo de um endereço IP de 32 bits: 10000011 01101011 00010000 11001000 4 Camada de Rede: O papel da camada de rede é transportar pacotes de um hospedeiro remetente a um hospedeiro destinatário. Para fazê-lo, duas importantes funções da camada de rede podem ser identificadas:

Leia mais

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior Armazenamento de Dados Prof. Antonio Almeida de Barros Junior 1 Armazenamento de Dados Todos os dados que utilizamos até o momento, ficavam armazenados apenas na memória. Ao final da execução dos programas,

Leia mais

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias Departamento de Engenharia Rural Centro de Ciências Agrárias Programação I Prof. Bruno Vilela Oliveira bruno@cca.ufes.br http://www.brunovilela.webnode.com.br Aula 08 Programação em pascal Pascal Pascal

Leia mais

b 1 Copyright 2008-2012 In9 Mídia Soluções Digitais Inc. All rights reserved.

b 1 Copyright 2008-2012 In9 Mídia Soluções Digitais Inc. All rights reserved. b 1 Conteúdo Capítulo 1... 3 Instalando o Neonews... 3 Neonews no Linux... 6 Capítulo 2... 7 Configurando o NeoNews... 7 Capítulo 3... 13 Teclas de Atalho do NeoNews Player... 13 2 Capítulo 1 Instalando

Leia mais

MANUAL DE INSTALAÇÃO LUZ DO SABER

MANUAL DE INSTALAÇÃO LUZ DO SABER MANUAL DE INSTALAÇÃO LUZ DO SABER Sumário Sumário...2 Instalação do Luz do Saber no Linux...3 1ª opção Utilizando um Instalador...3 2ª opção Utilizando comandos no Konsole...6 Observações Importantes...7

Leia mais

AutoLISP - IV Ambiente de programação Visual Lisp. João Manuel R. S. Tavares Joaquim Oliveira Fonseca

AutoLISP - IV Ambiente de programação Visual Lisp. João Manuel R. S. Tavares Joaquim Oliveira Fonseca AutoLISP - IV Ambiente de programação Visual Lisp João Manuel R. S. Tavares Joaquim Oliveira Fonseca Ambiente de programação Visual Lisp O software Visual Lisp é um ambiente de programação para a linguagem

Leia mais

Usando o simulador MIPS

Usando o simulador MIPS Usando o simulador MIPS O objetivo desta aula prática será a utilização do simulador MipsIt para executar programas escritos em linguagem de máquina do MIPS. 1 Criando um projeto Cada programa a ser executado

Leia mais

Instruções de instalação e remoção para os drivers de impressora PostScript e PCL do Windows Versão 8

Instruções de instalação e remoção para os drivers de impressora PostScript e PCL do Windows Versão 8 Instruções de instalação e remoção para os drivers de impressora PostScript e PCL do Windows Versão 8 Este arquivo ReadMe contém as instruções para a instalação dos drivers de impressora PostScript e PCL

Leia mais

Implementando uma Classe e Criando Objetos a partir dela

Implementando uma Classe e Criando Objetos a partir dela Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe

Leia mais

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema. O que é o projeto O PROINFODATA - programa de coleta de dados do projeto ProInfo/MEC de inclusão digital nas escolas públicas brasileiras tem como objetivo acompanhar o estado de funcionamento dos laboratórios

Leia mais

EDITORA FERREIRA MP/RJ_EXERCÍCIOS 01

EDITORA FERREIRA MP/RJ_EXERCÍCIOS 01 EDITORA FERREIRA MP/RJ NCE EXERCÍCIOS 01 GABARITO COMENTADO 01 Ao se arrastar um arquivo da pasta C:\DADOS para a pasta D:\TEXTOS utilizando se o botão esquerdo do mouse no Windows Explorer: (A) o arquivo

Leia mais

Variáveis Compostas Heterogêneas. Variável Composta Heterogênea. Variável Composta Heterogênea

Variáveis Compostas Heterogêneas. Variável Composta Heterogênea. Variável Composta Heterogênea Variáveis Compostas Heterogêneas Variável Composta Heterogênea Conjunto de dados logicamente relacionados, mas de tipos diferentes. Também chamada de registro. Variável Composta Heterogênea 1 Declaração

Leia mais

FUNDAÇÃO EDUCACIONAL DE ITUIUTABA

FUNDAÇÃO EDUCACIONAL DE ITUIUTABA FUNDAÇÃO EDUCACIONAL DE ITUIUTABA ASSOCIADA À UNIVERSIDADE DO ESTADO DE MINAS GERAIS CURSO DE SISTEMA DE INFORMAÇÃO PILHA E FILA Prof. Walteno Martins Parreira Júnior www.waltenomartins.com.br waltenomartins@yahoo.com

Leia mais

PdP. Autor: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 26/12/2005 Última versão: 18/12/2006

PdP. Autor: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 26/12/2005 Última versão: 18/12/2006 TUTORIAL Servo-motor Autor: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 26/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br

Leia mais

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções)

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções) Aulas anteriores... Formulação adequada do problema Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução Definição do algoritmo Método de decomposição hierárquica utilizando

Leia mais