Categoria: ABAP Objects

Introdução ao TDD em ABAP

Há um tempo eu venho pensando em investir mais pesado em TDD (Test-Driven Development ou Desenvolvimento Orientado a Testes), daí eu decidi comprar um livro sobre o assunto. Optei pelo livro do Maurício Aniche, Test-Driven Development, Test e Design no Mundo Real. Eu fiquei tão empolgado em aprender de verdade o que é TDD que decidi gravar um screencast onde eu implemento o primeiro exemplo mostrado no livro em ABAP ao mais bom estilo Furlan e claro que tive a “brilhante” idéia de gravar um vídeo (ou screencast?) bem ao estilo live-coding, ou codificação sem cortes.

nota musical azul

15 indícios musicais que o seu programa ABAP pode melhorar

Depois de ver um número bom de programas ABAP feito por outros e ter que alterar programas que eu mesmo fiz e tive dificuldade, resolvi criar uma lista de indícios que seu programa em ABAP “pode melhorar”, por assim dizer. Para deixar o post mais interessante e ajudar você a lembrar das dicas, separei músicas que remetem a cada um dos temas. Espero que gostem mais das dicas do que de algumas das músicas. Confira a lista e garanta que você está evitando que se eu (ou outra pessoa) ver seu código um dia eu fique chateado com você. 😉

Field-Symbols: O que são e suas vantagens – Por Fábio Kazunari

Eis um post que não vemos todos os dias: um post de um leitor interessado em aprender e que compartilha suas ideias! Como eu havia dito no último post sobre o LinkedIn: (Discussão no LinkedIn: Gerenciamento de qualidade de código ABAP) estou fazendo um esforço cada vez maior para fazer parte desta rede social. E foi por lá que recebi uma mensagem semana passada do nosso leitor de longa data Fábio Kuzunari pedindo um post sobre field-symbols. Ao mesmo tempo, tinha uma lista de razões internamente que me dizia que este tópico poderia ser escrito pelo próprio Kazunari – ao escrever um...

Criando Objetos / Chamando Métodos Dinamicamente

Criando Objetos / Chamando Métodos Dinamicamente

Na busca pela solução de um problema, debugando, debugando e debugando novamente, me deparei com a criação dinâmica de objetos. Estudando mais a fundo, eis que surge assunto para mais um post! Afinal, quanto mais dinâmicos forem os programas e API´s, melhor será sua performance e re-usabilidade. O que faz com que consigamos criar o objeto / chamar o método dinamicamente, é a utilização de uma tabela, na qual informamos todos os parâmetros necessários (seja de importing, exporting, changing, etc), ou seja, podemos popular esta tabela de acordo com nossa necessidade em determinado ponto do programa.

MVC - Fonte: http://www.fernandovalente.com.br/wordpress/2011/01/11/mvc-model-view-controller/

Falsa Programação Orientada a Objetos

O que é um programa ABAP orientado a objetos? Se um programa usa somente CALL METHOD e nenhum PERFORM, então trata-se de um programa orientado a objetos? Acredito que não. O uso de sintaxe de orientação a objetos não é evidência suficiente de que o programa foi pensado na forma de objetos trocando mensagens entre si. Trago para vocês dois pogramas com saídas idênticas, mas um usando uma “orientação a objetos” capenga e outro que considero uma melhor forma de resolver o problema pensando em objetos.

Design Patern – Singleton

Design Patern – Singleton

Então você já aprendeu como declarar uma classe, chamar um método e aplicar os conceitos de herança e polimorfismo (já né?). Parabéns você completou a primeira parte do aprendizado em programação orientada a objetos. Agora só falta mais uns 95% para poder ser considerado um Mestre Jedi em Orientação a Objetos. Vamos ganhar mais um ponto porcentual e falarmos de Singleton.

ALV OO – Trabalhando com botões e eventos

ALV OO – Trabalhando com botões e eventos

Sem dúvida, uma das atividades mais realizadas por um programador ABAP é a emissão de relatórios. Como não estamos na era dos dinossauros, “não conhecemos” o relatório “write” e vamos direto aos “ALV’s”. Este post tem como objetivo exemplificar algumas funcionalidades de um ALV OO (Orientado a Objetos),  são elas: Exclusão de botões do toolbar de um ALV OO Inclusão de botões no toolbar do ALV Utilização de eventos Como desabilitar um botão (ele aparece, mas não é possível clicar) Geração de um ALV sem necessidade de criação de um container Veja também: Como encontrar ícones Utilização de interfaces

Hello World Orientado a Objetos

Hello World Orientado a Objetos

Uma coisa que não mais iremos discutir aqui no ABAP101 é usar ou não programação orientada a objetos, por isso estamos abolindo procedural do ABAP101, caso você veja alguma coisa procedural aqui no site, por favor avise-me! Programação procedural pode parecer mais fácil, mas é porque estamos mais acostumados com esse tipo de programação do que orientada a objetos. Tome uma resolução em sua vida ABAPer, faça tudo em ABAP OO, mesmo um simples relatório. Comece com uma simples classe e daí vá evoluindo, mas fuja da “primeira dose” do procedural. Acredite a vida é bem melhor sem procedural! A...