O slideshow foi denunciado.
Seu SlideShare está sendo baixado. ×

Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba

Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Anúncio
Próximos SlideShares
Modelagem de dados
Modelagem de dados
Carregando em…3
×

Confira estes a seguir

1 de 16 Anúncio

Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba

Baixar para ler offline

Nesta apresentação procuro apresentar conceitos de orientação à objetos aplicados ao VBA. Procuro discorrer de forma simplificada sem uso de muitos jargões difíceis para que aqueles que estão iniciando agora em programação orientadas a objetos, sobretudo, aplicando ao VBA, em particular.
Espero que tenha ajudado e estou pronto para tirar dúvidas provindas da leitura deste documento.
Grande abraço a todos.

Wanderlei Silva do Carmo <wander.silva@gmail.com>

Nesta apresentação procuro apresentar conceitos de orientação à objetos aplicados ao VBA. Procuro discorrer de forma simplificada sem uso de muitos jargões difíceis para que aqueles que estão iniciando agora em programação orientadas a objetos, sobretudo, aplicando ao VBA, em particular.
Espero que tenha ajudado e estou pronto para tirar dúvidas provindas da leitura deste documento.
Grande abraço a todos.

Wanderlei Silva do Carmo <wander.silva@gmail.com>

Anúncio
Anúncio

Mais Conteúdo rRelacionado

Quem viu também gostou (20)

Anúncio

Semelhante a Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba (20)

Anúncio

Mais recentes (20)

Conceitos Básicos de Orientação o Objetos aplicdo ao VBA - Classes em vba

  1. 1. Classes em VBA/EXCEL Wanderlei Silva do Carmo <wander.silva@gmail.com>
  2. 2. Objetivos Apreender conceitos básicos de programação orientada a objetos : Abstração Encapsulamento Herança Polimorfismo Modificadores de acesso Private Protected Friend Static
  3. 3. Classe Uma classe é um arquivo texto escrito utilizando uma linguagem de programação contendo instruções e comandos que definem atributos, propriedades e métodos que darão origem a objetos. Dizemos que objetos são instancia de uma classe. Um objeto portanto é criado a partir de uma instanciação de uma classe em memória. Uma mesma classe pode gerar vários objetos para vários propósitos e funcionalidades. Classes são códigos armazenados.. Objetos são variáveis que fazem referencias a endereços de memória. Em outras palavras: Uma classe descreve propriedades e comportamentos dos objetos que serão criados por ela.
  4. 4. Abstração O uso da abstração na computação pode ser exemplificada da seguinte forma: Imagine que um determinado processamento é realizado em vários pontos de um sistema, da mesma forma ou de forma idêntica. Ao invés de repetirmos o trecho de código responsável por este processamento, o abstraímos na forma de um procedimento ou função, e apenas fazemos uma chamada à tal procedimento, onde quer que necessitemos e por quantas vezes se fizer necessário. (Fonte: http://pt.wikipedia.org/wiki/Abstração) Em outras palavras para melhor entendimento: Abstrair é isolar toda complexidade de uma ação ou objeto e pegar apenas o que nos interessa em um dado momento. Um exemplo: Quando fazemos uso de um forno Micro-ondas não precisamos saber detalhes técnicos de seu funcionamento nem tampouco como foi construído e ainda não precisamos saber de que forma ele fará com que os alimentos sejam cozidos, assados, etc... Sabemos apenas que temos que “apertar” a tecla correspondente a ação que queremos. Da mesma forma em um software não precisamos saber como o programa executará as ações internamente, basta apenas que sabemos que ao clicar na opção desejada ele fará e pronto!
  5. 5. Encapsulamento Encapsulamento vem de encapsular, que em programação orientada a objetos significa separar o programa em partes, o mais isoladas possível. A idéia é tornar o software mais flexível, fácil de modificar e de criar novas implementações. (http:// pt.wikipedia.org/wiki/Encapsulamento) Em outras palavras: Vamos pensar na ideia de uma cápsula onde vamos colocar algo que não queremos que ninguém veja ou saiba o que está guardado ali. Algumas informações poderemos permitir que outros acessem, porém de forma controlada, tomando todo o cuidado de tratar toda informação oriunda ou resultante de forma que tudo seja protegido de ações indesejadas por parte de quem as usar. Um exemplo: Conteúdo protegido Acesso controlado ao conteúdo protegido Objeto
  6. 6. Herança Herança é um princípio de orientação a objetos, que permite que classes compartilhem atributos e métodos, através de "heranças". Ela é usada na intenção de reaproveitar código ou comportamento generalizado ou especializar operações ou atributos. O conceito de herança de várias classes é conhecido como herança múltipla. Como exemplo pode-se observar as classes 'aluno' e 'professor', onde ambas possuem atributos como nome, endereço e telefone. Nesse caso pode-se criar uma nova classe chamada por exemplo, 'pessoa', que contenha as semelhanças entre as duas classes, fazendo com que aluno e professor herdem as características de pessoa, desta maneira pode-se dizer que aluno e professor são subclasses de pessoa. (http://pt.wikipedia.org/wiki/Herança_(programação) ) Um Exemplo: Funcionário Gerente Vendedor Motorista Atributos comuns: codigo,nome,cpf,endereço,telefone,etc...
  7. 7. Polimorfismo Na programação orientada a objetos, o polimorfismo permite que referências de tipos de classes mais abstratas representem o comportamento das classes concretas que referenciam. Assim, é possível tratar vários tipos de maneira homogênea (através da interface do tipo mais abstrato). O termo polimorfismo é originário do grego e significa "muitas formas" (poli = muitas, morphos = formas). O polimorfismo é caracterizado quando duas ou mais classes distintas tem métodos de mesmo nome, de forma que uma função possa utilizar um objeto de qualquer uma das classes polimórficas, sem necessidade de tratar de forma diferenciada conforme a classe do objeto.1 Uma das formas de implementar o polimorfismo é através de uma classe abstrata, cujos métodos são declarados mas não são definidos, e através de classes queherdam os métodos desta classe abstrata. (wikipedia). Em outras palavras: Podemos criar classes e métodos abstratos, ou seja em que nenhuma implementação de seus métodos serão feitos nela mas na classe que a herdar . Dessa forma poderemos implementar tais métodos de acordo com a necessidade para o qual foi construída a subclasse. Exempo: Animal cachorro gato Emitir_som Emitir_som latido miado
  8. 8. Em programação orientada a objetos, modificador de acesso, também chamado de visão de método ou ainda visão de atributo, é a palavra-chave que define um atributo, método ou classe como público (ou public, qualquer classe pode ter acesso), privado (ou private, apenas os métodos da própria classe pode manipular o atributo) ou protegido (ou protected, pode ser acessado apenas pela própria classe ou pelas suas subclasses). Geralmente, utiliza-se modificadores de acesso para privar os atributos do acesso direto (tornando-os privados) e implementa-se métodos públicos que acessam e alteram os atributos. Tal prática pode ser chamada de encapsulamento. Em outras palavras: Métodos privados geralmente são usados apenas por outros métodos que são públicos (e que podem ser chamados a partir de outro objeto) da mesma classe a fim de não repetir código em mais de um método. (wikipedia) Modificadores de Acesso Lembram-se do encapsulamento? Os atributos que não queremos expor ficam protegidos de forma que somente o objeto saiba deles. Para expor de forma controlada o acesso à eles, usamos métodos públicos. É comum usarmos os chamados métodos get e set para respectivamente obter e alterar um determinado atributo. Em VB usamos suas propriedades para essa finalidade.
  9. 9. Na Prática Criando uma classe em VBA 1 - No Project Explorer, clique com o botão direito em cima do nome de seu projeto. Escolha inserir, módulo de classe. 2- Agora vamos alterar o nome da classe na janela de propriedades. Na figura o nome foi alterado para “Contato”
  10. 10. Na Prática Criando uma classe em VBA - Continuando
  11. 11. Antes de começarmos a codificar devemos fazer um “esboço” da classe que iremos criar. Definir seus atributos e seus métodos. Lembrando do encapsulamento, os atributos privados somente podem ser vistos pelo próprio objeto. Para expor estes atributos para o mundo externo deve-se então usar métodos públicos. Antes de começarmos a codificar devemos fazer um “esboço” da classe que iremos criar. Definir seus atributos e seus métodos. Lembrando do encapsulamento, os atributos privados somente podem ser vistos pelo próprio objeto. Para expor estes atributos para o mundo externo deve-se então usar métodos públicos. Os atributos privados são precedidos do sinal “-” e os atributos públicos com o sinal “+” . Os atributos privados são precedidos do sinal “-” e os atributos públicos com o sinal “+” .
  12. 12. As propriedades são a forma de se ter acesso de forma protegida aos atributos privados do objeto. As propriedades são a forma de se ter acesso de forma protegida aos atributos privados do objeto. Declaração de atributos privadosDeclaração de atributos privados Get e Let – Estas instruções são utilizadas para obter ou alterar o valor de um determinado atributo. Pode-se por exemplo, testar e validar valores antes de alterá-los ou mesmo incluir algum tipo de formatação de saída. Get e Let – Estas instruções são utilizadas para obter ou alterar o valor de um determinado atributo. Pode-se por exemplo, testar e validar valores antes de alterá-los ou mesmo incluir algum tipo de formatação de saída.
  13. 13. Para instanciar uma classe, podemos usar o seguinte código em um módulo ou em rotinas de formulários. Para instanciar uma classe, podemos usar o seguinte código em um módulo ou em rotinas de formulários. Métodos públicos são visíveis ao mundo externo. Métodos públicos são visíveis ao mundo externo.
  14. 14. Um exemplo mais completo do uso de classes em VBAUm exemplo mais completo do uso de classes em VBA Agora os botões chamarão métodos do objeto MeuContato. Agora os botões chamarão métodos do objeto MeuContato. Método Salvar do objetoMétodo Salvar do objeto
  15. 15. Usando orientação a objetos: Benefícios: Reaproveitamento de código Código mais enxuto Acoplamento baixo entre os módulos Segurança.. entre outros. FIMFIM
  16. 16. Dúvidas: E-Mail: wander.silva@gmail.com

×