
Csak a jövő maradt: programozási nyelvekről szóló sorozatom lassan kiteljesedik... Az ezoterikus programnyelvekről két posztra is futotta, írtam továbbá azokról, melyeket tanuláshoz ajánlhatok jó szívvel kezdők számára. Most néhány olyan nyelvet szedtem csokorba, melyekben a programozás jövőjét, de nem egy esetben a jelenét illetően is komoly potenciált látok, illetve amelyekről úgy gondolom, érdemes ismerkedni velük. 8 programnyelvet számláló jelenlegi listám koránt sem teljes, és merőben szubjektív is, de talán mégis nyújt némi rálátást a jelent és a közeljövőt illető trendekre.
-
Go
Rendszerprogramozás Konkurens Google
-
A Google által 2009-ben kidobott nyelv némi, a programnyelvek népszerűségi listáján való hullámvasutazás után az utóbbi években végül megkapaszkodni látszik az első húsz között. Ez nem is meglepő, hiszen olyan rendszerszintű feladatokhoz fejlesztették ki, melyek megoldására hagyományosan a C-hez vagy a C++-hoz nyúltunk előtte. Ez egy széles és jelentős alkalmazási terület, melyre a C++-nál egyszerűbb, kompaktabb és sok szempontból modernebb nyelvként jött a Go a képbe. A Go gyors, a Go konkurens, a Go biztonságos, a Go kényelmes, mondják a rajongók. Szerverek, felhő-infrastruktúrák, rendszer-alkalmazások írására jó választás lehet.
-
R
Statisztika Tudomány Adatelemzés
-
Egy olyan, 24 éves, tehát „nem mai csirke” nyelvről beszélünk, mely az utóbbi években nagy erőkkel kapaszkodott fölfele a programozók HOT 20-ének számító népszerűségi listán, azaz a TIOBE-indexen. Ma már az előkelő 11. helyet foglalja el, de minden jel arra mutat, hogy csillaga még mindig emelkedőben van. Alkalmazási területe az akadémiai szféra, első sorban statisztikai elemzésekhez szolgáltat tűzerőt. Mára egyedüli jelentősebb versenytársa e területen a szélesebb alkalmazással bíró Python maradt. A specializáltabb, fókuszáltabb R talán a legkézenfekvőbb választás, ha adatelemzésről, kutatásról, tudományos munka támogatásáról van szó.
-
Elixir (Erlang)
Elosztott Konkurens Szolgáltatás
-
Ez a nyelv mindjárt kettő is. Az Elixir ugyanis az Erlang nevű, sokat látott funkcionális nyelvre, illetve az Erlangban írt programokat futtató környezetre épül. Az Erlangot eredetileg az Ericssonnál fejlesztették ki nem kevesebb, mint 31 évvel ezelőtt. Nem meglepő módon telekommunikációs rendszerek megvalósítása lebegett az alkotók szeme előtt, ennek eredményeként pedig egy elosztott, konkurens, hibatűrő, megbízható rendszer jött létre, amely több százezer, vagy akár több millió egyidejű folyamat kiszolgálást teszi lehetővé, miközben nem csak, hogy magától képes fölállni rendszerhiba esetén, de még a kód frissítését is lehetővé teszi anélkül, hogy megszakítaná a folyamatban lévő kapcsolatokat. A világ telekommunikációjának jelentős része ma is Erlang alapokon zajlik, nyilvánvaló alkalmasságának, valamint a funkcionális paradigma nyújtotta előnyöknek köszönhetően pedig ma már a különböző internetes szolgáltatások világában is babérokra tör. Jelenkori sikere pedig nem utolsó sorban az Elixirnek köszönhető, amely Erlang alapokon kínál, egy modern, az webfejlesztők számára kedves Ruby-hoz hasonlatos nyelvi megvalósítást. Letisztultsággal, kiterjesztett funkcionalitással, kicsi, de növekvő közösségével, saját webes keretrendszerével és persze az Erlang/OTP nyújtotta magabiztossággal a motorháztető alatt (funkcionális programozás, egyszerű konkurencia modell, elosztottság, stb...) ideális választás mind a tanulás, mind a komolyabb igényű online rendszerek számára.
Erlang? Ezt mi úgysem érthetjük meg... | forrás: turnoff_us, twitter -
Swift
iOS macOS Apple
-
A Swift nem esik túl messze a fájától (sic!), vagyis az Apple amúgy is meglehetősen zárt ökoszisztémájától. A nyelvet az ő termékeik programozására dobták piacra 2014-ben. Az előtte használatos Objective-C-vel szorosan együttműködve, de sok új koncepciót is megvalósítva került a fejlesztők karmai közé, és nincsen rá panasz, no nem mintha lenne más választása annak, aki iPhone-ra iOS-re, stb. fejleszt. Bevallom, nem tartozom az Apple termékeinek és üzletpolitikájának a legnagyobb rajongói közé, de meg kell hagyni, hogy mind e termékek, mind az üzletpolitika működnek, és amíg ez így van, a Swift kötelező tananyag annak, aki ezen eszközökre való fejlesztésre adja a fejét.
Az ellenállás hasztalan? -
Scala
Funkcionális Java Platform-független
-
A Java robosztus ökoszisztémája, funkcionális alapokon. Ezt ígéri a Scala, illetve ez már nem is csak egy ígéret, a nyelv 2004 óta fejlődik és terjed. A funkcionális programozás reneszánszának és a Java platformfüggetlenségének illetve elterjedtségének köszönhetően a Scala telitalálatnak bizonyult. Az objektumok nehézkes rendszere után vélhetően felüdülést jelent a funkcionális hozzáállás célorientáltsága és stabilitása. Meglévő, Java alapú rendszerek újraírása, de újak létrehozása esetén is érdemes utánamennünk a Scalának, ki tudja, lehet, hogy hamarosan letaszítja a Javát kiterjedt birodalmának trónjáról.
-
Rust
Rendszerprogramozás Konkurens Mozilla
Rust vs Go: Logóban nálam a Rust vezet... -
A Rust, a Go-hoz hasonlóan, a rendszerprogramozás, korábban a C nyelv által dominált terepére próbál betörni. A Mozilla támogatásával fejlesztett projekt 2010-ben vált a publikum által elérhetővé, és csak úgy, mint a Go, villámgyors gépi kódra fordul. Célkitűzései közt a biztonságos, megbízható rendszerek és a konkurens, tehát párhuzamos műveleteket végző programok támogatása szerepel. Hogy a Rust vagy a Go lesz-e majd az új C vagy C++, az még koránt sem lefutott meccs, már ha egyáltalán. Láttunk már ilyen ígéreteket többek közt, a D vagy F# nyelvek kapcsán is, mindenesetre a Mozilla (vagy a Google) támogatása elég komoly fegyvertényt jelent, és az igény is egyre nagyobb egy, a programozó dolgát / megbízhatóbb rendszerek fejlesztését segítő alternatíva megtalálására. Mindenképp érdemes tehát odafigyelni, hogy mi történik a Rust háza táján.
-
Elm
Web Kliens oldal Funkcionális
-
A listám végére hagyott két kakukktojás közül az Elm egy olyan domain-specifikus nyelv, amely kifejezetten webes interfészek létrehozására hozott létre Evan Czaplicki. Számunkra talán érdekes lehet, hogy a nyelv a Prezinél nyerte el mai formáját. Egy izgalmasan új, deklaratív, funkcionális nyelvről beszélünk, amely JavaScript / HTML / CSS kódra fordul, így a webes alkalmazások front-endjét egy olyan környezetben hozhatjuk létre, melyre pl. a klasszikus Haskell, vagy az OCaml nyelvek voltak hatással. Abszolút lehetséges, hogy a kliens-oldali webfejlesztés iránya kedvezni fog az Elmnek. Mi sem bizonyítja ezt jobban, mint azoknak a modern Javascript keretrendszereknek a népszerűsége, mint amilyen a Redux vagy a Vue.js, amelyeket pedig részben éppen az Elm féle megközelítés ihletett. Egyszóval lehet, hogy érdemes bemenni az utcájába, ha Webre dolgozunk...
-
Scratch
Oktatás Tanulás Játék
-
Tegye fel a kezét, aki emlékszik még a Comenius Logo nevű remek kis tanuló-környezetre! Igen, arról a bizonyos kis teknősről beszélek... A programozási ismeretek elsajátításának és a programozás népszerűsítésének, gyerekekkel való megismertetésének ezt, a 90-es években Európa-szerte elterjedt eszközét a Pozsonyi Comenius Egyetemen hozták létre többek közt magyar informatikusok. Nos, a kis teknős hamar kiment a divatból, manapság az MIT-nál kifejlesztett, egyre népszerűbb Scratch-el próbálják meg elültetni a szoftverfejlesztés csíráit a fogékony nebulókban a mindenre elszánt infótanárok. Persze a Scratch nem csak gyerekek, de bárki más számára is könnyed, játékos bevezetőt kínálhat a kódolás misztériumába!
Mint mindig, most is várom kommentben, hogy szerintetek mi maradt le a listáról, illetve mindenféle építő kritikát jó néven veszek! Ja, és ha nem akarod, hogy a Doki bedurvuljon, lájkold be a Facebook-oldalam... Köszi!
