Technológiák

Java

A CodePlay Kft. főként Java alapú fejlesztéskel igyekszik kielégíteni megrendelői igényeit. Meglátásunk szerint a Java nyelvvel és a köré épülő technológiákkal, standardokkal egyszerűen és hatékonyan lehet az egyes feladatokat megoldani, ezáltal a megrendelő a lehető legrövidebb idő alatt jut a neki megfelelő megoldáshoz. Természetesen egyes speciális esetekben ettől elérő megoldást is támogatunk, így elképzelhető akár PHP vagy .Net alapú fejlesztés is.

Spring

Fejlesztéseinkhez ha lehetséges a Spring Framework keretrendszert használjuk, ami a jelenlegi Java fejlesztések de-facto szabványává kezd válni. A Spring nem „csak” egy „lightweight container”, hanem egy szemlélet is, hogy egy komplex alkalmazásnak nem muszáj változtathatatlannak lennie. Úgy kell felépülnie egy ilyen alkalmazásnak, hogy a megváltozott igényeket is gyorsan le tudja kezelni, vagyis az alkalmazás részeinek függetlennek kell lennie. Ez persze alap követelmény egy modern alkalmazásnál, de valamilyen rákényszerítő technológia nélkül nehezebben kivitelezhető. Ez a technológia pedig az úgynevezett “dependency injection”, ami azt jelenti, hogy az a különböző részek maradjanak függetlenek és a konténer legyen az, aki ezeknek a komponenseknek a függőségét kezeli.

A Spring Framework sikerét mi sem bizonyítja jobban, mint hogy egyre több nagyvállalat (például IBM, Bea) építi be használható komponensként termékpalettájába.

Struts2

Az általános fejlesztői keretrendszer meghatározása után egy általánosan használható WEB-es keretrendszert kerestünk, ami már sokkal nehezebb feladatnak bizonyult, nemcsak azért mert nagyon sok ilyen keret van a piacon, hanem mert ezeknek előnyei és hátrányai csak több kisebb-nagyon projekt befejezése után értékelhetők ki. A választásunk egy olyan WEB-es keretrendszerre esett, ami az utóbbi évek két legsikeresebb termékének, a Struts és a WebWork keretrendszerek legjobb megoldásainak összekapcsolásából született. A Struts a WEB-es keretrendszerek őse, a legrégebbi és legkiforrottabb vezérlési logikával rendelkezik, a WebWork pedig a leghatékonyabb és legelegánsabb módját nyújtja a az akciók kezelésének.

Az új keretrendszer a Struts2 nevet kapta és már több, mint két éve létezik és ezen rövid idő alatt is az egyik legelterjedtebb WEB-es keretrendszerré vált.
Amellett, hogy ha lehetőségünk van, akkor a Struts2-ot ajánljuk az ügyfeleinknek, többször használtuk már a szintén nagyon sikeres JSF keretet, de igény szerint bármely, a feladatnak leginkább megfelelő keretet is integrálni tudjuk (például Velocity vagy Tepestry). Álláspontunk szerint bármelyik keretrendszer jó, de a legfontosabb, hogy a fejlesztőcsapatnak a használt technológia a „kisujjában legyen”. A mi csapatunkban ez a technológia jelenleg a Struts2 és a JSF, viszont a Struts2-öt egyenlőre több projektben használtuk.

Hibernate

Az utóbbi években átalakult a modell rétege az alkalmazásoknak. Míg kezdetben a modell réteg jelentette magát az adatbázis kapcsolati réteget is, manapság ezt már egy önálló rétegként kezd megjelenni és a modell réteg csak az üzleti logikához szükséges modell osztályok megvalósítását jelenti. Ennek a modern rétegnek a megvalósításához mi aHibernate objektum/relációs adatokat összerendelő perzisztencia szolgáltatását használjuk.

Android

iPhone

Biztonság

Mivel cégünk legtöbbször Internetes alkalmazásokat készít pénzügyi területen működő cégek számára, így a biztonság az egyik legfontosabb része az alkalmazásainknak, ezért is szerepel külön itt, bár egyetlen technológiakánt nem lenne kiemelhető.

Alkalmazásainkat és minden egyes komponensüket számos biztonsági ellenőrzésnek vetünk alá.  Ilyenek például az adat integritás vizsgálatok, adat ellenőrzések, bizalmas adatok kezelése és az úgynevezett „Anti Cross Site Request Forgery” kezelése. Ellenőrzéseinket a legfrissebb tapasztalatokkal frissítjük és az Open Web Application Security Project nevű világméretű nyílt közösség ajánlása alapján. Biztonság szabályaink megvalósítása megfelel a PSZÁF 1/2007. ajánlásának is.

További használt technológiák

Az alábbi lista igyekszik ízelítőt adni azokból a technológiákból, programokból, melyeket használunk és támogatunk az egyes fejlesztéseink során.

Java, J2EE, Sun Application Server, BEA Weblogic, IBM Message Broker, IBM Websphere, JBoss Application Server, Velocity, JBoss Rules Engine, Maven, Ant, Hibernate, XMLBeans, Spring, Struts 1, Struts 2, JSF, Acegi, Spring-WS, Tiles, Sitemesh, Oracle 8, 9, 10, AS400-DB2, Microsoft SQL Server, MySql, JMX, JMS, IBM MQ, Sun Message Queue, VisionPlus VMx, SMS, Php, BEA Integration, JBoss Cache, JBoss Portal, Code Igniter, Smarty, Yahoo User Interface, Google Web Toolkit, AJAX, RedHat Linux, Debian Linux, Adobe Flex, Zend Framework