Programování

Je Java příští COBOL?

V naší mánii pro nové je vhodné zapomenout, jak dlouho s námi „starý“ zůstane. Vezměme si například COBOL. Ctihodný programovací jazyk dosáhl tento měsíc 60 let a jak napsal Steven J. Vaughan-Nichols, mohl by nás všechny „přežít“.

COBOL skutečně nabízí skvělý příklad skutečného tempa pokroku v našem odvětví a možná také nabízí určité vodítka o tom, jaké budou zítra COBOLy. Java a SQL, někdo? Nebo snad Python?

COBOL pracant

Většina lidí, kteří si tento příspěvek přečetli, se nenarodili v roce 1959, tedy v roce, kdy Mary Hawes přišla s nápadem COBOL (Common Business-Oriented Language), který Grace Hopper (a další) formalizovala a propagovala. Hawesovým cílem, jak nám připomíná Vaughan-Nichols, bylo vytvořit „slovník podobný angličtině, který by mohl být použit na různých počítačích k provádění základních obchodních úkolů,“ což je skutečný jazyk neutrální vůči prodejcům.

Zatímco rozkvět společnosti COBOL odezněl v 80. letech, podle agentury Micro Focus (společnost, která udržuje COBOL) v rozhovoru s Vaughan-Nicholsem nadále napájí 70 procent globálních systémů pro zpracování transakcí. Vytáhl peníze z bankomatu? Používali jste COBOL. Splatili jste hypotéku? COBOL. Volali jste call centrum? Ano, taky to byl COBOL. I rezervace vaší dovolené se téměř jistě spoléhá na COBOL.

COBOL údajně vyprší po celá desetiletí, přesto v sálových počítačích našich životů žije 220 miliard řádků COBOLu. Podle výzkumného střediska pro softwarové inženýrství Lero transakce COBOL v roce 2014 převyšovaly vyhledávání na Googlu 200krát. Dokáže Google někdy dohnat?

COBOL je víc než nějaký dotard žijící v bytě sálového důchodce. Kromě toho, že je jazyk snadno čitelný, udržuje aktuální informace o svých sousedech. COBOL se dnes integruje s kontejnery Dockeru a Javou, zatímco běží v cloudu nebo na Linuxu nebo Windows nebo téměř kdekoli na cokoli. Jedná se o vysoce přenosný jazyk, který umožňuje vývojářům soustředit se na psaní jejich aplikací, zatímco COBOL se stará o složitosti základního operačního systému.

Dnes je pro COBOL největším rizikem to, že je stále obtížnější najít kvalifikované programátory. Jazyk může mít s námi ještě několik desetiletí, vzhledem k nákladům a riziku nahrazení systémů založených na COBOLu alternativami, ale to neznamená, že vývojáři vyrůstají ve snění psát svůj první program COBOL. Je to problém, ale ne ten, který zde v tomto příspěvku hodlám vyřešit. (Promiňte!)

Místo toho jsem při pohledu na 60letou historii COBOLu přemýšlel o dnešních jazycích, které by se mohly zítra stát „COBOLy“. To znamená, jaké jsou jazyky / technologie, které se stále budou potulovat pod kapotou obrovské řady technologií zítřka?

Zítřejší COBOL dnes

Je samozřejmě těžké předvídat budoucnost, ale je třeba učinit pádné případy pro SQL, Python a Java. Dave Kellogg už roky nazývá SQL nový COBOL. To může být pravda, pokud jde o dlouhověkost a vnímání, že je zastaralá, ale paralela se nakonec vyčerpá. Existuje pouze jeden COBOL. U všech záminek standardizace mluví SQL jiným dialektem v závislosti na poskytovateli databáze. I když to nezabránilo tomu, aby se SQL drželo kolem (a jistě to zůstane relevantní pro nadcházející desetiletí), docela se to necítí jako spřízněná duše COBOL.

Určitě ne stejným způsobem jako Java.

Java, stejně jako COBOL, je relativně snadno čitelná a psaná. Stejně jako COBOL si Java zachovala svou modernost. Pokaždé, když Java vypadala, že se vytrácí, něco to zvedlo. Podle Briana Lerouxe je Android určitě částečně odpovědný za trvalou relevanci [Java]. “ O něco později velká data oživila Javu dále. Jak zdůraznil Nitin Borwankar, „Java získala [druhý] dech kvůli Hadoopovi a celému ekosystému datových věd včetně jazyků Hive, HBase, Spark, Cassandra, Kafka a JVM, jako jsou Groovy a Clojure. To všechno v dohledné době nezmizí. “

Stejně jako u COBOLu, jedním z hlavních důvodů, proč pravděpodobně uvidíme, jak se Java vryje do našich náhrobků, je to, že, jak píše Jonathan Eunice, je „nasazena hluboce a široce v kritických aplikacích, takže si zaslouží systematickou kritiku“. Čím více podniků vkládá Javu do svých nejdůležitějších aplikací, tím méně je pravděpodobné, že bude roztržena a nahrazena moderními alternativami. Náklady a rizika se proti tomu snižují.

Podobným způsobem může Python prokázat svoji schopnost zůstat. Podle mysli Lauren Cooneyové Python vydrží, protože je to jazyk „GSD [hotové věci] vs. skvělý jazyk.“ Není to „fantazie“. „Funguje to prostě“. Důležité je, stejně jako Java, že Python je stále více základem moderní vědy o datech, mimo jiné, což se může ukázat jako transakční pracovní zátěž zítřka, která podtrhuje finanční systémy (což, jak bylo zmíněno, je dnes velkým důvodem, proč COBOL zůstává v pohodě).

Něco dalšího? No, není tu taková odpověď, že možná COBOL je budoucí COBOL. Jak říká Andrew Oliver: „Před lety jsem řekl, že Java je COBOL budoucnosti. Všichni se na mě divně dívali. Myslím, že to je budoucnost. “

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