| Bellacosa o que as divisions e section num programa COBOL |
O que são as DIVISIONS e SECTIONs do COBOL?
Uma das primeiras coisas que chama atenção em COBOL é sua estrutura extremamente organizada.
Diferente de muitas linguagens modernas, o COBOL divide o programa em:
DIVISIONs;
SECTIONs;
PARAGRAPHs.
Isso ajuda a criar programas:
organizados;
legíveis;
fáceis de manter.
Especialmente em sistemas corporativos gigantes do:
mainframe IBM Z.
O que são DIVISIONs?
DIVISIONs são:
grandes blocos principais do programa COBOL.
Cada DIVISION possui:
uma responsabilidade específica.
Estrutura clássica COBOL
IDENTIFICATION DIVISION
ENVIRONMENT DIVISION
DATA DIVISION
PROCEDURE DIVISION
Analogia simples
Imagine um prédio corporativo.
Cada andar possui uma função:
administração;
arquivos;
dados;
operações.
As DIVISIONs funcionam exatamente assim.
Fluxo lógico do COBOL
IDENTIFICATION
↓
ENVIRONMENT
↓
DATA
↓
PROCEDURE
1. IDENTIFICATION DIVISION
Responsável pela:
identificação do programa.
Contém informações como:
nome do programa;
autor;
comentários;
data.
Exemplo
IDENTIFICATION DIVISION.
PROGRAM-ID. CLIENTE.
AUTHOR. BELLACOSA.
O item mais importante
PROGRAM-ID
Define:
nome do programa COBOL.
2. ENVIRONMENT DIVISION
Define:
ambiente do programa.
Responsável por:
arquivos;
dispositivos;
configurações;
datasets.
Muito usada em batch
SECTIONs principais
CONFIGURATION SECTION
INPUT-OUTPUT SECTION
CONFIGURATION SECTION
Define:
máquina;
compilador;
ambiente.
Exemplo
CONFIGURATION SECTION.
SOURCE-COMPUTER. IBM-Z.
OBJECT-COMPUTER. IBM-Z.
INPUT-OUTPUT SECTION
Define:
arquivos do programa.
Exemplo
SELECT CLIENTE
ASSIGN TO ARQCLI.
3. DATA DIVISION
Uma das partes mais importantes.
Responsável pelos:
dados e variáveis.
Aqui ficam:
layouts;
variáveis;
tabelas;
áreas de memória;
copybooks.
SECTIONs mais famosas
FILE SECTION
Layouts de arquivos.
WORKING-STORAGE SECTION
Variáveis internas.
LINKAGE SECTION
Parâmetros recebidos.
Exemplo FILE SECTION
FD ARQCLIENTE.
01 REG-CLIENTE.
05 NOME PIC X(30).
05 SALDO PIC 9(9)V99.
O que é FD?
File Description
Define estrutura do arquivo.
Exemplo WORKING-STORAGE
01 WS-TOTAL PIC 9(9)V99.
O prefixo WS significa:
Working Storage.
Exemplo LINKAGE SECTION
01 LK-CLIENTE PIC X(10).
Muito usada em:
CALL;
subprogramas;
CICS.
O que é PIC?
Define formato do campo.
Exemplos
PIC X(20)
Texto.
PIC 9(5)
Número.
4. PROCEDURE DIVISION
Aqui fica:
a lógica do programa.
É o “cérebro” do COBOL.
Contém:
IF;
PERFORM;
READ;
WRITE;
COMPUTE;
loops;
processamento.
Exemplo
PROCEDURE DIVISION.
MAIN.
DISPLAY 'OLA'.
STOP RUN.
O que são SECTIONs?
SECTIONs são:
subdivisões dentro das DIVISIONs.
Elas organizam ainda mais o programa.
Exemplo
WORKING-STORAGE SECTION.
O que são PARAGRAPHs?
Pequenos blocos de lógica.
Exemplo
CALCULAR-TOTAL.
Hierarquia do COBOL
DIVISION
↓
SECTION
↓
PARAGRAPH
↓
STATEMENTS
Exemplo completo simplificado
IDENTIFICATION DIVISION.
PROGRAM-ID. TESTE.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-NOME PIC X(20).
PROCEDURE DIVISION.
MAIN.
MOVE 'VAGNER' TO WS-NOME
DISPLAY WS-NOME
STOP RUN.
Como isso aparece no batch?
Muito comum:
READ ARQUIVO
↓
VALIDAR
↓
PROCESSAR
↓
WRITE RELATORIO
Tudo dentro da:
PROCEDURE DIVISION.
Como as DIVISIONs ajudam?
Elas tornam o código:
organizado;
modular;
legível;
padronizado.
Por que COBOL é tão organizado?
Porque foi criado para:
sistemas corporativos gigantes.
Grandes programas COBOL possuem:
milhares de linhas;
dezenas de SECTIONs;
centenas de PARAGRAPHs.
Curiosidades incríveis
1. O COBOL foi uma das primeiras linguagens extremamente organizadas
2. Muitas linguagens modernas herdaram ideias de modularização do COBOL
3. Sistemas bancários enormes dependem dessa organização
4. Grandes programas COBOL podem ter centenas de SECTIONs
Erros comuns de iniciantes
1. Misturar lógica na DATA DIVISION
2. Criar PROCEDURE DIVISION gigantesca
3. Não modularizar PARAGRAPHs
4. Confundir FILE SECTION com WORKING-STORAGE
Dicas importantes
Organize variáveis claramente
Separe lógica em PARAGRAPHs pequenos
Nomeie SECTIONs corretamente
Mantenha PROCEDURE DIVISION organizada
Como isso aparece no dia a dia?
Praticamente em:
COBOL batch;
CICS;
DB2;
sistemas bancários;
processamento financeiro.
Resumo rápido
| Estrutura | Função |
|---|---|
| IDENTIFICATION DIVISION | Identificação |
| ENVIRONMENT DIVISION | Ambiente/arquivos |
| DATA DIVISION | Variáveis/layouts |
| PROCEDURE DIVISION | Lógica |
| SECTION | Subdivisão |
| PARAGRAPH | Bloco lógico |
Conclusão
As DIVISIONs e SECTIONs são a base estrutural do COBOL.
Elas organizam programas em áreas específicas de identificação, ambiente, dados e lógica, permitindo criar sistemas corporativos extremamente organizados e confiáveis no ambiente mainframe IBM Z.
Sem comentários:
Enviar um comentário