Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Linguagem Programação II Prof. Edson Batista de Sena Roteiro Laboratório 03 - LPII Agenda P. O. O POO Criar no mundo virtual um modelo de alguma parte do mundo real Para isto temos Classes: são as representação dos objetos do mundo real Carro Atributos: são as características Marca, Modelo, Cor, Ano de fabricação, Vidro, Aro, ... Métodos: são as ações e funcionalidades Ligar/Desligar, Acelerar, Frear, Trocar Marcha, ... O que é P.O.O? “é um paradigma de análise, projeto e programação de sistemas/softwares baseado na composição e interação entre diversas unidades de software chamadas de objetos” O que é P.O.O? Objetivos da P.O.O Aproximar o mundo real do mundo virtual Simular o mundo real dentro do computador Por isso utiliza objetos O que é um Objeto? Uma representação virtual de um objeto real Moldar o mundo dos objetos Explicar as interações entre estes O que é P.O.O? Programação orientada a objetos é, portanto, uma maneira de fazer software utilizando-se abstrações dos elementos do “mundo real” presentes no domínio da aplicação. Vantagens/Desvantagens Vantagens Melhor representação do “mundo real” Ênfase nos dados/objetos/”mundo real” Modularidade Reusabilidade Produtividade Manutenção Desvantagens Paradigma um pouco mais complicado em relação as linguagens procedurais Tempo de execução geralmente superior ao das linguagens procedurais * A base de O.O. Encapsulamento Não mostre as cartas de seu baralho. Herança “Filho de peixe, peixe é”. Polimorfismo Vamos nos adaptar! Classes É um conjunto de códigos definição dos atributos e dos métodos necessários para a criação de um ou mais objetos. Contém toda a descrição da forma do objeto, é um molde para a criação do objeto, é uma matriz geradora de objetos, é a fábrica de objetos. Também é um tipo definido pelo usuário Objeto ou Instância Objetos são instâncias de classes Classes e Objetos Objetos Estrutura formada por atributos (características) e métodos (ações) Geralmente representam objetos do mundo real (Cliente, Veículo, Aluno, etc) Classes São “moldes” de objetos São responsáveis por criar instâncias de objetos Definem os atributos e métodos dos objetos Classes e Objetos Classe = Atributos + Método Atributos é uma variável que representa uma determinada característica Métodos é um comando que representa uma ação chamado de função servem para alterar atributos ou definir um comportamento do objeto Atributos e Métodos Atributos e Métodos Atributo = Identidade Cor do pêlo Altura Peso Raça Cor dos olhos Atributos e Métodos Métodos = Comportamento Exemplo de Classe namespace WindowsFormsApplication11 { public class Palhaco { public string Nome; public double Altura; public string Endereco; public string Telefone; public string Email; public string CPF; public string Identidade; public void FalarSobreVoce() { MessageBox.Show("Meu nome é: " + Nome + "\nEu tenho " + Altura + " de altura."; } } } Atributos da Classe Método da Classe Exemplo de Classe Exemplo de Classe { Palhaco palhaco1 = new Palhaco(); palhaco1.Nome = textBox1.Text; palhaco1.Altura = Convert.ToInt16(textBox2.Text); palhaco1.Endereco = textBox3.Text; palhaco1.Telefone = textBox4.Text; palhaco1.Email = textBox5.Text; palhaco1.CPF = textBox6.Text; palhaco1.Identidade = textBox7.Text; palhaco1.FalarSobreVoce(); } Instância da Classe Exemplo de Classe class Conta { public double saldo ; public double limite ; public int numero ; } namespace TestaConta { static void Main () { Conta novaconta = new Conta (); novaconta.numero = 01234; novaconta.limite = 1200; novaconta.saldo = 854; } } Estruturação das Aplicações Visuais De modo geral, qualquer aplicação tem uma estrutura de dados (classes), sendo que o programa visual deve iteragir com esta estrutura de dados. Uma forma simples de realizar isto é inserir, como atributos privados, instâncias de classes (os objectos) dentro da Form principal. Embora o modo de programação dependa do programador, em geral os seguintes passos devem ser seguidos: Estruturação das Aplicações Visuais Criar a estrutura de dados (classes); Desenhar a interface gráfica (Form) para interagir com esta estrutura de dados; Incluir os objectos (instâncias de classes) como atributos do Form; Programar os eventos para permitir a interação com os dados; Estruturação das Aplicações Visuais A classe Empregado é definida pelo seu nome e idade, sendo utilizados propriedades públicas para facilitar a manipulação das mesmas: class Empregado { private string NomeEmp; private int IdadeEmp; public int Idade { get { return IdadeEmp; } set { IdadeEmp = value; } } public string Nome { get { return NomeEmp; } set { NomeEmp = value; } } } Estruturação das Aplicações Visuais A classe Empregado é definida pelo seu nome e idade, sendo utilizados propriedades públicas para facilitar a manipulação das mesmas: class Empregado { private string NomeEmp; private int IdadeEmp; public int Idade { get { return IdadeEmp; } set { IdadeEmp = value; } } public string Nome { get { return NomeEmp; } set { NomeEmp = value; } } } Estruturação das Aplicações Visuais A interface visual inicial deverá ficar dessa forma: Estruturação das Aplicações Visuais public partial class Form1 : Form { Empregado cadEmpregado; public Form1() { InitializeComponent(); cadEmpregado = new Empregado(); } private void Form1_Load(object sender, EventArgs e) { } Estruturação das Aplicações Visuais private void button1_Click(object sender, EventArgs e) { cadEmpregado.Nome = textBox1.Text; label5.Text = cadEmpregado.Nome; label2.Text = (cadEmpregado.Idade).ToString(); } private void trackBar1_Scroll(object sender, EventArgs e) { label4.Text = (trackBar1.Value).ToString(); cadEmpregado.Idade = trackBar1.Value; } private void textBox1_TextChanged(object sender, EventArgs e) { cadEmpregado.Nome = textBox1.Text; label5.Text = cadEmpregado.Nome; } } } Estruturação das Aplicações Visuais Estruturação das Aplicações Visuais private void button2_Click(object sender, EventArgs e) { string mensagem = "Tem Certeza que quer sair do programa?"; string rotulo = "Sair do Programa"; MessageBoxButtons sair = MessageBoxButtons.YesNo; DialogResult resultado; resultado = MessageBox.Show(mensagem, rotulo, sair); if (resultado == System.Windows.Forms.DialogResult.Yes) { this.Close(); } else { Form1 aux = new Form1(); aux.Show(); } Estruturação das Aplicações Visuais Exercícios Complementares Implemente uma classe chamada Aluno para definir os objetos que representarão os alunos de uma escola. Essa classe deve declarar três atributos: o primeiro para o nome, o segundo para o RG e o terceiro para a data de nascimento dos alunos. Faça um formulário chamado TestaAluno e crie dois objetos da classe Aluno interligados às caixas de texto do formulário. A classe também deve mostrar na tela as informações desses objetos. Em uma escola, além dos alunos temos os funcionários, que também precisam ser representados em nossa aplicação. Então implemente outra classe chamada Funcionario que contenha três atributos: o primeiro para o nome e o segundo para o cargo o terceiro salário dos funcionários. Exercícios Complementares Faça um formulário chamado TestaFuncionario e crie três objetos da classe Funcionario atribuindo valores a eles através de caixa das caixas de texto do forumário. Mostre na tela as informaçõeda desses objetos. Em uma escola, os alunos precisam ser divididos por turmas, que devem ser representadas dentro da aplicação. Implemente uma classe chamada Turma que contenha quatro atributos: o primeiro para o período, o segundo para definir a série, o terceiro para sigla e o quarto para o tipo de ensino. Faça um formulário chamado TestaTurma para criar dois objetos da classe Turma. Adicione informações a eles e depois mostre essas informações na tela. Exercícios Complementares Para finalizar crie um formulário principal que terá um menu onde o usuário poderá chamar os demais formulários já criados. * * * *
Compartilhar