Boas-vindas a mais um curso da Alura. Meu nome é Ivan Sanches.
Audiodescrição: Ivan Sanches é uma pessoa de pele branca. Tem olhos castanhos, cabelo e barba grisalhos. Usa óculos de armação quadrada e camiseta preta. Ao fundo, parede lisa sem decorações com iluminação em azul.
Neste curso, vamos aprender a desenvolver uma aplicação em COBOL (COmmon Business Oriented Language ou Linguagem Comum Orientada para os Negócios).
No dia a dia de mercado, os programas que você encontrará serão semelhantes ao que vamos trabalhar nesse curso. Evidentemente, com uma complexidade maior e uma proposta de funcionamento diferente, mas com uma estrutura bem parecida.
Nesse curso, aprenderemos a trabalhar com arquivos, tanto de entrada de dados quanto de saída de dados.
Desenvolveremos uma aplicação que faz a leitura de um arquivo de clientes, baseando a construção nas boas práticas dessa linguagem. Durante o curso, apresentaremos dicas sobre o que usar, quando usar e a melhor forma de fazê-lo.
Ao final, a proposta do exercício é que executemos um arquivo e que a aplicação faça a leitura dos dados e a gravação dos dados com uma estatística. Assim, saberemos exatamente quantos clientes foram lidos e quantos atenderam a uma determinada condição. Nossa aplicação terá uma condição, chamada regra de negócios, para que o arquivo de saída seja gerado.
Com isso, nossa aplicação seguirá a proposta tradicional de programas COBOL: recebemos um arquivo, o processamos a partir de regras de negócio e devolvemos um arquivo resultante disso.
Esperamos que você aproveite esse conteúdo. Te aguardamos no próximo vídeo!
Nesta aula, vamos fazer a compilação do nosso primeiro programa em COBOL. Estamos utilizando o Visual Studio Code, onde já temos um workspace padrão definido. Falta apenas anexar uma pasta.
Sugerimos criar uma pasta no seu diretório raiz com o nome "CURSO_COBOL", em maiúsculas. Para evitar espaço no nome da pasta, utilizamos underline para separar as palavras.
Após criar a pasta, voltamos ao Visual Studio para adicioná-la. Basta clicar em "File > Open Folder" no menu superior (ou atalho "Ctrl + K Ctrl + O") e escolher a pasta que acabamos de criar.
No painel de exploração à direita, vamos clicar em "New File" para criar nosso primeiro arquivo, que chamaremos de OLACOBOL
em maiúsculo. Em seguida, precisamos definir a extensão específica do COBOL, que é .COB
.
É importante que o nome do arquivo não seja muito longo, pois isso pode causar problemas posteriormente. Portanto, o nome do arquivo será OLACOBOL.COB
.
Ao abrir o arquivo no editor do Visual Studio, notamos uma estrutura diferente da convencional, com margens que foram configuradas pela extensão de apoio instalada anteriormente.
Para começar a codificar nosso primeiro programa, vamos criar a divisão de identificação do programa a partir da coluna 8. Fazemos isso através do código IDENTIFICATION DIVISION
, em maiúsculo e seguido de ponto final. Neste momento, não precisamos entender o que é ou para que serve esse código, apenas queremos testar a compilação.
Em seguida, usamos o parágrafo PROGRAM-ID
seguida de um ponto final para identificar o nome do programa. No nosso caso, será OLACOBOL
, sem a extensão .COB
. Este nome deve ser o mesmo do arquivo de disco. Lembre-se de adicionar outro ponto final após o nome do programa.
OLACOBOL.COB
:
IDENTIFICATION DIVISION.
PROGRAM-ID. OLACOBOL.
Vamos adicionar outra divisão do COBOL, a PROCEDURE DIVISION
, também a partir da coluna 8. Com o tempo, poderemos utilizar a IntelliSense do editor, mas por enquanto, vamos codificar manualmente.
Em seguida, vamos codificar a saída do programa, nosso famoso "OLÁ MUNDO". Para isso, utilizaremos o comando DISPLAY
a partir da coluna 12 para exibir a mensagem "OLA COBOL", entre aspas. Finalizamos o comando com ponto final.
Por fim, acrescentaremos o comando STOP RUN
, que termina a execução do programa COBOL. Deve haver pelo menos um STOP RUN
por programa. Novamente finalizamos o comando com ponto final.
IDENTIFICATION DIVISION.
PROGRAM-ID. OLACOBOL.
PROCEDURE DIVISION.
DISPLAY "OLA COBOL".
STOP RUN.
Após codificar, salvamos o arquivo. Basta acessar "File" no menu superior e clicar na opção "Save" (ou atalho "Ctrl + S").
Para compilar, habilitamos o terminal integrado no VS Code através do menu superior em "Terminal > New Terminal" (ou atalho "Ctrl + J").
No terminal, precisamos chamar o compilador chamado cobc
para verificar se está ativo:
cobc
Saída: cobc error: no input files
A mensagem que recebemos indica que o compilador está ativo, mas espera a especificação de um arquivo de entrada.
Depois de cobc
, acrescentamos o parâmetro -x
, em letra minúscula, seguido do nome do programa que, no nosso caso, é OLACOBOL.COB
. Apertamos a tecla "Enter" para fazer a compilação.
cobc -x OLACOBOL.COB
Saída: OLACOBOL.COB 5: warning: line not terminated by a new line
Após a compilação, pode surgir um aviso sobre a necessidade de terminar o programa com uma nova linha, mas isso será corrigido nas próximas aulas.
O programa compilado gera um arquivo .EXE
. Para verificar esse programa, basta digitar ponto e barra (./
) para indicar a pasta em que estamos e o nome do programa, ou seja, OLACOBOL.EXE
.
Certifique-se de especificar o nome do programa e a extensão com a mesma capitalização do arquivo gerado. O Windows não é sensível à capitalização, mas no Linux, o nome deve ser exato.
./OLACOBOL.exe
Saída: OLA COBOL
Nosso primeiro programa está compilado no Visual Studio. Após verificar a mensagem retornada, podemos sair do terminal com o comando exit
.
exit
Concluímos nosso primeiro código. É um código simples, mas funcional.
Vamos agora analisar com mais detalhe como é feita a distribuição e a estrutura do código. Você deve ter notado uma diferença em relação a linguagens mais comuns, como Java e Python, que possuem outra maneira de codificação. O COBOL tem suas particularidades.
Antes de falar sobre a distribuição, é importante entender por que ela existe. O COBOL é uma linguagem desenvolvida na década de 60, quando a entrada de dados era feita por cartões perfurados.
Esses cartões possuíam um número específico de linhas e colunas. Uma vez que o conjunto de cartões era inserido, eles se transformavam no programa. Essa distribuição de linhas e colunas acabou se tornando o padrão do COBOL. Portanto, quando mencionamos o padrão COBOL, estamos nos referindo ao padrão de cartões perfurados.
Vamos entender isso melhor. O COBOL funciona com cinco grandes áreas de trabalho:
*
) indica que a linha é um comentário e hífen (-
) indica que a linha será de continuação;A primeira área vai da coluna 1 à 6. Evitamos digitar qualquer coisa nessa área, pois utilizamos esse espaço para documentação do programa. Por exemplo, se fizermos uma alteração em uma linha de código, podemos escrever nosso nome nessa área.
A coluna 7 é especial e pode indicar, por exemplo, um comentário. Em linguagens como Java, usamos barra e asterisco ou barra dupla, enquanto no Python, utilizamos a cerquilha. No COBOL, devemos colocar um asterisco na sétima coluna para que o restante seja entendido como comentário.
Nas colunas 8 a 11, temos a primeira grande área, chamada de área A. Nela, escrevemos as macro-seções do COBOL, conhecidas como divisões, seções e parágrafos. É uma área onde colocamos os macro-elementos do código, por isso, a distribuição do código está concentrada nessas áreas.
Nas colunas 12 a 72, temos a área B, onde codificamos a lógica e os comandos, isto é, toda a parte performática do código.
Nas colunas 73 a 80, o compilador do COBOL usa para identificar o número de linhas. Quando há um erro em determinado código, o compilador indica a linha e especifica o erro.
Vamos voltar ao VS Code e entender o programa que havíamos escrito anteriormente. Na área A, que é a oitava coluna, definimos duas divisões: IDENTIFICATION DIVISION
e PROCEDURE DIVISION
.
Para adicionar um comentário, bastaria adicionar um asterisco, na coluna 7, seguido do comentário. Assim, essa linha não será compilada. Os comandos DISPLAY
e STOP
estão escritos na coluna 12.
Colunas 01 a 06 | Coluna 07 | Colunas 08 a 11 | Colunas 12 a 72 | Colunas 73 a 80 |
---|---|---|---|---|
IDENTIFICATION DIVISION. | 000010 | |||
PROGRAM-ID. OLACOBOL. | 000020 | |||
* | COMENTARIO | 000030 | ||
PROCEDURE DIVISION. | 000040 | |||
DISPLAY "OLA COBOL". | 000050 | |||
STOP RUN. | 000060 |
Em 2002, o COBOL passou por uma reformulação que permite uma nova estrutura chamada Free Format. Nesse formato, não há a restrição de 80 caracteres por linha e as linhas não precisam mais respeitar as áreas.
Em outras palavras, o programa pode começar e terminar em qualquer ponto. O problema é que, mesmo com essa opção, a maioria dos programas que encontramos para manutenção ou que fazem parte de sistemas empresariais estão no modelo estruturado.
Com isso, adquirimos um pouco mais de conhecimento sobre a estrutura de um programa COBOL.
O curso Cobol: desenvolvendo aplicações com dados possui 224 minutos de vídeos, em um total de 61 atividades. Gostou? Conheça nossos outros cursos de em Programação, ou leia nossos artigos de Programação.
Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.