IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Le langage de programmation Cobol fête ses 60 ans,
Peut-il encore tenir longtemps face à la concurrence des nouveaux langages ?

Le , par Bill Fassinou

359PARTAGES

16  0 
Cobol est l’un des premiers langages de programmation que le monde a connus. Il a aujourd’hui 60 ans et même s’il est vieux, il continue à être utilisé par certains programmeurs et entreprises. Selon certains internautes, on retrouve encore des milliers de lignes de code dans ce langage dans plusieurs applications utilisées au sein des systèmes de gestions administratives et même dans le milieu bancaire. Officiellement paru en septembre 1959, son nom est l’acronyme de Common Business Oriented Language qui révèle sa vocation originelle : être un langage commun pour la programmation d'applications de gestion et a été fortement adopté par les structures bancaires.

Il a été créé par le Short Range Committee, un des trois comités proposés à une rencontre au Pentagone organisée par le département de la défense des États-Unis en mai 1959. Le comité a été formé pour recommander une approche à court terme pour un langage commun, indépendant des constructeurs, pour les applications de gestion de l'administration américaine. Il était constitué de membres représentant six constructeurs d'ordinateurs et trois agences gouvernementales (IBM, RCA, US Air Force, etc.). Depuis son apparition, le langage Cobol a subi d’innombrables améliorations dans le but d’augmenter ses performances.

De plus, il fallait également améliorer la vitesse de compilation qui, en 1964, était de 1000 relevés par minute, souligne Legacy IT, une organisation indépendante dans le domaine de la modernisation du patrimoine informatique. Ce dernier précise également que pendant cette décennie, Cobol a suffisamment gagné en fonctionnalités pour les fichiers et les tables de stockage de masse et en 1968, Cobol-68 a été lancé. Cette version apportait la gestion des tables, les accès séquentiels et les accès aléatoires et quelques autres fonctionnalités. Ce fut la première version ANSI, écrit Legacy IT. Elle était bien normalisée, ce qui indiquait clairement que ce langage devenait un langage dominant.


Il faut attendre 6 ans après, en 1974 avant de voir une nouvelle version du langage apparaître, le Cobol-74. Cette fois, pas de nouveautés majeures, mais quelques améliorations et corrections. En 1985, une version du langage parut et en 1989 des fonctions intrinsèques ont été ajoutées au langage. Elles permettent entre autres de faire des opérations mathématiques (ACOS, pour calculer l’arc cosinus par exemple), des opérations logiques (Min ou Max) et des opérations sur les chaînes de caractères (UPPER-CASE) et plus tard en 2002, la programmation orientée objet a été introduite dans le langage ainsi que le support Unicode.

Aujourd’hui, le langage de programmation existe encore et dans bien de domaines et sa dernière version date de 2014. En 2018, certaines entreprises et pour la plupart des banques demandaient encore des développeurs Cobol même si, certains experts jugent le langage vieux et dépassé. Il semble donc que le langage est bien parti pour être là encore longtemps, puisque pour les banques, changer tous leurs mainframes est une entreprise compliquée et coûteuse. Même une transition vers de nouveaux systèmes prendrait probablement plusieurs années. Et surtout, pourquoi penser à changer un système qui marche ? Chaque jour, des millions de transactions bancaires et des mainframes sont gérés par un logiciel programmé en COBOL.

Aussi, plusieurs sites publiant des offres d’emploi, tels que Indeed, continuent d'adresser à la communauté des offres d’emploi à l’endroit des développeurs Cobol. Dans la même année, Silkhom, un cabinet de recrutement spécialisé en informatique, s’interrogeait sur l’avenir du langage. Dans son article intitulé “Quel avenir pour le langage Cobol”, Silkhom soulignait le fait que plusieurs experts avaient prédit la mort de Cobol depuis plusieurs années déjà et d’autres continuent de le faire, mais pourtant le langage est encore majoritairement utilisé dans le milieu bancaire et également dans la plupart des systèmes de gestion administratifs.

Le site qualifiait le langage de clair et précis (à cause de sa capacité à permettre aux développeurs d’écrire les choses de façon claire et précise), un langage interopérable. Selon le site, le langage Cobol est un langage sécuritaire et irremplaçable, car il est capable de s’adapter à d’autres systèmes informatiques modernes tels que le BigData, le Cloud computing, l’IA et bien d’autres. « Dans ce contexte, on peut alors se demander quel avenir peut avoir le Cobol, dans la mesure où sa popularité décroît fortement au fil du temps, alors que son utilisation et surtout sa demande reste encore massivement importante », s’est interrogé Silkhom.

À ce propos, selon certains internautes, le langage ne disparaîtra pas. Même si la concurrence à laquelle le langage fait face depuis sa première décennie ne cesse d’augmenter, pour la flexibilité avec laquelle Cobol traite les données bancaires et administratives, le langage vivra encore longtemps. D’autres indiquent que c’est le langage qui a la plus grande demande dans leurs pays. Certains estiment également que le langage possède tout aujourd’hui pour être mis au même point d’égalité que les langages plus récents tels que C++, Java, Ruby et beaucoup d’autres, puisqu’il gère aujourd’hui les mêmes technologies que ces langages comme les sockets par exemple. D’après eux, COBOL peut facilement interagir avec les bibliothèques de socket C et les divers compilateurs COBOL qui ciblent .NET ainsi que la machine virtuelle Java peuvent utiliser toutes les bibliothèques réseau de ces plateformes. Il faut donc arrêter de minimiser les capacités du langage qu’ils appellent “grand-père” et de juste lui souhaiter un joyeux anniversaire, disent-ils.

Sources : Legay IT, Silkhom

Et vous ?

Qu'en pensez-vous ?
Cobol disparaîtra-t-il vraiment ou parviendra-t-il à tenir bon face aux autres langages modernes ? Comment ?
Quel est actuellement la popularité de Cobol dans votre milieu professionnel ?

Voir aussi

Êtes-vous un développeur COBOL ? Si oui, il pourrait y avoir encore des opportunités pour vous dans le domaine de la finance

La Rubrique Programmation, Forum Cobol

Micro Focus annonce la sortie de Visual COBOL pour Visual Studio 2017, qui offre aux développeurs COBOL la possibilité de coder avec l'EDI

Jean E. Sammet, une informaticienne qui a participé au développement de COBOL, est morte à l'âge de 89 ans

Node.cobol / Node.fortran : exécuter du code COBOL et Fortran dans Node.js et inversement grâce à ces bibliothèques

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de squizer
Membre actif https://www.developpez.com
Le 24/01/2019 à 17:02
Citation Envoyé par yoshi_120 Voir le message
J'ai une question est ce que ci vous preniez rendez vous pour la première fois avec votre dentiste lorsque vous arrivez au cabinet vous avez l'impression d'être dans une cabinet de curiosité vieux de 50 ans. Est ce que vous restez ou fuyez le plus loin possible ? ... Oui la réponses ne peut-être que oui.
Bref l'informatique est plus proche de la boucherie que de la médecine en terme d'état de l'art des méthodes et outils de travail.
Loin de moi l'idée de défendre le Cobol, bien qu'il ait continué à évoluer le petit père et qu'il tient toujours bon, respect quoi, mais j'ai envie de reprendre l'exemple du dentiste.

Supposons que vous avez une prémolaire cassée en haut à gauche et que c'est la merde () pour réparer cette dent, autant que pour l'enlever, que poser un bridge ou autre chose.
Vous avez le choix entre aller dans le cabinet dentaire faisant partie d'un consortium connu, avec des beaux locaux tout blanc, de l'équipement récent et des dentistes qui ont 28 ans et rêves de gloire et de cash, tout à apprendre encore.
Ou alors on vous conseil un vieux dentiste qui à 60 ans, le gars est expert dans le traitement de prémolaire cassée, il fait ça depuis 40 ans, il a adapté son matériel au fur et à mesure pour traiter spécifiquement ce genre de cas, le reste du matos est quand même vieux tout autant que le cabinet, ça y sent le renfermé. Mais ce dentiste vous assure un 100% de réussite sans douleur.

Vous optez pour quel choix ?
12  0 
Avatar de i5evangelist
Membre éclairé https://www.developpez.com
Le 24/01/2019 à 18:00
Je développe en plein de langages mais notamment en RPG, né en 1959 pépère, (https://en.wikipedia.org/wiki/IBM_RPG)
Bah voilà quoi, langage orienté gestion comme le Cobol, pour faire de la gestion c'est nickel. (disons sans rire que c'est moins fastidieux qu'en Java ^^)
Que vive le Cobol !
Note : Pour ceux qui cherchent du boulot, ça recrute sur IBM z ...
7  0 
Avatar de tpericard
Membre confirmé https://www.developpez.com
Le 24/01/2019 à 21:56
Qu'en pensez-vous ?

Le Cobol est encore présent avec des millions de lignes de codes dans les structures bancaires et autres systèmes de gestion administratifs. C'est un langage incomparable pour la gestion et pour les mainframes. Il s'est adapté au monde moderne et a encore de belles années devant lui.

Cobol disparaîtra-t-il vraiment ou parviendra-t-il à tenir bon face aux autres langages modernes ? Comment ?

Il survivra, et s'interface déjà beaucoup avec les langages dit modernes. La stabilité des programmes Cobol est impressionnante. Un seul exemple que j'ai vu de mes propres yeux, une application de paye / RH écrite en cobol sur un mainframe propriétaire, descendue sur micro (oui, oui) avec comme seules adaptations :
- les fichiers dont le nom physique était légèrement différents de leurs équivalents mainframe,
- les états qui étaient au choix soit des docs word, soit des tableaux excels,
- les programmes transactionnels qui s'interfaçaient avec un outil de gestion des écrans sur micro,

Le coeur de l'application est resté identique sans la moindre retouche. Du coup, l'application a durée 25 ans ! ... avant d'être migrée vers SAP HR...
Et il s'agissait de la paye RH d'un "grand compte" national.

Quel est actuellement la popularité de Cobol dans votre milieu professionnel ?
Très faible malheureusement, les "jeunes" préfèrent les langages dans le vent. Ils ont tort je trouve, car ça peut être une porte d'entrée vers des très grandes entreprises du monde bancaire qui en recherchent des dev Cobol motivés.
C'est à tel point que je me pose sérieusement la question, vu que je suis dans une voie de garage actuellement, si je ne vais pas me remettre au Cobol que j'ai pratiqué pendant plus de 20 ans.
6  0 
Avatar de tpericard
Membre confirmé https://www.developpez.com
Le 27/01/2019 à 9:33
Citation Envoyé par gretro Voir le message
Le problème du COBOL, c'est que bien que beaucoup de logiciels soient écrits dans ce langage, il s'agit des vieilles applications. Personne de sérieux ne démarre de projet en COBOL de nos jours, alors qu'il y a tant d'alternatives intéressantes. Ça signifie que les seuls projets qui sont en COBOL sont des projets de maintenance. Non merci, je vais repasser. Pour moi, il est trop important d'aimer mon travail pour sacrifier cela contre une paie énorme qui offre au final peu de satisfaction.
Personne de sérieux ... à part les grands comptes Banque, Assurances, grandes administration, grandes entreprises
Tout dépend de l'usage et du contexte. Pour développer un site web, il est certain que le Cobol n'est pas adapté ... sauf pour les web services écrits en Cobol ... exemple vécu (en tant que testeur) d'une application Web (nouvelle récente écrite en java) qui communique avec la base dB2 via du Cobol au final (si, si).

En clair, peu voire pas d'applications front office, par contre des applications back office neuves existent bel et bien.

Enfin, aimer son métier est très positif et très enrichissant sur le plan personnel. Par contre je pense que ceux et celles qui font le choix de se mettre à un "vieux" langage pour entrer dans une grande structure (style banque ou assurances) en y consacrant quelques années de leur vie peuvent avoir des progressions de carrières enrichissantes (au sens premier du terme). Après cela reste du choix personnel.

Pour terminer, quelques chiffres que tout un chacun peut retrouver via son "ami google"
- 70% des lignes de codes écrites dans le monde seraient en Cobol (bon, ça ne veut pas dire grand chose vu la grande verbosité du Cobol),
- 82% des applications financières dans le monde seraient écrites en Cobol,
- 60% des applications critiques dans le monde seraient écrites en Cobol (après tout dépend de ce que l'on appelle critique)
- le nombre de lignes Cobol augmenterait chaque année de 5 milliards de lignes.
6  0 
Avatar de Fab2bprog
Membre confirmé https://www.developpez.com
Le 24/01/2019 à 18:37
J'ai développé en Cobol pendant 8 ans environs ( Acucobol ). Ce n'était pas vraiment mon truc, j'ai une vision trop moderne des langages.
En revanche c'est un environnement d'une tres grande stabilité et rapidité d'exécution. L'autre avantage c'est que dans l'entreprise ou j'étais certains programmes avait 40 ans d'age et fonctionnait sans aucune modification de code.
Les seules modification qu'avaient connu ces programmes concernait la date car il avait fallu passer à une date à 4 chiffres ( bug de l'an 2000 ), puis le passage à l'euro. Les langages cobol ont connus une tres grosse concentration , ils n'intéressent plus vraiment que les tres grands comptes. Certains programmes sont beaucoup trop complexe pour être refait tout les 10 ans. Le risque de bug est vraiment trop grands en cas de modif, surtout lorsqu'on leur fait gérer des milliard d'euros. Tres rare sont les langages qui permettent une stabilité de ce type. Je crois s'avoir par exemple que la TVA de l'état Français est gérée en cobol…
Autre élément à prendre en compte c'est que vous pouvez accéder à un programme en cobol en telnet ou en ssh donc via un terminal. Pas besoin de couteuses licence TSE ( par leur nombre). Pas besoin non plus d'un navigateur web qui évolue trop vite ( et dont l'interprétation de la mise en page peut varier). Pas besoin de faire reposer son programme sur des normes externes ( css2 à css3, évolution de javascript, html) etc...
Sur votre serveur linux vous autorisez 1000 sessions ssh et ca coute zero euros…
En revanche ne choisissez pas ce langage non plus pour des question d'économie... un cobol pro ca coute tres cher. Disons que WinDev ou Delphi a coté c'est quasiment du gratuit … Mais bon , les éditeurs de cobol savent que vous n'achetez pas ce langage pour gérer une petite epicerie…
5  0 
Avatar de Darkzinus
Expert éminent sénior https://www.developpez.com
Le 25/01/2019 à 9:06
En tout cas la demande est très forte en ce moment et les bonnes ressources sont rares.
4  0 
Avatar de escartefigue
Modérateur https://www.developpez.com
Le 30/01/2019 à 20:10
Citation Envoyé par tpericard Voir le message
Personne de sérieux ... à part les grands comptes Banque, Assurances, grandes administration, grandes entreprises
Tout dépend de l'usage et du contexte. Pour développer un site web, il est certain que le Cobol n'est pas adapté ... sauf pour les web services écrits en Cobol ... exemple vécu (en tant que testeur) d'une application Web (nouvelle récente écrite en java) qui communique avec la base dB2 via du Cobol au final (si, si).

En clair, peu voire pas d'applications front office, par contre des applications back office neuves existent bel et bien.
Je confirme, j'interviens depuis ... oh pt1 30 ans au moins chez des clients "grands comptes" c'est à dire les très grandes banques françaises, les grandes compagnies d'assurance, les principaux constructeurs automobiles de la planète et tous, je dis bien tous, ont un patrimoine applicatif de gestion coeur de métier basé sur des applications développées en COBOL.

Autant dire qu'il y en a encore pour pas mal d'années avant que le COBOL disparaisse vraiment

Par contre, les IHM en COBOL sont l'exception depuis déjà au moins 15 ans, croiser un écran vert pur BMS (je laisse les boutonneux chercher la signification sur google) devient un véritable exploit
il en va de même pour les applications périphériques, telles que le décisionnel, la relation client et autres, qui ont depuis longtemps fui le bon vieux COBOL
4  0 
Avatar de Luc Orient
Membre expert https://www.developpez.com
Le 03/02/2019 à 9:33
C'est fou le nombre de gens qui parlent du COBOL, en général pour le critiquer ... Faudrait juste qu'ils le connaissent un peu ...

Citation Envoyé par schlebe Voir le message
...
En effet, en Cobol, nous disposons de plusieurs types de variable numérique
PIC 9(4) = chaine de 4 caractères numériques
Ce format, d'USAGE implicite DISPLAY est réservé à l'affichage et doit être évité pour les calculs

PIC 9(4) COMP-3 ou PACKAGED
C'est PACKED et pas PACKAGED et même PACKED-DECIMAL

Et mieux vaut le coder signé PIC S9(4) PACKED-DECIMAL.

Bien sûr, en COBOL, il existe l'équivalent du 'float' ou 'double' connu en C ou C++ ou Java.
c'est PIC 9(4) COMP-4 ou BINARY.
BINARY est l'équivalent d'integer en C.
4  0 
Avatar de escartefigue
Modérateur https://www.developpez.com
Le 27/07/2020 à 21:00
Citation Envoyé par Darkzinus Voir le message
Et c'est pareil pour les systèmes I qui sont de plus en plus performants avec l'ajout sans cesse de nouvelles fonctionnalités !
Certes, mais ce qui pèche encore et toujours avec IBM, c'est le montant de la facture !
Les performances sont là, les fonctionnalités aussi, le support et la documentation sont au top, mais l'addition est salée

L'un de mes clients a choisi une refonte de de IBM DB2 pour Postgresql uniquement pour cette raison.
Au niveau performances il s'en mord les doigts mais les les financiers n'en ont cure, ils voient les lignes budgétaires qui ont fondu à vue d'oeil et c'est bien tout ce qui compte pour eux.
Les plans batch qui ne peuvent plus passer dans les nuits et les WE, c'est le problème des techniciens, pas celui des comptables ni des actionnaires
4  0 
Avatar de abriotde
Membre chevronné https://www.developpez.com
Le 25/01/2019 à 6:08
Cobol, n'est pas tellement plus vieux que C. Son problème n°1 c'est qu'il n'est pas open-source. Du coup les compétences sont rares et alors de plus en plus de mauvaise qualité faute de choix. C'est le problème des banques.
3  0