You are on page 1of 31

1

ANHANGUERA EDUCACIONAL
Universidade Anhanguera de So Paulo - Santo Andr - Unidade 3

CINCIA DA COMPUTAO CCS4A

Cleiton da Silva Vasconcelos RA: 1571223802

Kau Flocco- RA: 2485697121

Jos Anilto dos Anjos RA 2485827201

Vitor Andretta RA 1583970425

A linguagem COBOL

Santo Andr

2017
2

Cleiton da Silva Vasconcelos RA: 1571223802

Kau Flocco- RA: 2485697121

Jos Anilto dos Anjos RA 2485827201

Vitor Andretta RA 1583970425

A linguagem COBOL

Atividade Prtica Supervisionada (ATPS)


da matria Programao Orientada a
Objetos, do curso Cincia da Computao
- CCS5A.

Orientador: Prof. Joo Paulo Silvano

Santo Andr

2017
3

RESUMO

COBOL (Common Business Oriented Language) uma linguagem de programao voltada


aos negcios, criada em 1959, e atualmente estima-se que 80% dos negcios do mundo
empreguem sistemas desenvolvidos em COBOL. Neste trabalho procuramos mostrar um
pouco da histria desta linguagem de programao, apresentar suas caractersticas bsicas, e
discorrer sobre sua utilizao no mercado atual.

Palavras-Chave: COBOL. Linguagem de programao. Grace Hopper.


4

LISTA DE ILUSTRAES

Fig 1 Grace Hopper no MARK I ................................................................................. 9


Fig. 2 Grace Hopper e Howard Aiken ... 10
Fig. 3 Grace Hopper no Univac .................................................. 11
Fig. 4 O relatrio do bug................... 12
Fig. 5 Banner do FlowMatic..................................... . 13
Fig. 6 Capa do relatrio do CODASYL 1960 ................................................ 14
Fig 7. Exemplo de um programa COBOL ................................................................... 17
Fig. 8 Exemplo da IDENTIFICATION DIVISION .................................................... 18
Fig. 9 Exemplo da ENVIRONMENT DIVISION........................................................ 19
Fig. 10 Exemplo da DATA DIVISION ....................................................................... 20
Fig. 11 Exemplo da PROCEDURE DIVISION .......................................................... 21
Fig. 12 Formulrio de codificao COBOL ................................................................ 22
5

LISTA DAS PRINCIPAIS ABREVIATURAS

AIMACO Air Materiel Command 1

ANS American National Standard

ANSI American National Standards Institute

ASCC - Automatic Sequence Controlled Calculator

COBOL Common Business Oriented Language

CODASYL Conference/ Commitee on Data System Languages

COMTRAN Comercial Translator

ENIAC Electronic Numerical Integrator and Computer

FORTRAN Formula Translator

IBM International Business Machines

IEC International Electrotechnical Commission

ISO International Standard Organization

UNIVAC Universal Automatic Computer

1 AIMACO Foi uma diviso do Air Technical Service Command, que usou sua
sigla para nomear a linguagem de programao desenvolvida pela Fora Area
dos EUA na dcada de 50.
6

SUMRIO

1. Introduo7

2. Um pouco da histria da linguagem COBOL.........................................................................9

2.1 Grace Hopper....................................................................................................................9


2.2 As verses do COBOL....................................................................................................15

3. A linguagem..........................................................................................................................17

3.1 As divises do COBOL...................................................................................................18


3.2 As variveis em COBOL................................................................................................24
3.3 Palavras reservadas em COBOL.....................................................................................26

4. O mercado de trabalho e a aprendizagem do COBOL.........................................................27

5 Concluso...............................................................................................................................30

Referncias................................................................................................................................31
7

1. Introduo

COBOL, acrnimo de Common Business Oriented Language, criada em 1959 por um


comit designado pelo Departamento de Defesa americano, hoje uma linguagem largamente
empregada no mundo dos negcios, predominantemente em mainframes. No entanto, pouco
explorada pelos meios acadmicos, pois o estudo dessa linguagem no includo nos
currculos das universidades. Apesar disso, a linguagem COBOL continua altamente relevante
no mundo corporativo.

Segundo a Micro Focus2, uma empresa que fornece servios e produtos baseados em
COBOL para grandes corporaes, cerca de 70% de todas lgica e dados de negcios crticos
so escritos nesta linguagem, que a mais utilizadas por instituies financeiras e de varejo.
Observa ainda que a plataforma agrega grande valor para as empresas, principalmente pela
quantidade de dados que capaz de processar. H, pelo menos, cinco pontos que so
vantajosos para as empresas:

Segurana Por ser utilizada em instituies financeiras e governamentais, a


segurana propiciada pela linguagem a tornou referncia no tratamento de dados
e informaes sigilosas.
Performance Capaz de processar grandes volumes de dados com extrema
rapidez, principalmente em rotinas pr-programadas, aumentando de forma
considervel a capacidade de processamento durante os ciclos reservados para
isso.
Custos como altamente estvel, as empresas adotam estratgias de
integrao de sistemas sem abandonar as aplicaes escritas na linguagem, o que
reduz os custos de expanso e modernizao das bases instaladas.
Adaptabilidade a linguagem COBOL, com o passar dos anos, adaptou-se aos
novos hardwares que foram surgindo, e atualmente adapta-se perfeitamente com
novas plataformas, como, por exemplo, a plataforma .NET, facilitando a
integrao de aplicaes.
Dependncia operacional empresas tradicionais como bancos, seguradoras,
redes de varejo, construram seus sistemas em COBOL, o que tornou a
linguagem o ncleo dessas companhias, alm do que, uma caracterstica de tais

2 https://blog.microfocus.com/cobol-the-language-for-future-generations/
8

sistemas sua longevidade. Ento o COBOL continua sendo a pea central


nessas organizaes.

Um dos maiores desafios atuais dos profissionais de TI criar pontes entre os sistemas
tradicionais e o que surge de novo, como cloud e mobile, sem perder os capitais investidos,
por isso o conhecimento dessa linguagem um requisito altamente desejado para esses
profissionais.

Para melhor conhecer o COBOL, vamos traar um breve histrico da linguagem no


captulo 2, mostrar suas principais caractersticas no captulo 3, e, no captulo 4, discorrer
sobre o atual mercado de trabalho para os profissionais de tecnologia que possuem em seu
currculo o conhecimento sobre COBOL.
9

2. Um pouco da histria da linguagem COBOL.

2.1 Grace Hopper

Para chegar gnese do COBOL, necessrio conhecer antes a histria de Grace


Hopper, que hoje considerada a me do COBOL.

Fig. 1 - Tenente Grace Hopper codificando um problema em fita perfurada no MARK I -.Fonte:
Bettmann/Bettmann Archive

Nascida em 1906, ela se formou no Vassar College em matemtica e fsica, e depois foi
para a Universidade Yale, onde concluiu um doutorado em matemtica, no ano de 1934.
Depois de se casar com um professor de literatura comparada, Vincent Hopper, Grace se
tornou professora em Vassar. Como nos conta Walter Isaacson (2014, p. 101) ao contrrio de
outros professores de matemtica, ela insistia que seus alunos escrevessem bem. Em suas
aulas, os alunos deveriam responder aos questionamentos, alm da preciso matemtica, com
clareza e estilo.

Em sua carreira, ela se destacou pela sua capacidade de traduzir problemas cientficos
em equaes matemticas, e depois em ingls cotidiano. Esse talento a ajudou a se tornar uma
excelente programadora.
10

Em 1940, entediada com a rotina das aulas em Vassar, tirou uma licena para estudar
com o renomado matemtico Richard Courant, na Universidade de Nova Iorque. Ela ainda
estava estudando com ele quando, em dezembro de 1941 os Estados Unidos entraram na
Segunda Guerra Mundial. Com isso ela achou um caminho para seguir em sua vida. Um ano e
meio depois do ataque, ela saiu de Vassar, divorciou-se do marido e entrou para a marinha
americana. Em junho de 1944, ela se formou tenente como a primeira colocada de sua turma.

Ela achava que ia ser designada para um grupo de criptografia e decodificao, mas
recebeu ordens para se apresentar na Universidade Harvard para trabalhar no ASCC
(Automatic Sequence Controlled Calculator), apelidado MARK I, o poderoso computador
digital construdo com rels por Howard Aiken. Na poca em que Hopper foi designada para
o projeto, a mquina havia sido incorporada Marinha, e Aiken estava no comando.

Fig 2. Fonte: National Museum of American History

Quando se apresentou a Aiken, este lhe entregou uma cpia das memrias de Charles
Babbage e a levou para conhecer o Mark I. Havia um grande volume de mquinas fazendo
uma imensa balbrdia, recordaria ela em entrevistas posteriores. Os mecanismos todos
expostos, a mquina era inteiramente aberta e muito barulhenta. Percebendo que precisaria
entender a mquina, passou vrias noites estudando o projeto, e graas a sua capacidade de
saber abstrair problemas do mundo real para equaes matemticas, foi capaz de traduzir
11

essas equaes por meio de comandos que a mquina podia entender.

Aproveitando a capacidade dela de se comunicar com preciso, Aiken a designou para


escrever um livro. Apesar de sua relutncia, pois achava que no saberia escrever um livro,
Grace acabou escrevendo um volume de quinhentas pginas, que trazia no s a histria da
computao desde Pascal, Leibnitz e Babbage, mas tambm um primeiro manual de
instrues completo para o MARK I.

Fig . 3 - Grace Hopper e o Univac

Fonte: National Museum of American History.

Grace Hopper se tornou exmia programadora. Dentre as prticas de programao que


aperfeioou, estava a criao de sub-rotinas (trechos de programas que podiam ser repetidos
em diferentes partes do programa). Essas sub-rotinas eram chamadas por um nico cdigo.
Criou uma extensa biblioteca de sub-rotinas, que eram gravadas em pedaos de fita
perfuradas. Quando era necessrio incluir a sub-rotina no programa, esses pedaos eram
montados nos locais adequados de acordo com seu cdigo. Assim o programador, em vez
de reescrever o trecho da sub-rotina, apenas colocava o cdigo adequado, criando assim uma
linguagem de montagem (assembling). Talvez da tenha surgido a designao de assembly
para a codificao que, em lugar dos cdigos numricos, usa mnemnicos para as instrues,
que depois so traduzidos em cdigos numricos por um montador (assembler).

Tambm creditado a Grace Hopper o temo bug, para as panes dos computadores.
Conta-se que em certa noite, a mquina entrou em pane, e a equipe comeou a procurar o
12

problema, at que encontraram uma mariposa eletrocutada entre os circuitos. No relatrio


feito por Hopper, constava primeiro caso real de inseto (bug) encontrado, com a mariposa
anexada ao papel.

Fig. 4 - Relatrio do Bug

Fonte: Computer History Museum

Grace estava sempre atenta s inovaes. Em 1949 foi trabalhar na empresa que Presper
Eckert e John Mauchly haviam fundado, que depois tornou-se parte da Remington Rand,
depois Sperry Rand, e depois Unisys. Eckert e Mauchly haviam desenvolvido o Eniac durante
a Segunda Guerra Mundial, e depois disso aprimoraram o projeto, construindo os Univac, que
eram computadores movidos a vlvulas termoinicas, centenas de vezes mais rpidas do que
os rels eletromecnicos. Alm disso, empregavam o paradigma Von Neumman, como ficou
conhecido o conceito de programa armazenado, desenvolvido por eles e por Von Neumman (o
MARK I representava o paradigma Harvard, onde as instrues e dados entravam
paralelamente no processamento).

A essa altura os computadores j estavam em evidncia em diversas instituies.


Quando Grace chegou empresa Eckert-Mauchly, props que se estudasse uma linguagem
para programar computadores que fosse mais prxima linguagem natural. Apesar dos
diretores da empresa no darem muita importncia a isto, ela dedicou-se ao projeto, e em
1952 havia criado o primeiro compilador funcional do mundo, apelidado de A-0. Esse
compilador traduzia cdigos simblicos em cdigos de mquina, o que facilitava a
codificao de programas.

Como tinha uma mente aberta em relao computao, Grace achava que em um
13

futuro prximo esta estaria disponvel para muitas empresas, e por isso haveria a necessidade
de mais pessoas aprenderem a programar. Assim pensando, ela distribuiu as verses iniciais
de seu compilador aos colegas de outras empresas. Talvez isso tenha proporcionado o boom
de criao de linguagens de programao.

Em 1953, props que linguagens de programao deveriam ser expressas com estrutura
sinttica semelhante ao ingls, e no com cdigos difceis de memorizar. Ela mesma, usando
seu compilador, desenvolveu uma linguagem comercial com esse princpio, que batizou como
B-0, ou Business Language, que depois foi aprimorada e se tornou o FlowMatic, a primeira
linguagem voltada a negcios do mundo, lanada em 1955.

Fig. 5 - Banner do FlowMatic

Fonte: http://marcgg.com/blog/2015/02/02/grace-murray-hopper-technical/

Enquanto isso, a IBM colocou a sua equipe para trabalhar em duas linguagens, usando o
princpio do compilador e as ideias de Grace Hopper: o FORTRAN (Formula Translator),
destinado a aplicaes cientficas, e o COMTRAN (Comercial Translator), destinado a
negcios. Tambm a Fora area produziu uma linguagem, a AIMACO, que era inteiramente
baseada no FlowMatic.

O FORTRAN ficou pronto em 1957, quando a IBM lanou um compilador completo


para a linguagem. FORTRAN influenciou a criao de outras linguagens, como o Algol, de
onde derivaram linguagens como o Pascal, Simula, Scheme, C, PL/1, entre outras, o BASIC e
MUMPS.

Em abril de 1959, o Departamento de Defesa dos Estados Unidos achou por bem criar
um padro comum para as linguagens usadas nos negcios, e criou o CODASYL, Committe
14

on Data System Languages, que reuniu representantes de seis empresas de computao da


poca: Burroughs Corporation, IBM, Minneapolis-Honeywell, RCA, Sperry Rand e Sylvania
Electric Products. Alm de trs agncias governamentais: Fora Area, Marinha e National
Bureau of Standad. Como principal consultora tcnica, foi designada Grace Hopper.

Esse comit examinou as vrias linguagens, especialmente a AIMACO, CONTRAN e


FlowMatic. Ao final, a AIMACO teve pouca influncia, pois era derivada da FlowMatic.
Quando o CODASYL realizou sua conferncia em 28 e 29 de dezembro daquele ano,
terminou por estabelecer os padres da nova linguagem, que era baseado 95% no FlowMatic e
5% no COMTRAN.

Ainda durante os trabalhos do CODASYL, vrios nomes foram cogitados para a nova
linguagem, tais como INFOSYL (Information System Language), COCOSYL (Common
Computer System Language), e COBOL (Common Business Oriented Language),
prevalecendo este ltimo.

Fig. 6 Capa do relatrio da CODASYL.

https://en.wikipedia.org/wiki/File:COBOL_Report_Apr60.djvu

Assim, em 29 de dezembro de 1959, o COBOL foi criado oficialmente como um padro


de linguagem voltado aos negcios. O relatrio da conferncia, incluindo as especificaes
iniciais da linguagem COBOL foi publicado em 3 de janeiro de 1960.

Depois disso, a IBM ainda tentou emplacar o COMTRAN, trabalhando na linguagem


15

por mais dois anos, mas, em 1962, rendeu-se definitivamente ao COBOL e encerrou o projeto.

2.2 As verses do Cobol

Entre o seu nascimento e o ano de 1967, o COBOL passou por inmeros


desenvolvimento e melhorias, o que fez com que a padronizao adotada em 1960 j no
atendesse completamente s necessidades, e os diversos fornecedores da linguagem
adotassem diferentes solues para as demandas surgidas.

Em 1966 Grace Hopper se aposentou da Marinha, por conta de sua idade. Porm foi
chamada novamente para resolver problemas com a folha de pagamento, quando deveria
servir mais seis meses. Porm esses seis meses se prolongaram por 20 anos, e ela s foi
definitivamente aposentada em 1986, no posto de Contra-Almirante.

Logo que retornou ativa, em 1967, foi designada para auxiliar o CODASYL na
reviso do COBOL, cujo objetivo era conciliar todos os avanos em um padro nico,
surgindo da o COBOL 1968, ou ANS COBOL 1968 (American National Standard COBOL
1968. Depois disso houveram apenas mais quatro revises: 1974, 1985, 2002 e 2014.

ANS COBOL 1968 serviu para harmonizar os diversos avanos da linguagem


em um padro nico.
ANSI COBOL 1974 em 1970 COBOL j era a linguagem mais utilizada no
mundo. A CODASYL continuava trabalhando em melhorias, e em 1974, a
ANSI (American National Standard of Industries) que havia assumido a
padronizao do COBOL, lanou uma reviso com incluso de alguns novos
recursos, especialmente no tocante s entradas e sadas, incluindo mdulos de
acesso aleatrio.
ISO COBOL 1985 a ISO (International Standard Organization) adotou a
padronizao do COBOL, e em 1985 publicou novas alteraes voltadas a uma
melhor estruturao da linguagem, como, por exemplo, terminadores de escopo
(end-if, end-perform, etc).
ISO COBOL 2002 A principal novidade dessa atualizao foi a incorporao
da orientao a objetos ao COBOL, a fim de permitir uma melhor iterao da
linguagem com as plataformas mais modernas.
ISO-IEC 1998-2014 a ltima atualizao, que consolida definitivamente a
16

orientao a objetos e integrao a plataformas virtuais, como JVM e .NET.

Podemos dizer que a linguagem COBOL tem acompanhado a evoluo da computao


desde seu nascedouro, e hoje a linguagem mais segura em ambientes de grande porte, onde
exigida rapidez e preciso nas tarefas. Longe de ser uma linguagem antiquada, seu
desenvolvimento, especialmente a ltima verso, indica que ela ainda tem um longo caminho
pela frente.

Os programas COBOL so usados globalmente por governos e empresas, e esto


rodando em diversos sistemas operacionais, tais como o Z/OS, VME, Unix, OpenVMS e
Windows. Estima-se que cerca de trezentos bilhes de linhas de cdigo esto em operao, e a
cada ano 5 bilhes de linhas so acrescidas. A tendncia que, empresas que estejam
migrando de sistemas mais caros de Mainframes para plataformas menores e mais avanadas
mantenham seus cdigos, pois a substituio extremamente onerosa e insegura.

Com isso, o COBOL ganha mais espao na computao mundial. Vale a pena as
instituies de ensino retomarem o COBOL em seus currculos.
17

3. A linguagem

O COBOL nasceu tendo como meta servir ao mundo dos negcios. Assim, apresenta as
caractersticas bsicas:

Acesso rpido a arquivos e bases de dados;


Manipulao de grandes massas de dados;
Facilidade de construir interfaces de entrada e sada de dados (telas, relatrios);
Estvel, simples, livre e de fcil manuteno.
Auto documentado;
Organizao rgida do cdigo.

Fig 7 Exemplo de programa COBOL (dos autores)

O COBOL inaugurou as linguagens de escrita parecidas com a linguagem natural, e


estruturada em nveis: Programa, divises, sees, pargrafos, sentenas e declaraes. Como
18

se pode observar na imagem anterior, usa palavras comuns do lxico ingls. O programa
mostrado na imagem um programa simples, escrito em OpenCOBOL (uma verso livre
disponvel para vrias plataformas em https://open-cobol.sourceforge.io/ ).

3.1 As divises do COBOL.

Divises so os maiores elementos estruturais do COBOL. So quatro:


IDENTIFICATION DIVISION, ENVIRONMENT DIVISION, DATA DIVISION e
PROCEDURE DIVISION.

A IDENTIFICATION DIVISION tem o propsito de prover informaes sobre o


programa, o compilador e o linker. O pargrafo PROGRAM-ID o nico de presena
obrigatria. Outros pargrafos dentro da IDENTIFICATION DIVISION, como AUTHOR e
DATA_WRITEN so opcionais, dependendo das regras de cada empresa desenvolvedora.

Fig 8 Exemplo de IDENTIFICATION DIVISION.

Fonte: Beginning COBOL for programmers -Michael Coughlan -pg 24ref.

A ENVIRONMENT DIVISION usada para descrever o ambiente em que o programa


ir funcionar. Ele isola em um nico lugar todos os aspectos do ambiente necessrios, e a
ideia principal permitir que sejam feitas alteraes facilmente para que o programa possa
funcionar em diferentes ambientes, com diferentes dispositivos perifricos, ou diferentes
aspectos regionais.

A ENVIRONMENT DIVISION possui duas sees: a CONFIGURATION SECTION e


a INPUT-OUTPUT SECION. A CONFIGURATION_SECTION, no pargrafo SPECIAL-
NAMES, define que alfabeto ser usado, o tipo de moeda, o smbolo de ponto decimal (ponto,
virgula). J a INPUT-OUTPUT SECTION, no pargrafo FILE-CONTROL, define como ser
feita a conexo de nomes internos com os dispositivos externos.
19

Fig 9 Exemplo de ENVIRONMENT DIVISION.

Fonte: Beginning COBOL for programmers -Michael Coughlan -pg 25ref.

A DATA DIVISION usada para descrever a maior parte dos dados usados no
programa. Uma exceo bvia so as literais, que so definidas no corpo do programa como
strings literais ou valores numricos literais. A DATA DIVISION divide-se em quatro sees:
FILE SECTION, WORKING-STORAGE SECTION, LINKAGE SECTION e REPORT
SECTION.

A FILE SECTION descreve os dados que sero recebidos ou enviados para os


dispositivos perifricos de armazenamento de dados. Estes dispositivos podem ser leitores de
carto, drives magnticos, hard disks, CDs, e DVDs.

A WORKING-STORAGE SECTION descreve as variveis que sero usadas no


programa. Um ponto interessante que as variveis de modo geral so estruturadas em
hierarquias, formando assim estruturas semelhantes a registros que so facilmente acessveis.
Por exemplo:

01 DataNascimento.
20

02 AnoNascimento.
03 SecNascimento PIC(99).
03 Ano2casas PIC (99).
02 MesNascimento PIC (99).
02 Dia nascimento PIC(99).

A varivel DataNascimento ter um tamanho de 8 digitos, podendo ser acessada no todo


ou por qualquer de seus elementos subordinados. Se queremos apenas o ano de nascimento
em duas casas (57, por exemplo), simplesmente acessamos Ano2casas.

A LINKAGE SECTION usada somente quando h subprogramas, e a REPORT


SECTION usada quando h a gerao de relatrios impressos.

Fig 10 Exemplo de DATA DIVISION

Fonte: Beginning COBOL for programmers -Michael Coughlan -pg 26ref.

Por fim, a PROCEDURE DIVISION onde todos os dados descritos na DATA


DIVISION so processados. onde o algoritmo do programa desenvolvido.

Fig. 11 Exemplo de PROCEDURE DIVISION


21

Fonte: Beginning COBOL for programmers -Michael Coughlan -pg 26ref.

3.2 O formato do cdigo.

Como herana dos tempos iniciais, onde os cdigos eram escritos mo e depois
perfurados em cartes ou fitas, a codificao dos programas COBOL tinha regras bastante
rgidas. Em primeiro lugar, era necessrio usar uma folha especial, a folha de codificao, que
era dividida em um cabealho, e abaixo 80 colunas e 30 linhas.

O cabealho correspondia IDENTIFICATION DIVISION. As demais divises eram


escritas na rea de 80 X 30.

As seis primeiras colunas eram reservadas a uma numerao sequencial das linhas, a
stima coluna servia para caracteres especiais que indicavam comentrios (*) ou continuao
de valores constantes no numricos da linha anterior (-). Da coluna 8 a 72 era a rea de
codificao, e as colunas 73 a 80 restantes eram opcionalmente usadas para cdigos de
identificao do programa.

Ainda as colunas 8 a 72 eram divididas em duas reas: a rea A, da coluna 8 a 11, onde
iniciavam os nomes das divises, sees e pargrafos, e a rea B, da coluna 12 em diante,
onde iniciavam os comandos e clusulas.
22

Fig Formulrio de codificao COBOL

Fonte: http://www.csis.ul.ie/cobol/course/COBOLIntro.htm

Nos aplicativos de desenvolvimento mais antigos, esse padro foi transcrito para as telas
dos monitores, porm, desde o ISO COBOL 2002, h a opo do formato livre, onde cada
linha pode ter at 255 caracteres, sendo o comentrio indicado por um asterisco seguido do
sinal de maior (*>), colocado no incio da linha.
23

Fig Exemplo de codificao pelo padro anterior a 2002 (segue o modelo dos antigos formulrios)

Fonte: os autores.
24

Fig Exemplo do modo livre de codificao.

Fonte: os autores.

3.2 As variveis em COBOL

O COBOL simples, tem apenas trs tipos de dados: Literais, constantes figurativas e
itens de dados. Literais so itens de dados que tem seu valor definido durante a criao e no
podem ser modificados. H dois tipos de literais: alfanumricas e numricas.

Ex.: 01 TaxaJuros CONSTANT AS .06


25

Uma deficincia do COBOL no permitir a criao de constantes figurativas definidas


pelo usurio, porm isso contornado pelo uso de literais. As constantes figurativas so pr-
definidas na linguagem. Exemplos: ZERO ou ZEROES, SPACE ou SPACES, HIGH-VALUE
ou HIG-VALUES, LOW-VALUE ou LOW-VALUES, QUOTE ou QUOTES, e, grosso modo,
todas as literais podem ser usadas como constantes figurativas.

J os itens de dados (variveis) podem ser definidos como numricos e alfanumricos.


Para declarao itens de dados, h trs clusulas essenciais: o nmero do nvel, o nome do
dado e a clusula PICTURE, que define o tamanho e tipo do dado.

Ex:

01 DataNasc PICTURE 9999999999. (Um dado numrico -9-.)

01 Nome PIC X(15) (Um dado alfanumrico -X-, com tamanho 15.

01 Peso PIC 99V99 (Dado numrico com duas casas decimais. V indica o ponto
decimal)

01 Temperatura PIC S99 (Dado numrico com sinal -S-).

PIC abreviatura da clusula PICTURE.

Um exemplo de item de dado composto.

01 DataNasc.

02 AnoNasc PIC 9999.

02 MesNasc PIC 99.

02 DiaNasc PIC 99.

O item de dado (varivel) DataNasc possui 8 caracteres.

O tipo de dados indicado na clusula PICTURE, podendo ser: A para alfabtico, X


para alfanumrico, 9 para numrico. V indica ponto decimal, e S o sinal do nmero.
26

3.3 Palavras reservadas em COBOL.

Uma caracterstica que assusta primeira vista o nmero de palavras usadas em


COBOL. Enquanto algumas linguagens possuem pouco mais de 30 palavras reservadas, o
COBOL possui por volta de 300. O COBOL sempre foi criticado por sua verbosidade, no
entanto, seus defensores dizem que isso foi proposital, a fim de descrever com maior preciso
o que se deseja do programa. E, de fato, isso faz sentido, pois ao ler uma listagem de
programa COBOL apreende-se muito mais facilmente o contedo, pois assemelha-se bastante
linguagem natural. Nas linguagens mais sintticas, h necessidade de se decifrar os
mnemnicos, o que prejudica o entendimento por pessoas no acostumadas a tais linguagens.
por isso que se diz que o COBOL auto documentado, pois seu prprio cdigo fonte serve
para o propsito de documentao, no necessitando documentos separados para explicar os
cdigos.

Comparem os fragmentos de cdigo:

C:

... for (i=0; i<5, i++) { funcao();}

COBOL:

PERFORM funcao VARYING i FROM 1 BY 1 UNTIL i=5.

Ambos os cdigos fazem a mesma coisa (executam a funo funcao 5 vezes). O cdigo
em C mais resumido, porm mais obscuro. Possui apenas uma palavra reservada e uma
poro de smbolos delimitadores e de clculo para executar uma funo cinco vezes. J o
cdigo em COBOL parece, para os falantes do ingls), uma frase comum. Algo do tipo:
EXECUTE funcao VARIANDO i A PARTIR DE 1 POR 1 AT i = 5.

No h nenhum mistrio em decifrar a linguagem.


27

4. O mercado de trabalho e a aprendizagem do COBOL

H um equvoco nos meios acadmicos com relao ao aprendizado do COBOL.


Muitos pensam: por que aprender uma linguagem da dcada de 60?. Outros acham que o
COBOL to irrelevante quanto o latim clssico. Outros ainda acham que uma linguagem
morta.

Depois, essas pessoas mostram-se surpresas ao saber que o COBOL ainda est presente
em tudo. A maioria dos estudantes ao se depararem com o COBOL poderiam ponderar por
que estudar uma linguagem antiga, se podem estudar as modernas, como C#, Java ou .NET.
Atualmente apenas 5% das instituies acadmicas tem o COBOL em seu currculo regular.

A maioria dos estudantes acha que o COBOL est morto ou desatualizado, e isso
simplesmente no verdade. Quase 60 anos depois de sua criao, o COBOL est presente
em 70% de todas as transaes comerciais do mundo. Est em toda parte, desde caixas
eletrnicos, pontos de venda a sistemas de sade. Est presente em 80% das aplicaes de
negcios. Existe uma gama to grande de cdigos COBOL em operao que simplesmente
impossvel jogar fora. Sem COBOL, as comunicaes em todo mundo entrariam em colapso.

Mas o desconhecimento no s culpa do desprezo do meio acadmico. O COBOL,


como uma linguagem que promove extrema segurana, est normalmente oculta em sistemas
fechados, em aplicaes crticas, ou seja, por trs do cenrio. Alm disso, ela mais
fortemente empregada nos grandes sistemas computacionais, mainframes, e pouqussimo nos
pequenos sistemas, nas pequenas redes ou computadores pessoais. uma linguagem que
trabalha melhor em grandes tarefas e grandes sistemas. Ou seja, no tem visibilidade como os
sistemas menores, at por conta da segurana. As linguagens como Java e C# so boas para a
experincia com o usurio, a interface front-end. Essas linguagens mais modernas parece ser a
escolha natural de quem est iniciando no mundo tecnolgico, no s pelo apelo visual, mas
pela disponibilidade de dispositivos ao alcance do estudante.

Entretanto, quem pensa grande, numa carreira promissora e com bons salrios, deveria
preocupar-se com o COBOL. Ao contrrio do que muitos acham, no uma linguagem morta,
e est cada vez mais presente no cotidiano, e necessita de profissionais para desenvolvimento
e manuteno dos sistemas. pensar grande, porque so grandes responsabilidades.
28

J se pensou em reescrever os sistemas COBOL em linguagens mais modernas. Pelo


menos 75% desses projetos falharam. As empresas que tem seus sistemas em COBOL no
mais imaginam em acordar um dia e substitu-los por Java, por exemplo. O custo muito alto,
e no se sabe se resistiro ao tempo, nem quo robustos sero para competir com a
longevidade do COBOL. Para muitos, o COBOL permanente.

Em contrapartida, os bons profissionais de COBOL esto envelhecendo, e, com o canto


da sereia das linguagens modernas, poucos profissionais COBOL esto se formando. J se
nota uma escassez de mo de obra na linguagem.

H motivos para se aprender COBOL, alm do potencial mercado de trabalho com bons
salrios.

O COBOL robusto, e tem se adaptado s mudanas tecnolgicas e de negcios h


dcadas, ento realmente a escolha quando se trata de manter os sistemas funcionando. Vale
lembrar que COBOL comeou com os primeiros computadores, ento j passou por todos os
problemas tecnolgicos at o presente, e com apenas cinco atualizaes. Hoje em dia se
integra facilmente com as linguagens modernas, como C#, Java e VB.NET, alm de outras.

O COBOL seguro, por rodar em sistemas de grande porte, sistemas mais fechados, por
isso no sofre tanto com os problemas dos pequenos sistemas, bem mais exposto por conta da
grande rede. Como o corao de grandes instituies financeiras, segue regras muito rgidas
de segurana.

Por ter seguido de perto o desenvolvimento tecnolgico, especialmente os dispositivos


de armazenamento de grandes massas de dados, o COBOL possui alta performance para
grandes volumes de dados.

adaptvel, pois possvel reutilizar aplicaes escritas h dcadas em qualquer


plataforma de hardware, bem como integrar a aplicaes escritas em outras linguagens.
Atualmente, com o COBOL 2014, mesmo a orientao a objetos torna-se mais simples nessa
integrao.

Estima-se que h 300 bilhes de linhas de cdigo COBOL rodando atualmente, e em


constante crescimento.

Grandes empresas dependem do COBOL. No h como modificar gigantescos sistemas


escritos em COBOL sem grandes custos e grandes perdas. Assim, mais seguro permanecer
com a linguagem, mesmo porque a linguagem se renova sempre, maximizando o retorno do
29

investimento feito nesses sistemas.

Por fim, duas coisas so notrias: primeiro, h sim mercado de trabalho para o
profissional especializado em COBOL. Apenas no to escancarada a procura desses
profissionais como de outros especialistas. Algo como se voc um profissional COBOL,
no vai procurar emprego. O emprego vai procurar voc. Em segundo lugar, o aprendizado
fcil. A linguagem fcil, e h escolas boas espalhadas por a. Por exemplo, na regio do
ABC paulista, temos a Grande Porte, na Capital a Micro Focus, FATECs e SENACs
tambm propiciam cursos de COBOL.

Falta apenas as universidades acordarem para a realidade e inclurem em seus currculos


o aprendizado da linguagem.
30

5 Concluso

COBOL no uma linguagem morta, ao contrrio, est cada dia mais viva e presente no
cotidiano. No uma linguagem difcil, pois sua sintaxe parecida com a linguagem natural a
torna uma linguagem de fcil memorizao. E tambm por trabalhar com poucos tipos de
dados, e ter uma estrutura rgida, torna fcil o aprendizado.

A linguagem continua se desenvolvendo junto com os avanos da tecnologia, por isso


dificilmente se tornar obsoleta, e assim os profissionais que investirem nela no correro o
risco de terem desperdiado tempo em aprend-la. Por conta do envelhecimento dos
profissionais do COBOL, as oportunidades de trabalho bem remunerado esto crescendo. A
empregabilidade desses profissionais excelente.

A mais antiga das linguagens de programao (se considerarmos seu nascimento a partir
do FlowMatic), longe de estar obsoleta, , paradoxalmente a linguagem do futuro. Quem
acreditar e investir nela, ter diante de si uma carreira segura e estvel.
31

Referncias

Shimozu, Tamio. Programao COBOL Curso bsico. 3 ed. So Paulo: Atlas, 1986.

Isaacson, Walter. Os inovadores. 1 ed. So Paulo: Companhia das Letras, 2014.

Coughlan, Michael. Beginning COBOL for Programmers. 1 Ed. New York (EUA), 2014.

Barbier, Frank; Recoussine, Jean-Luc. COBOL Software Modernization. 1 ed. London


(Inglaterra): ISTE, 2015.

Micro Focus. R.I.P. COBOL, em https://blog.microfocus.com/r-i-p-cobol-2/, acessado em


26 de maro de 2017.

Micro Focus. Academics, Analysts and Anchormen: Saluting the Admiral, em


<https://blog.microfocus.com/grace-hopper-cobol-yale/>, acessado em 27 de maro de 2017.

Micro Focus. COBOL: The original language for business and a continued chart success,
em < https://blog.microfocus.com/cobol-tiobe-index/>, acessado em 27 de maro de 2017.

Micro Focus. COBOL: The language for future generations, em


https://blog.microfocus.com/cobol-the-language-for-future-generations/, acessado em 27 de
maro de 2017.

MC- Mulheres na Cincia. Grace Murray Hopper, em http://mulheresnaciencia-


mc.blogspot.com.br/2014/09/grace-murray-hopper.html, acessado em 27 de maro de 2017.

The National Museum of American History. COBOL, em


http://americanhistory.si.edu/exhibitions/artifact-walls-cobol , acessado em 27 de maro de
2017.

ComputerWorld. Cinco motivos que mantm o Cobol firme e forte nas empresas., em
http://computerworld.com.br/cinco-motivos-que-mantem-o-cobol-firme-e-forte-nas-empresas,
acessado em 27 de maro de 2017.

You might also like