Nem csoda, ha ijesztően hangzik a programozás szó maga. A régi mikrogépek BASIC programsorai után a PC-n leginkább a fordítóalapú nyelvek vetették meg a lábukat, a procedurális programozás óta pedig egyre nagyobb teret nyernek az objektumorientált nyelvek, de a forráskódot jobbára még azok esetében is kőkemény szövegként kell megszülnünk, sok-sok zárójellel, ami magyar billentyűzetkiosztás mellett különösen fájdalmas. Szerencsére vannak integrált környezetek, és egyre inkább divat a vizuális komponenskezelés, sőt, akadnak szöveges kódolás nélkül programozható rendszerek is.
Nagyok és robusztusak
Azok, akik használtak már objektumorientált fejlesztőrendszert (akár ha csak a Turbo Pascal 6.0-t), jó eséllyel térhetnek át egy modernebb eszközre. Nagyon sokan esküsznek a Microsoft Visual Studióra, melyből mindig elérhető ingyenes (Express) kiadás a tanulókat, áttérőket és a kísérletezőket támogatandó. Jelenleg a legfrissebb, 2012-es Visual Studio még RC fázisban jár, így ingyen szert tehetünk rá. A legkönnyedebb darab a csomagban talán a Visual Studio LigthSwitch, mely önállóan is kapható, és része lesz az új Visual Studio csomagnak. A kifejezetten saját üzleti alkalmazások gyors elkészítésére szakosodott rendszerrel leképezhetők az üzleti folyamatok és jogosultságok, sok esetben a kód szerkesztése nélkül is.
A Java is rendelkezik vizuális szerkesztőkörnyezettel, ráadásul használata ingyenes, emellett elmondható róla, hogy sokkal többféle hardverplatformon és operációs rendszeren használható, mint a DotNet-alapú VisualStudio. A két platform emellett sok tekintetben hasonló: erőteljes kódszerkesztési, vizuális komponens- és eseményszerkesztési támogatást kapunk velük, de a végén semmiképp sem ússzuk meg valódi programozási ismeretek nélkül. Cserébe pár év gyakorlás után sok mindent véghezvihetünk, például keresettek lehetünk a munkaerőpiacon.
Kísérleti utakon
Ha valóban vizuális, sőt, kód nélküli programkészítő eszközt keresünk, óhatatlanul körül kell néznünk az egyedi megoldások és kísérleti projektek mezején. Akadnak nyílt forráskódú, ingyenes és fizetős megoldások is, de sokszor találni félbehagyott projekteket.
Újszerű megközelítést alkalmaz például az AgentSheets fejlesztőrendszer. A Conversational Programming annyit tesz, hogy a fejlesztőkörnyezet folyamatosan próbálgatja a készülő programot és előrejelzéseket ad. Az alkalmazások a taktilis programozás jegyében egymással együttműködő objektumokból (Agent) épülnek fel, melyeknek feltételeit, szabályait és akcióit állítgatva folyamatosan próbálgathatjuk működésüket és a program kimenetelét, vizuális visszajelzést kapunk a hibákról és a lehetőségekről. Tipikusan kisebb játékokat és szimulációs projekteket érdemes létrehozni a szoftverrel, ami Java appletet készít a végeredményből. A 99 dolláros AgentSheetkliensoldal véleményünk szerint programozók számára borzasztó élmény, épp a dolgok szokatlanul természetes megközelítése miatt, ugyanakkor kifejezetten jó lehet azoknak, akik nem értenek a hagyományos programozáshoz.
Sokszor az AJAX technika szolgál a modern webalapú kezelőfelületek és a kiszolgálón futó háttéralkalmazások fejlesztésére. A komplex technika lényege, hogy kliens oldalon Javascript, szerver oldalon pedig egy másik nyelv (Java, PHP, Ruby, Perl, Python) kap szerepet, emiatt a fejlesztés korántsem egyszerű.
Ezt egységesíti a nyílt forráskódú Tersus fejlesztőrendszer, mely ugyanazt a nyelvet nyújtja a programozó számára kliens és szerver oldalon is, elrejtve a részleteket. Olyannyira, hogy itt nincs szó semmiféle kódolásról, az építőelemek (adattípusok, kezelőfelület, matematikai függvények, adatbázis- és dokumentumműveletek és félkész modulok) diagram formában érhetők el, az összefüggéseket nyilakkal, ábrákkal érzékelteti a program, még a hibakeresés is vizuálisan történik. Logikája nem a szokásos, de ha szerver és kliens oldali alkalmazást szeretnénk ingyenes eszközzel, akkor nagyon is érdemes kipróbálnunk, Windows, Mac és Linux alatt is fut.
Érdekes kezdeményezés a Google App Inventor, melyet tavaly nyílt forráskódú egyetemi projektté alakított a cég. A továbbra is Google fiókkal használható webes felületen nagy vonalakban megtervezhetjük Android alkalmazásunk képernyőit, elhelyezhetjük a különféle komponenseket. Aztán a projektet saját gépünkre letöltve a Blocks Editorban definiálhatjuk a kódblokkokat, puzzle stílusú elemekből kirakhatjuk a kívánt lépésék sorát, az elágazásokat, döntéseket és ismétlődő, ciklikus lépéseket. Projektünk végül gyakorlatilag Java-alapú lesz és áttölthető Android-alapú telefonunkra.
Játszani is engedd!
Sajátos jellege miatt a játékkészítéshez különösen érdemes céleszközöket igénybe venni. A 2D hobbi-játéktervezés az a terület, ahol valóban hamar eligazodhatunk programozási ismeretek nélkül is. Szobákat rendezhetünk be, minden elem viselkedését megadhatjuk, feltételekhez köthetjük (ütközés, gombnyomás, egérmozdulatok). Minden kereskedelmi rendszer esetében hatékony oktatóanyagok segítik a kezdőket, csak egy kis angoltudásra lesz szükségük az induláshoz.
A játékkészítők közül talán a legegyszerűbben használható a GameMaker, melynek ingyenes, Lite verziója is letölthető a YoyoGames honlapjáról, illetve telepíthető mellékletünkről. Csak Windows alatt futtatható játékokat készíthetünk az időkorlát nélküli próbaverzióként működő GameMaker Lite segítségével, de 39 dollárért teljes verzióra térhetünk át számos extrával (pl. élsimítás, csapatmunka-támogatás, többjátékos mód, JavaScript könyvtárak használata, automatikus útkeresés, betöltőképernyő).
Létezik csak Macen használható változat, ami érdekes módon még olcsóbb is a Windowsosnál. Nemcsak kipróbálhatjuk a fejlesztőeszközt, hanem működő, használható játékokat hozhatunk létre úgy a legolcsóbb kiadással, mint a legdrágábbal. Ha megvásároljuk a 99 dolláros Game Maker:Studiót, akkor a Box2D fizikai motorját is megkapjuk, így az Angry Birds klónok gyártására például lehetőségünk nyílik. Mac, Android, iOS és HTML5 alkalmazást is generálhatunk projektünkből, de az opcionális mobilos export modulok elég drágák, 199 dollárért vásárolhatók meg. (Mac OS-hez és iOS-hez kell egy Mac OS X-alapú számítógép is).
Hasonlók a ClickTeam eszközei, ezeknek azonban nincs ingyenes kiadása, csak próbaidőszak és három eléggé elkülönült alkalmazás közül választhatunk. A Games Factory 2 az alapokat nyújtja, csupán SWF exportert szerezhetünk be hozzá. A Multimedia Fusion 2 már kezeli az átlátszóságot és számos pluszt nyújt, gyakorlatilag minden platformra készíthetünk vele alkalmazást (SWF, iOS, Android, XNA), de ehhez meg kell vásárolnunk a megfelelő kiegészítő modulokat, és fel kell tüntetnünk a szoftver kezelőfelületén, hogy az az MMF2-vel készült. Egyébiránt itt már minden a miénk, logókötelezettség nélkül generálhatunk képernyővédőket, Java appleteket, gyakorlatilag bármit.
Aki igazi, kereskedelmi minőségű 3D-s játékokat szeretne alkotni, az jó, ha körülnéz a Unity Game Engine háza táján. Egyrészt pár másodperc alatt rádöbbenhet, hogy mekkora feladat egy egyszerűbb játék részletes kidolgozása még egy fejlett motor és komplex fejlesztőrendszer birtokában is. Másrészt egy amúgy 1500 dolláros, de magáncélokra ingyenesen használható, full extrás fejlesztőeszközt ad, mely kezeli a különféle 3D modelleket (Maya, 3DS Max, XSI, Blender), a Photoshop fájlokat és úgy általában mindent.
Igaz, esetükben még kevésbé lehetünk meg nyelvismeret nélkül, hiába végezhető a munka túlnyomó része vizuális felületen. Az összetett fejlesztői környezet C# (azaz nyílt alternatívája, a MonoDevelop), JavaScript és Boo (egy Python változat) szkriptekkel programozható, azaz lesz mit tanulnunk. Igazából olyanoknak ajánlható a platform, akik már élesben programoztak valamennyit lehetőleg a C++, C# vagy Java nyelvek valamelyikén, és véresen komoly terveik vannak. Biztatásul jó tudni, hogy számos nagyobb cím készítéséhez (pl. a Battlestar Galactica Online, Samurai: Way of the Warrior, Tiger Woods PGA Tour Online) a Unity Game Engine-t használták a nagy kiadók is, és időnként keresnek fejlesztőket.
Kodu – nemcsak játszani, alkotni is
A Microsoft által indított Kodu Game Lab kísérleti projekt célkitűzése, hogy a gyerekek és játékos kedvű felnőttek ne csak passzív fogyasztói legyenek a szoftveripar e szórakoztató ágának, hanem maguk is képesek legyenek előállítani játékokat.
Az ingyenesen letölthető Kodu fejlesztőrendszerrel PC-re vagy Xboxra készíthetnek látványos 3D világokat, prezentációkat és játékokat anélkül, hogy akár egy sor kódot begépelnének. Mi több, a célok között szerepelhetett a vizuális érdeklődésű felhasználók – köztük elsősorban a gyerekek – figyelmének megragadása, mert maga a „programozás” egy igen látványos, könnyed felületen zajlik, leginkább az egeret kell igénybe venni hozzá. Annyira jól kitalált játékfigurák és funkciók állnak rendelkezésre, hogy a gyors sikerélmény garantált, az első projektnek ajánlott hallövöldés játék pár perc alatt összerakható.
Hasznos linkek:
agentsheets.com
clickteam.com
eclipse.org/
fuse.microsoft.com
microsoft.com/hun/visualstudio
teach.appinventor.mit.edu
tersus.com
unity3d.com
yoyogames.com