Webalkalmazás fejlesztés

Web applikáció fejlesztés

Van egy megvalósításra váró startup ötlete?
Vagy szüksége van cégének saját felhőalapú szoftverre?

Mi vagyunk az a webfejlesztő cég, aki elkészíti termékét a piackutatástól a piacra dobásig.

Kérje ingyenes árajánlatunkat!

Webalkalmazás fejlesztés

Nem akar saját fejlesztőcsapatot kontrollálni projektjéhez? Ha külsős webfejlesztő csapatot keres, akár alvállalkozóként is, válasszon minket!

AMIT KÍNÁLUNK #1

A fejlesztés során az alábbiakat
nyújtjuk Önnek

Egyedi funkciók

Különleges, egyedi feladatok elvégzésre, automatizálására vagy annak megkönnyítésére optimalizált alkalmazást készítünk Önnek

Biztonság

A szoftver fejlesztés során ügyelünk a korszerű titkosítási módszerek, friss szoftverek használatára, gyorsan reagálunk az újonnan megjelenő sebezhetőségekre.

Platformfüggetlenség

Gondosan ügyelünk rá, hogy minden eszközön ugyanolyan jól használható megolást kapjon a megrendelő, operációs rendszertől függetlenül

Felhőalapú megoldás

Az alkalmazást felhőben, elosztott szervereken futtatjuk, emiatt bárhonnan kényelmesen, gyorsan elérhető

Dokumentáció

Igény szerint a megrendelő átadáskor a teljes dokumentációt megkapja, mely minden szükséges adatot tartalmaz a szoftver későbbi módosításához

Segítségnyújtás

Ügyfeleink számára a későbbiekben is segítséget nyújtunk, legyen szó akár továbbfejlesztésről vagy korszerűsítésről

Technológiák, amiket használunk

Frontend

A HTML legújabb verziója, amelynek célja, hogy a webes alkalmazásokhoz ne legyen szükség különböző beépülő modulok (pl. Adobe Flash) használatára a bonyolultabb funkciókhoz, az alkalmazás önállóan tudjon működni.

Stílusleíró nyelv, segítségével a webalkalmazásunk sokkal változatosabb lehet a grafikus elemeket tekintve.

Szkriptnyelv, amely a CSS fájlok írását gyorsítja. Használatával átláthatóbb stíluslapokat készíthetünk weboldalunkhoz. Ezzel az esetleges későbbi fejlesztések esetén is gyorsabban elvégezhetőek a módosítások.

Egy reszponzív, a manapság igen népszerű "mobile-first" megközelítés alapján elkészített CSS könyvtár, mely számos előre elkészített UI komponenst tartalmaz. Használatukkal jelentősen felgyorsíthatóak a szoftver fejlesztés folyamatai.

Node.js alapú környezetben alkalmazható Sass preprocesszor, melynek használatával optimalizált stíluslapok hozhatóak létre. Az esetlegesen előforduló kódrészleteket, amikre az adott aloldalon nincs szükség, nem küldi el a kliens számára, emiatt kevesebb adat letöltése szükséges kliensoldalon.

Kliensoldali szkriptnyelv, amellyel további funkciókat adhatunk az alkalmazásoknak a HTML5 képességein felül. Használatával összetettebb funkciók is megvalósíthatóak, ezzel növelve a felhasználói élményt.

A létező legkisebb helyigényű Javascript keretrendszer, melynek használatával jelentős szávszélesség megtakarítható.

A jQuery egy gyors, kis méretű, funkciókban gazdag Javascript könyvtár. Használatával gyorsabban elkészíthetővé válnak kliensoldali funkciók.

Használatával típusossá "változtatható" a Javascript nyelv, így egy nagyobb webapplikáció fejlesztése során számos előre nem látott hibalehetőség kiküszöbölhető vele.

A Facebook hozta létre 2011-ben, azóta a legelterjedtebb Frontend keretrendszerré nőtte ki magát. Több, mint másfél millió webalkalmazás, illetve SPA alapszik rajta. Használatakor izolált kódrészletekből (komponensek) építhető fel a webalkalmazás. Egyre többször láthatjuk cégek álláshirdetéseiben, karrier építés szempontjából is nagyon meghatározóvá vált.

Egy React keretrendszer, mely számos React-ban lévő hiányosságra nyújt megoldást. Sebesség és tartalomoptimalizált appoknál használják leginkább a webapplikáció fejlesztő szakemberek, így gyorsan, nagyban javíthatóak az alkalmazás technikai keresőoptimalizálási "pontszámai".

Backend

Webfejlesztés esetén a leggyakrabban használt szerveroldali nyelv. Nagy előnye, ugyan régóta létezik, de folyamatosan fejlesztik, jól dokumentált, népszerűsége miatt pedig a mögötte álló közösség is fontos szempont lehet.

PHP nyelvhez készült MVC keretrendszer. Felgyorsítja a munkafolyamatokat, mivel a gyakori feladatokhoz szükséges programkódokhoz előre megírt metódusokat találunk benne. Így rövidebb, könnyebben átlátható, jól bővíthető forráskódot kapunk. Tervezésekor a biztonságra is nagy hangsúlyt fektettek.

Relációs adatbázisokhoz használt nyelv. Nyílt forráskódú, az egyik legelterjedtebb adatbázis-kezelő szoftver fejlesztés során.

A Google V8 Javascript motorját használó szerveroldali nyelv, amely folyamatos növekvő népszerűségnek örvend. Egyaránt használják kisebb és nagyobb web applikáció fejlesztés során.

Hosting

Népszerű nyílt forráskódú HTTP szerver szoftver amely igyekszik a gyorsan változó Internet követelményeinek eleget tenni.

Optimalizáltabb, gyorsabb működést tesz lehetővé, jól használható NodeJS alkalmazások kiszolgálására.

Minden webes szoftvert érhet támadás (pl. DDoS), ezeket pedig tudnunk kell elhárítani. Cloudflare használatával az alkalmazásunk egyszerre több szerveren is fut amelyek földrajzilag eltérő helyen találhatóak, emiatt sokkal nehezebb túlterhelni őket és a betöltési idők is sokat javulnak. Lehetővé tesz továbbá tömörítést is, amellyel tovább javítható a felhasználói élmény.

ÖSSZEHASONLÍTÁS

Webalkalmazás vagy weboldal?

A két fogalom sokszor összemosódik, de a kettő sokban különbözik.

A weboldalakról legtöbbször egy statikus bemutatkozóoldal és néhány kép jut az átlagfelhasználó eszébe, emiatt pedig hajlamos a saját lehetőségeit túlzottan behatároltnak tekinteni.

A böngészők rengeteg fejlődésen estek át az utóbbi években, egyre inkább előtérbe kerülnek az olyan egyedi szoftverek, amelyek böngészőn keresztül érhetőek el, alkalmasak kiváltani az asztali szoftverek nyújtotta funkciókat.

Amennyiben komplex funkciókat, esetleg saját platformot szeretne készíteni, akkor válassza a webalkalmazás fejlesztést.

Webfejlesztő
Software as a Service
SaaS

Software as a Service

A Software as a Service (on-demand software) olyan megoldás, amelyben a felhőszolgáltatások erejét használjuk ki.

Az elkészített alkalmazás valamilyen központi szerveren fut, illetve az adatok tárolását is itt szokás megoldani.

Ennek köszönhetően a felhasználók gépeit szükségtelen nagy számítási kapacitással felszerelni, mindössze megjelenítőként funkcionálnak, a megrendelő pedig komoly költségeket takaríthat meg.

További előnye a hagyományos asztali alkalmazásokkal szemben, hogy a klienseken ritkán, akár soha nincs szükség az alkalmazás frissítésére, elég elvégeznünk azt a szervergépen.

Az újonnan megjelenő kritikus sérülékenységek javítása sokkal hamarabb elvégezhető, ami értelemszerűen kevesebb kiesést, biztonságosabb rendszert eredményez.

Kompatibilitási problémák ennél a technológiánál sokkal ritkábban jelennek meg, hiszen a legtöbb operációs rendszerre és architektúrára már megírták a böngészők motorjait, mi pedig az ezek által nyújtott funkciókat használjuk fel.

Amennyiben szükség van rá, a felhasználók tevékenysége is könnyebben monitorozható egy ilyen rendszerben.

GYIK

Gyakran ismételt kérdések

Webtárhely, VPS, dedikált vagy saját szerver?

A Webtárhelyeket akkor ajánljuk, ha komplex funkciók nélküli weboldalt szeretnénk, mivel ezek a szolgáltatások gyakran korlátozzák a webfejlesztő munkáját például nehézkes csomagtelepítéssel, letiltott portokkal. Blog üzemeltetéshez például gyakran kevésnek bizonyulnak, webalkalmazásokhoz egyáltalán nem ajánljuk ezeket a megoldásokat.

A VPS-ek úgynevezett virtuális szervert adnak a felhasználó kezébe, amelyen könnyen hozzáférünk az operációs rendszer funkcióihoz és telepíthetjük azokat a szoftvereket amikre szükségünk van. Könnyedén ki tudnak szolgálni egyszerre több weboldalt és webalkalmazást. A korlátot talán az erőforrások jelenthetik, a VPS-ek általában valamivel gyengébb maximális teljesítményt adnak a dedikált szerverekhez képest, de ez webes környezetben, jól optimalizált kód mellett csak több ezer egyidejű felhasználós terhelésnél szokott problémát jelenteni.

A dedikált szerverben (a VPS-sel szemben) a rendelkezésre álló hardvert nem osztják szét több felhasználó között, az ügyfél az egészet bérli. Az elérhető maximális teljesítménye ezeknek a szervereknek általában jobb, de értelemszerűen drágábbak.

A saját szerver rendelkezik a legmagasabb költségekkel, mivel a konkrét hardvert is meg kell vásárolni kezdésként, ami esetenként több milliós tétel, a fenntartásuk pedig további költségeket jelent a felhasználó számára, hiszen a szünetmentesítésről, hűtésről és biztonsági mentésekről is nekünk kell gondoskodni. A legnagyobb előnyük a biztonság, hiszen az adatok teljes mértékben a mi kezünkben vannak. Használatuknak leginkább belső céges környezetben van értelme, ahol a bizalmas adatok internetre feltöltése teljesen kizárt.

Mi az a webalkalmazás?
Bár napjainkban egyre népszerűbbé válnak, gyakran nem vagyunk tisztában azzal, hogy éppen webalkalmazást használunk. Jó példa erre a Spotify, amelynek asztali kliensalkalmazása ElectronJS keretrendszerben íródott, Chromium motort csomagoltak egybe a webes felülettel. De mi ebből gyakorlatilag semmit nem érzékelünk, pontosan ugyanolyan mint bármelyik hagyományos alkalmazás. A lehetőségek itt nem érnek véget, hiszen mobilalkalmazások is elkészíthetőek hasonló módon, a felhasználónak pedig pontosan ugyanolyan élményt nyújt. A webalkalmazások nagy előnye, hogy a kódbázis közel azonos tud maradni a különböző platformokon, amivel a megrendelő jelentős költségeket és időt spórol.
Mi történik a webalkalmazással ha épp nincs internet hozzáférésem?
Az egyszerű weboldalaknál megszoktuk, hogy ha nincs internetelérés, megnyithatatlanná válnak. Ez egy alkalmazásnál gyakran megengedhetetlen és szerencsére nem is kell ilyen kompromisszumot kötnünk. A webalkalmazások megírhatóak felhőben futó vagy teljesen offline környezetre is, illetve akár belső hálózati kommunikációra, nem feltétlen van szükségük internet hozzáférésre (bár kiegészítésként természetesen használhatják). Amennyiben szeretnénk bármilyen földrajzi helyről elérni az alkalmazást, telepítés nélkül, szinte bármilyen eszközön, akkor értelemszerűen szükség lesz internetre, de ez nyilván a technológiától független, natív appoknál is így van.
Milyen a webalkalmazások teljesítménye a natív alkalmazásokéhoz képest?

Az ilyen mértékű kompatibilitásnak ára van, igaz? Nos, a helyzet nem ennyire egyszerű. Egyrészt a szoftverfejlesztés kevés esetben működik kompromisszumok nélkül, legyen az web applikáció, mobil vagy asztali alkalmazás, hiszen utóbbit is írhatjuk rengeteg programnyelven. Ha mindent csak sebességre optimalizálnánk, akkor kizárólag assemblyben írt programjaink lennének, amelyek ugyan gyorsabbak, de borzasztó gyenge kompatibilitással rendelkeznek. Minden architektúrára külön-külön meg kellene írnunk ugyanazt, ez pedig rengeteg időt emésztene fel.

A gyakorlatban a teljesítmény nyereség/veszteség egyébként is sokkal jobban függ az általunk írt kód minőségétől. A rosszul optimalizált megoldások natív alkalmazásokban is lassúak. Tehát inkább arra érdemes törekedni, hogy hogyan tudunk átgondolt, optimális kódot írni, mintsem arra, hogy a lehető leggyorsabbnak vélt keretrendszert vagy programozási nyelvet használjuk. Így értelemszerűen a webalkalmazásokkal is elérhető olyan teljesítmény, hogy a natív alkalmazásoktól csak nehezen, vagy egyáltalán ne legyen megkülönböztethető.

Milyen költséget jelent egy ilyen webes megoldás?

Általánosságban elmondható, hogy a multi platform alkalmazásoknál a programozási jelentette költség lényegesen alacsonyabb, hiszen nincs szükség a kódbázis újraírására.

Ha csak egyetlen platformon szeretnénk az alkalmazást használni, akkor is érdemes lehet a webapp alapú megoldások felé fordulni, hiszen a böngészőmotor már tartalmaz rengeteg beépített, az adott rendszerre optimálisan megírt funkciót amit a webfejlesztő cég felhasználhat az elkészítés során.

Milyen követelményei vannak a webalkalmazások használatának?
Ez az egyik legnagyobb előnye ennek a megközelítésnek. Gyakorlatilag bármin használhatóak ezek az alkalmazások, amikre tudunk modern böngészőt telepíteni.
Nem fog túlzottan hasonlítani a design az egyszerű weboldalak kinézetére?
Nem. Ha van konkrét elképzelése a kinézettel kapcsolatban, azt mi megvalósítjuk, nem korlátoz minket a webes környezet ilyen szempontból. Ha csak a fő irányvonal van meg, akkor csapatunk a tervezés során folyamatosan egyeztetve Önnel alakítja ki olyanra a felületet, amellyel biztosan elégedett lesz.
Milyen feladatokat láthat el egy ilyen webes app?

Nehéz pontosan meghatározni a felső korlátját a technológiának, hiszen a jelenleg megszokott megoldások is képesek meghökkentő dolgokra. Vegyük alapul a WebGL-t, amely a HTML5 canvas elemét használva 3D megjelenítést tesz lehetővé, Unity platformon pedig ezt kihasználva akár 3D játékokat is fejleszthetünk rá, amelyek böngészőben futnak, hardveres gyorsítással. Ennek a következő lépcsője lesz a jelenleg fejlesztés alatt álló WebGPU, amely a Vulkan, Metal és Direct3D 12 API-n alapul.

Látjuk tehát, hogy amit asztali alkalmazásban el tudunk képzelni, az valószínűleg működik webes környezetben is. Nézzünk néhány példát:

  • Adatrögzítő és feldolgozó rendszer, dokumentumgenerátorok (PDF, Excel)
  • Automatikus fizetési, számlázási rendszerek
  • Ügyfélportálok
  • Munkaidőnyilvántartó és beléptető rendszerek
  • Készletinformációs rendszerek
  • Blog motorok
  • És még sok minden egyéb, amit a megrendelő igényel
Van lehetőségem később bővíteni az alkalmazásomat?
Igen, van. Nálunk minden webfejlesztő ügyel a későbbi bővíthetőségre, a kód átláthatóságára. Igény esetén külön dokumentációt is készítünk amelyet átadáskor a megrendelő kézhez kap.
Itt is meg kell felelnem GDPR szabályainak?

Igen, hivatalosan mindig figyelembe kell venni, ha személyes adatokat kezelünk (Ami lehet egy e-mail cím is). Ez a rendelet minden természetes személyt véd, ezáltal az alkalmazás felhasználóit is.

Fontos, hogy a felhasználók számára legyen elérhető a tájékoztató dokumentum arról, hogy milyen adatokat tárolunk róluk. Arra is oda kell figyelnünk, hogy az általunk gyűjtött információk mellett az egyéb, harmadik félnek átadott adatokat is ismertetnünk kell, azaz például a Google Analytics használatát is bele kell írnunk ebbe a dokumentumba.

Ezeken kívül kötelesek vagyunk az adatokat biztonságos módon tárolni. Ha nem így teszünk, arra értelemszerűen nehezebben jönnek rá, mint a GDPR dokumentum hiányára, de egy esetleges adatszivárgásnál kiderülhet. Tehát ezt a kötelezettséget sem vehetjük félvállról, ennek kiküszöbölése pedig nagyrészt a webfejlesztő dolga már a projekt tervezés fázisában.

Mi segítünk Önnek, hogy az üzleti alkalmazása megfeleljen az Uniós adatkezelési szabályoknak.

Többnyelvű alkalmazások is megvalósíthatóak?
Természetesen, nem magyar nyelvterületre fejlesztünk kizárólag.