Programmēšana

Vai Java ir nākamais COBOL?

Mūsu mānijā par jauno ir ērti aizmirst, cik ilgi “vecais” paliek pie mums. Piemēram, ņemiet COBOL. Cienījamajai programmēšanas valodai šomēnes aprit 60 gadu, un, kā rakstījis Stīvens J. Vogens-Nikolss, tā varētu labi “pārdzīvot mūs visus”.

Patiešām, COBOL piedāvā lielisku piemēru patiesajam progresa tempam mūsu nozarē, bet, iespējams, piedāvā arī dažas norādes par to, kādi būs rītdienas COBOL. Java un SQL, kāds? Vai varbūt Python?

COBOL darba zirgs

Lielākā daļa cilvēku, kas lasīja šo ierakstu, nebija dzimuši 1959. gadā, kad Mērija Hava nāca klajā ar ideju par COBOL (kopīga uz biznesu orientēta valoda), kuru Greisa Hopere (un citas) turpināja formalizēt un popularizēt. Hawes mērķis, kā mums atgādina Vons-Nikolss, bija izveidot “angļu valodas vārdu krājumu, ko varētu izmantot dažādos datoros, lai veiktu pamata biznesa uzdevumus”, patiesu, no piegādātāja neitrālu valodu.

Kamēr COBOL ziedu laiki pagājušā gadsimta astoņdesmitajos gados sākās, tā turpina darbināt 70 procentus no visām pasaules darījumu apstrādes sistēmām, intervijā Vaughan-Nichols norāda Micro Focus (uzņēmums, kas uztur COBOL). Vilcis naudu no bankomāta? Jūs izmantojāt COBOL. Samaksāja hipotēku? COBOL. Zvanījāt uz zvanu centru? Jā, arī tas bija COBOL. Pat atvaļinājuma rezervēšana gandrīz noteikti ir atkarīga no COBOL.

COBOL, domājams, ir beidzies gadu desmitiem, tomēr mūsu dzīves lieldatoros dzīvo 220 miljardi COBOL līniju. Kā ziņo programmatūras inženierijas pētījumu centrs Lero, COBOL darījumi 2014. gadā samazināja Google meklēšanu par 200 reizes. Vai Google kādreiz panāks?

COBOL ir vairāk nekā daži dotardi, kas dzīvo lieldatoru pensionāru dzīvoklī. Papildus tam, ka valoda ir viegli lasāma, tā ir regulāri informēta par kaimiņiem. Šodien COBOL integrējas ar Docker konteineriem un Java, vienlaikus darbojoties mākonī, Linux vai Windows vai gandrīz jebkurā vietā. Tā ir ļoti pārnēsājama valoda, kas ļauj izstrādātājiem koncentrēties uz lietojumprogrammu rakstīšanu, kamēr COBOL rūpējas par operētājsistēmas sarežģījumiem.

Šodien lielākais risks COBOL ir tas, ka arvien grūtāk atrast kvalificētus programmētājus. Valodai, iespējams, būs vairāk gadu desmitu laika, lai dzīvotu pie mums, ņemot vērā izmaksas un risku, ka COBOL balstītās sistēmas tiek aizstātas ar alternatīvām, taču tas nenozīmē, ka izstrādātāji aug, sapņojot par savas pirmās COBOL programmas rakstīšanu. Tā ir problēma, taču ne vienu, kuru es tiecos atrisināt šeit, šajā ierakstā. (Atvainojiet!)

Tā vietā, pārskatot COBOL 60 gadu vēsturi, es domāju aizdomāties par mūsdienu valodām, kas varētu kļūt par rītdienas “COBOL”. Tas ir, kādas ir valodas / tehnoloģijas, kas joprojām tiks plosītas zem plaša rītdienas tehnoloģiju klāja?

Rītdienas COBOL šodien

Protams, ir grūti paredzēt nākotni, taču SQL, Python un Java ir noteikti spēcīgi gadījumi. Deivs Kellogs jau gadiem ilgi sauc SQL par jauno COBOL. Tas var būt taisnība attiecībā uz ilgmūžību un priekšstatu, ka tas ir novecojis, bet paralēle galu galā pamudina. Ir tikai viens COBOL. Neskatoties uz visiem standartizācijas apgalvojumiem, SQL runā citā dialektā atkarībā no datu bāzes nodrošinātāja. Lai gan tas nav atturējis SQL no pielipšanas (un tas noteikti paliks aktuāls arī nākamajās desmitgadēs), tas nešķiet gluži kā COBOL radniecīgs gars.

Protams, ne tādā pašā veidā, kā to dara Java.

Java, tāpat kā COBOL, ir salīdzinoši viegli lasāma un rakstāma. Tāpat kā COBOL, arī Java ir saglabājusi modernumu. Katru reizi, kad Java izskatījās kā izgaist, kaut kas to ir pamudinājis. Pēc Braiena Lerūsa teiktā, Android noteikti ir daļēji atbildīgs par [Java] pastāvīgo atbilstību. ” Nedaudz vēlāk lielie dati atdzīvināja Java vēl vairāk. Kā uzsvēris Nitins Borvankars, “Java saņēma [otro] vēju Hadoopa un visas datu zinātnes ekosistēmas dēļ, ieskaitot stropu, HBase, Spark, Cassandra, Kafka un JVM valodas, piemēram, Groovy un Clojure. Tas viss nezūd drīz. ”

Patiešām, tāpat kā COBOL gadījumā, viens no galvenajiem iemesliem, kāpēc mēs, iespējams, redzēsim Java iegravētu mūsu pamatakmeņos, ir tāpēc, ka, kā raksta Jonathan Eunice, tā ir "dziļi un plaši izvietota kritiskās lietotnēs, padarot to sistemātiskas kritikas cienīgu". Jo vairāk uzņēmumu iekļauj Java savās viskritiskākajās lietotnēs, jo mazāka iespēja, ka tā tiks izvilkta un aizstāta ar modernām alternatīvām. Izmaksas un risks mazinās, to nedarot.

Līdzīgā veidā Python var labi pierādīt savu uzturēšanās spēku. Lauren Cooney domās, Python izturēs, jo tā ir “GSD [get stuff done] valoda salīdzinājumā ar foršu valodu”. Tas nav “iedomājies”. Tas "vienkārši darbojas". Svarīgi ir tas, ka tāpat kā Java, arī Python ir arvien vairāk pamats mūsdienu datu zinātnei, kas, cita starpā, var izrādīties rītdienas darījumu slodze, kas pakļauta finanšu sistēmām (kas, kā jau minēts, ir liels iemesls, kāpēc COBOL šodien joprojām ir vēss).

Jebkas cits? Nu, tur ir ne tik mēle vaigā, ka varbūt COBOL ir nākotnes COBOL. Kā saka Endrjū Olivers, “Pirms gadiem es teicu, ka Java ir nākotnes COBOL. Visi savādi skatījās uz mani. Es domāju, ka tā ir nākotne. ”

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