Menü

Kiemelt témánk

Feliratkozás


Eseménynaptár

előző hónapkövetkező hónap
70_artbasel.jpg
Forrás: ITB

Az elmúlt évtizedek alatt teljesen átalakult a szoftverfejlesztés világa. Ahhoz, hogy megértsük a mai kor programozási paradigma-változásait érdemes egy gondolat erejéig visszatekinteni a múltjára, kialakulására.

A modern programozást két évszázaddal megelőzően, a 18. században Joseph Marie Jacquard lyukkártyák segítségével állította be a szövőgépek mintázatát. A modell meglehetősen egyszerű volt, a szövet minden sorának megfelelően elhelyezkedett egy lyuk-pozíció, ahol van lyuk, ott megy a keresztszál. A gép előállítása ugyanakkor hosszú és bonyolult mérnöki munkát követelt, sok éven keresztül dolgoztak rajta míg elkészült, majd folyamatosan finomították, pontosították. Ez a gép ugyanakkor cél-eszköz volt, csak és kizárólag erre a feladatra lehetett használni.

Sok matematikust, mérnököt foglalkoztatott, hogy hogyan lehetne univerzális gépet csinálni, olyat, amit nem kell célfeladatra építeni, hanem valamilyen módon megmondhatjuk neki, hogy mit csináljon. Neumann János Alan Turing elmélete alapján megalkotta a Neumann-architektúrát, ami a mai napig leírja az elterjedt számítógépeink működési alapjait. Az pedig, hogy mit csináljon a számítógép, maga a programozás.

 

Amikor berobbant az internet…

A programozást eredetileg a Jacquard-kártyák által ihletett – az 1980-as évekig az IBM rendszereiben is használt – lyukkártyák segítségével végezték. A feladat azonban komoly szaktudást igényelt. Fortran, Cobol és számos Assembler nyelvben végezték a kódolást. Mai szemmel nézve faék-egyszerűségű feladatokat is hetekig tartott megtervezni, leprogramozni, lyukasztani, debuggolni úgy, hogy napokkal később kapjuk meg az eredményeket. Aztán jött hardverek tekintetében a mágnesszalag, mágneslemez, az egyre komolyabb processzorok, a személyi számítógépek és ezzel egyidejűleg a programozási hatékonyság növelése érdekében szoftver tekintetében az egyre absztraktabb programozási nyelvek. Ilyenek voltak kezdetben a Pascal, C, Basic, Smalltalk. Egyre fontosabb szerepet kapott a programozási módszertan (procedurális, moduláris) és költség-hatékonyság szempontjából egyre fontosabbá vált a kódok újrafelhasználhatósága, karbantarthatósága, mint erőforrás-gazdálkodás. A programozás úgy zajlott, hogy az elkészült specifikációk alapján a fejlesztők el tudták készíteni a programokat, ami megfelelő tesztelés után éles üzembe állhatott. Egy-egy ilyen program-fejlesztési projekt során a technológia adott és a követelmények jól definiáltak voltak.

A ’90-es években az internet térhódításával óriási lendülettel terjedtek el a hálózatba kapcsolt rendszerek, így azok bonyolultsága, komplexitása is. A programozóknak egyre nehezebb dolga volt egy-egy domain (téma) megismerésével, ezért olyan módszerek jöttek létre, mint az Objektum-Orientált, melyek egyre közelebb hozták a programozást a való világhoz, egyre több olyan utasítás került egy programba, ami hamarabb megérthető, írható és olvasható. A szoftveripar újabb és újabb technológiai elemet hozott létre, hogy egyszerűsítsék a fejlesztők munkáját és növeljék hatékonyságukat.

 

Akárcsak a legojáték

A 21. század IT elvárásrendszere olyan komplex informatikai struktúrát kíván meg, melyeket a hagyományos követelményelemzési módszerekkel már nem lehet hatékonyan kielégíteni. Ezért olyan keretrendszerek (például JavaEE, Spring, AngularJS, NodeJS) jöttek létre, melyekben legoelem-szerűen lehet a kész megoldásokat egymásra építeni, Szolgáltatás Orientált Architektúra (SOA) szemlélettel az egyes elemek csatlakozásai jól definiáltak, ezek megfelelő alkalmazása, integrálása és új szolgáltatások írása valósítja meg a programozást. Ugyanakkor ez azt is jelenti, hogy a követelmény-meghatározás és a programozás között már nincs túl nagy szakadék. Ha pontosan tudott, hogy mi a feladat, akkor kis túlzással már készen is van a fejlesztés: ergo nem tud elszakadni egymástól a megrendelő és a programozó. Ha viszont nincsenek rendszeres interakcióban, akkor nem olyan szoftver valósul meg, amit a megrendelő szeretett volna. Erre a problémakörre ad megoldást az egyre népszerűbb – IdomSoft által is vallott és bevezetés alatt lévő – agilitás, ami keretet ad az ilyen típusú együttműködéseknek.

 

Hova jutott el a szakma 2019-re?

Mi mondható el, milyen is egy modern nagyvállalati szoftver? Említhetnénk a felhőtechnológiát, de mivel mindenki, aki egy távoli szerveren futtat valamilyen szoftver-komponenst, már felhőt kiált, ez a kifejezés annyira amortizálódott, hogy inkább nem használjuk. Használjuk azonban azokat a tulajdonságokat, amik azt megtestesítik.

Nagyon magas absztrakciós szinten születik a kód, mindenki egy szeletét ismeri a teljes rendszernek, emiatt nagy összhangra van szükség ahhoz, hogy szinergikusan együtt tudjanak a komponensek működni. Azon túl, hogy a szoftverkiadás folyamatát gyorsítani (CI-CD) és szabványosítani (kódelemzés, biztonsági ellenőrzés) kell, ajánlatos a fejlesztést automata teszteszközök segítségével támogatni, hogy a fejlesztést követően minél kevesebb idő menjen el a minőségbiztosítással. A rendszerek infrastruktúrafüggetlensége okán érdemes konténerizációt használni, hogy a fejlesztői környezet minél kevésbé térjen el a majdani működési környezetétől.

Ez azonban nem csupán az üzleti szektorra érvényes. A magyar kormányzat számára is fontos például, hogy a részére készülő alkalmazások modern, versenyképes és szabályozott keretek között folytatható fejlesztések során jöjjenek létre, ezért egy egységes úgynevezett Állami Alkalmazás-fejlesztési Környezet (ÁAFK) kialakítását határozta meg. A környezet nem hoz létre új intézményeket, hanem a már meglévőket ruházza fel új szerepekkel a következő öt kiemelt célt szem előtt tartva:

– új alkalmazások fejlesztése az elavult technológiák kizárásával

– központi, naprakész forráskód-kezelés és kódminőség ellenőrzés

– sablonizált, nyilvántartott dokumentálás

– egységes technológiai szolgáltatások

– alacsony költséggel üzemeltethető technológiák.

Ezt az új alapokra helyezett állami célú szoftverfejlesztések keretében létrejövő hatékony környezetet az IdomSoft Zrt. alakítja ki és fejleszti tovább. Ezzel nemcsak egyszerűen programozást biztosítva, hanem szakértői támogatást nyújtva az alkalmazásfejlesztés minden egyes szereplőjének annak érdekében, hogy az alkalmazásfejlesztés eredményeként az állami célok teljesülése mellett a fejlesztők, mint ügyfeleink számára is valóban minőségi termék születhessen.

 

Karrierszkenner

Kíváncsi, hol dolgozik egykori kollégája, üzleti partnere?
Szeretné, ha az ön karrierjéről is hírt adnánk?

Böngésszen és regisztráljon!

Jelenleg 2074 személy szerepel adatbázisunkban.
Az utolsó regisztrált:Németh Péter

A legkeresettebb emberek: