SAP ABAP orientado a Objetos-Objetos e Classes

neste tutorial, aprenderemos sobre um dos princípios sobre os quais o ABAP é uma programação orientada a objetos.

aprenderemos sobre o que significa OOP e também o que isso implica no mundo do SAP ABAP.

o que é OOP?

  • Programação Orientada a objetos divide tarefas em objetos que têm dados e função.
  • este método torna a programação de software compreensível, flexível e reutilizável.
  • Programação Orientada a objetos (OOP) foi criada com simplicidade e eloquência em mente.Faz com que as pessoas se comuniquem com clareza, troquem informações e ideias usando uma linguagem comum – a linguagem dos objetos.
  • Esses objetos são feitos de seus dois principais características – propriedades (dados) e de comportamento (ou funções)

As principais características da OOP são–

  1. abstração de Dados
  2. Encapsulamento
  3. Ênfase nos dados, ao invés de incluir procedimento de
  4. Uso de entidades do mundo real, chamado de ‘objeto’
  5. privacidade e proteção dos Dados

Fique atualizado com as mais recentes tendências da tecnologia
Juntar DataFlair no Telegrama!!

POP vs OOP

Programação Orientada a procedimentos (POP) aborda problemas em um método de cima para baixo. Ele enfatiza o procedimento em vez de dados de forma linear.

Vamos ver algumas diferenças entre o POP e OOP–

POP OOP
POP significa para o Procedimento de programação Orientada a OOP está para programação Orientada a Objeto
Ele se concentra no procedimento (tarefas), em vez de dados (tarefas) incide sobre os dados/tarefas ao invés de procedimento
POP segue de cima para baixo moda na resolução de problemas OOP segue de baixo para cima moda na resolução de problemas
Ele divide um programa em partes menores chamadas funções ou módulos divide um programa em partes menores chamadas de objetos
Funções de compartilhamento de dados global de dados e não pode ser escondido do outro Funções não compartilhar global de dados – você pode decidir quem pode acessar seus dados
Não há muita ênfase na proteção de dados Um dos principais pontos de foco em OOP é a proteção de dados
Estendendo a funcionalidade e a adição de dados é tedioso e demorado é muito fácil para estender a funcionalidade e adicionar novos dados, simplesmente a adição de novos objetos
Conceitos de herança, polimorfismo, encapsulamento não são usados Conceitos de herança, polimorfismo, encapsulamento forma a base da OOP
E. g. C, Pascal, FORTRAN E. g. Java, Python, C++

OOP em ABAP

  • Inicialmente, a SAP desenvolveu ABAP como uma linguagem POP.
  • no entanto, à medida que o tempo avançava, eles o mudaram e o transformaram em uma linguagem OOP
  • portanto, o ABAP agora segue os princípios da orientação do objeto e paradigmas como objetos.
  • como parte do OOP, o ABAP usa os conceitos de herança, sobrecarga, ocultação de dados, etc. para uma melhor funcionalidade.

Vamos começar pela compreensão de alguns termos básicos da OOP

termos Básicos para saber

TERMO SIGNIFICADO
Objeto uma entidade do mundo real que tem dados e comportamento
Classe um complexo conjunto de objectos que contêm, principalmente, campos de dados e características pertinentes aos dados
Método comportamento de um objeto é. módulos de função que o objeto executa
Membro o membro de dados ou função de membro de uma classe
Exemplo sinônimo de objeto, geralmente usado como “instância de uma classe’
Instanciação criar um novo objeto de uma classe

Objetos em ABAP SAP

  • Um objeto é uma entidade do mundo real que contém dados e comportamento.
  • essas características e comportamento definem o estado do objeto e as ações que o objeto executará.
  • um objeto, como mencionado anteriormente, é um blueprint ou instância de uma classe.
  • por exemplo, um funcionário, um livro, uma macieira – todos são objetos.

Criar um Objeto em ABAP

Vamos ver como criar um objeto em ABAP –

Sintaxe:

DATA: <object_name> TYPE REF TO <class_name>. "Create reference variable CREATE Object: <object_name>. #Create object from ref. var.

Exemplo:

DATA: dataflairobject TYPE REF TO dataflairclass. CREATE Object: dataflairobject.

exemplo de Relatório:

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS ClassDataFlair Definition.Public Section.DATA: dataflairtext(45) VALUE 'Data Flair OOPS tutorial in ABAP: data.'.METHODS: DataFlairMethod.ENDCLASS.CLASS ClassDataFlair Implementation.METHOD DataFlairMethod.Write:/ 'Data Flair OOPS tutorial in ABAP: method.'.ENDMETHOD.ENDCLASS.START-OF-SELECTION.DATA: ClassDataFlair TYPE REF TO ClassDataFlair.CREATE Object: ClassDataFlair.Write:/ ClassDataFlair->dataflairtext.CALL METHOD: ClassDataFlair->DataFlairMethod.

Saída

Dados Talento OOPS tutorial em ABAP: dados.
Tutorial Data Flair OOPS em ABAP: método.

Aulas em SAP ABAP

  • UMA classe é um conjunto complexo de objetos
  • contém membros de dados (características) e membro métodos (funções) juntos envolto em uma única entidade chamada de objeto
  • as Aulas são onde os objetos são criados e definidos
  • Podemos também definir e declarar módulos de função em uma classe
  • podemos descrever a privacidade de uma classe
  • o Que isso significa é que podemos definir que todos podem ter acesso a dados específicos de uma classe

Criação de uma Classe em ABAP

Criação de uma classe em ABAP tem dois passos –

1. Declaração

Sintaxe–

CLASS <class_name> DEFINITION.//define classENDCLASS.

Exemplo–

CLASS dataflairclass DEFINITION.//define classENDCLASS.

2. Definição

Sintaxe–

CLASS <class_name> IMPLEMENTATION.//define classENDCLASS.

Exemplo–

CLASS dataflairclass IMPLEMENTATION.//define classENDCLASS.

Atributos em SAP ABAP

  • Atributos são as características da classe
  • Eles podem ter qualquer tipo de dados predefinido como P, F, I, etc.
  • devemos declarar atributos na seção de declaração de classe
  • os atributos são de dois tipos:
    • instância: isso inclui a instância específica do estado do objeto, as alterações são diferentes para todos os objetos, e isto é declarado pela declaração de DADOS
    • Estática: isto inclui o estado comum da classe para ser compartilhado por todas as instâncias da classe, portanto, quando mudamos de um estado, em seguida, todos os outros objetos podem ver a mudança, declarado pela CLASSE-declaração de DADOS

Métodos em SAP ABAP

  • um método é UM módulo ou de uma função
  • é o comportamento do objeto de uma classe
  • Um método pode acessar de qualquer característica de uma classe
  • contém ações a serem executadas pelos objetos que chamamos a classe
  • definição de Método podem ou não conter parâmetros que são passados quando o método é chamado
  • podemos definir um método usando instruções METHOD e ENDMETHOD

sintaxe:

METHOD…ENDMETHOD

acessando atributos e métodos no SAP ABAP

1. Métodos e atributos podem ser acessados por objetos da classe

2. Os especificadores de acesso – público, privado e protegido funcionam da mesma maneira como o fazem para a classe de acesso especificadores

  • Se nós declará-los públicos, que pode ser acessado por qualquer classe
  • Quando declaramos-los privados, que não pode ser acessado por qualquer classe
  • Se nós declará-los protegidos, eles só podem ser acessados por herança de classes

Vamos ver um exemplo de como escrever classes, atributos e métodos e o acesso a eles –

Exemplo:

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section. Data: dataflairtext01 Type char25 Value 'Public Data Flair'. Methods dataflairmethod. PROTECTED Section. Data: dataflairtext02 Type char25 Value 'Protected Data Flair'. PRIVATE Section. Data: dataflairtext03 Type char25 Value 'Private Data Flair'.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod. Write: / 'Public Method:', / dataflairtext01, / dataflairtext02, / dataflairtext03. Skip. EndMethod.ENDCLASS.Start-Of-Selection. Data: Objectx Type Ref To dataflairclass. Create Object: Objectx. CALL Method: Objectx->dataflairmethod. Write: / Objectx->dataflairtext01.

Saída

Método Público:
Dados Públicos Talento
Dados Protegidos Talento
Dados Privados FlairPublic Dados Talento

Exemplo de Atributos Estáticos em SAP ABAP

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section. CLASS-DATA: dataflairname Type char45, dataflairdata Type I. Methods: dataflairmethod.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod. Do 4 Times. dataflairdata = 1 + dataflairdata. Write: / dataflairdata, dataflairname. EndDo. Skip. EndMethod.ENDCLASS.Start-Of-Selection. dataflairclass=>dataflairname = 'ABAP Object Oriented Programming'. dataflairclass=>dataflairdata = 0. Data: Object1 Type Ref To dataflairclass, Object2 Type Ref To dataflairclass. Create Object: Object1, Object2. CALL Method: Object1->dataflairmethod, Object2->dataflairmethod.

Construtores em SAP ABAP

  • Construtores são tipos especiais de métodos de
  • Quando criamos um objeto, precisamos inicializar e construtores de fazer o trabalho de inicialização de dados para os objetos
  • O programa de chamadas de construtores automaticamente quando um objeto desta classe é criado.
  • O construtor irá desencadear a operação incluídos, sempre que um objeto é criado recentemente na execução

Exemplo de ABAP Construtores

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section. Methods: dataflairmethod, constructor.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod. Write: / 'This is the method'. EndMethod. Method constructor. Write: / 'This is the constructor'. EndMethod.ENDCLASS.Start-Of-Selection. Data Object1 Type Ref To dataflairclass. Create Object Object1.

Saída

Este é o construtor

ME Operador em SAP ABAP

  • Sempre que redefinir uma variável dentro de um método com um valor diferente, que método usará o redefinido valor da variável
  • no Entanto, se você deseja acessar o originalmente valor declarado, em seguida, você pode usar o operador
  • Vamos ver um exemplo usando o operador

Exemplo de MIM Operador em ABAP

REPORT ZR_SS_DATAFLAIR_SAMPLE_001.CLASS dataflairclass Definition. PUBLIC Section.Data dataflairtext Type char25 Value 'Here we have class value'. Methods dataflairmethod.ENDCLASS.CLASS dataflairclass Implementation. Method dataflairmethod.Data dataflairtext Type char25 Value 'Here we have method value'. Write: / ME->dataflairtext, / dataflairtext. ENDMethod.ENDCLASS.Start-Of-Selection. Data objectx Type Ref To dataflairclass. Create Object objectx. CALL Method objectx->dataflairmethod.

Saída

Aqui temos o valor de classe
Aqui temos o método de valor

resumo

assim, neste tutorial, aprendemos sobre o básico sobre o qual o ABAP e muitas outras linguagens são Programação Orientada a objetos. Aprendemos sobre como a orientação do objeto é diferente da orientação do procedimento, sua importância e termos mais importantes.

na parte # 2 deste tutorial, vamos mergulhar em outros conceitos de orientação a objetos como herança, polimorfismo, etc.

Leave a Reply

O seu endereço de email não será publicado.