Programmering

Er Java neste COBOL?

I vår mani for det nye er det praktisk å glemme hvor lenge den "gamle" blir hos oss. Ta COBOL, for eksempel. Det ærverdige programmeringsspråket fyller 60 år denne måneden, og som Steven J. Vaughan-Nichols har skrevet, kan det godt være at "overlever oss alle."

Faktisk tilbyr COBOL et godt eksempel på det sanne tempoet i fremdriften i vår bransje, mens det kanskje også gir noen ledetråder til hva morgendagens COBOLer vil være. Java og SQL, noen? Eller kanskje Python?

KOBL arbeidshesten

De fleste som leste dette innlegget ble ikke født i 1959, året Mary Hawes kom med ideen til COBOL (Common Business-Oriented Language), som Grace Hopper (og andre) fortsatte med å formalisere og fremme. Hawes 'mål, som Vaughan-Nichols minner oss om, var å skape "et engelsk-lignende ordforråd som kunne brukes på forskjellige datamaskiner for å utføre grunnleggende forretningsoppgaver", et ekte leverandørnøytralt språk.

Mens COBOLs storhetstid sval ut på 1980-tallet, fortsetter den å drive 70 prosent av globale transaksjonsbehandlingssystemer, ifølge Micro Focus (selskapet som vedlikeholder COBOL), i et intervju med Vaughan-Nichols. Hentet penger fra en minibank? Du brukte COBOL. Betalt pant? COBOL. Kalt et telefonsenter? Jepp, det var også COBOL. Selv om du bestiller ferien din, er det helt sikkert avhengig av COBOL.

COBOL har angivelig utløpt i flere tiår, men likevel lever 220 milliarder COBOL-linjer i hovedrammene i våre liv. I følge Lero, et forskningssenter for programvareteknikk, dverg COBOL-transaksjoner Google-søk 200 ganger i 2014. Vil Google noen gang ta igjen?

COBOL er mer enn noen dotard som bor i en hovedrammepensjoneringsleilighet. I tillegg til å være lettlest, har språket holdt seg oppdatert med naboene. I dag integreres COBOL med Docker-containere og Java, mens du kjører i skyen eller på Linux eller Windows, eller omtrent hvor som helst på hva som helst. Det er et svært bærbart språk som lar utviklere fokusere på å skrive applikasjonene mens COBOL tar seg av komplikasjonene til det underliggende operativsystemet.

I dag er den største risikoen for COBOL at det blir vanskeligere og vanskeligere å finne kvalifiserte programmerere. Språket kan ha flere tiår mer å leve med oss, gitt kostnadene og risikoen ved å erstatte COBOL-baserte systemer med alternativer, men det betyr ikke at utviklere vokser opp og drømmer om å skrive sitt første COBOL-program. Det er et problem, men ikke et mål jeg skal løse her i dette innlegget. (Beklager!)

I stedet fikk jeg en gjennomgang av COBOLs 60 år lange historie til å tenke på dagens språk som kan bli morgendagens “COBOLer”. Det vil si, hva er språkene / teknologiene som fremdeles vil puttere rundt panseret til et stort utvalg av morgendagens teknologi?

Morgendagens COBOL i dag

Det er vanskelig å forutsi fremtiden, selvfølgelig, men det er sterke saker å lage for SQL, Python og Java. Dave Kellogg har i årevis kalt SQL for den nye COBOL. Det kan være sant når det gjelder lang levetid og oppfatningen om at det er utdatert, men parallellen til slutt forsvinner. Det er bare en COBOL. For alle sine foregivelser av standardisering snakker SQL en annen dialekt avhengig av databaseleverandøren. Selv om det ikke har hindret SQL i å holde fast (og det vil helt sikkert forbli relevant i flere tiår framover), føles det ikke helt som en COBOL-slekt.

Absolutt ikke på samme måte som Java gjør.

Java, som COBOL, er relativt enkelt å lese og skrive. I likhet med COBOL har Java opprettholdt sin modernitet. Hver gang Java så ut som det bleknet, har noe gjort det. I følge Brian Leroux er Android definitivt delvis ansvarlig for [Java] fortsatte relevans. " Litt senere gjenopplivet big data Java ytterligere. Som Nitin Borwankar har fremhevet, “Java mottok [en] andre vind på grunn av Hadoop og hele datavitenskapelige økosystem inkludert Hive, HBase, Spark, Cassandra, Kafka og JVM språk som Groovy og Clojure. Alt dette forsvinner ikke når som helst. ”

Faktisk, som med COBOL, er en av de viktigste grunnene til at vi sannsynligvis vil se Java gravert på gravstenene våre, som Jonathan Eunice skriver, at den er “distribuert dypt og bredt i kritiske apper, noe som gjør det verdig systematisk kritikk. Jo flere bedrifter legger inn Java i sine mest oppdragskritiske apper, desto mindre sannsynlig er det å bli revet og erstattet for moderne alternativer. Kostnad og risiko demper mot å gjøre det.

På samme måte kan Python godt bevise sin utholdenhet. Etter Lauren Coonys sinn vil Python holde ut fordi det er et "GSD [få ting gjort] -språket kontra et kult språk." Det er "ikke fancy." Det "bare fungerer." Det er viktigere, som Java, er Python i stadig større grad grunnleggende for moderne datavitenskap, blant annet, noe som godt kan vise seg å være morgendagens transaksjonsmessige belastninger som underliggende økonomiske systemer (som, som nevnt, er en stor grunn til at COBOL fortsatt er kult i dag).

Noe annet? Vel, det er ikke så tung-i-kinn-svaret at kanskje COBOL er fremtidens COBOL. Som Andrew Oliver uttrykker det, ”For mange år siden sa jeg Java er fremtidens COBOL. Alle så rart på meg. Jeg tror det er fremtiden. ”

$config[zx-auto] not found$config[zx-overlay] not found