A gyakorlás ereje a programozás tanulásában

Légy “lifelong learner” a programozás területén!

A lifelong learner angol kifejezés. Élethosszig tartó tanulást jelent. A lifelong learning alapgondolata az, hogy soha nem állsz meg a tanulással. Az életben minden vagy növekszik, vagy hanyatlik. Ha nem fejlődsz, akkor hanyatlasz. A programozás-ban sincs ez másképp.

Ha még csak most barátkozol a gondolattal, hogy programozónak állj, vagy csak kevés tapasztalattal rendelkezel a területen, akkor biztosan megrémít az a hatalmas információmennyiség, amelyet el kell sajátítanod a szoftverfejlesztéshez. Igen, ez egy olyan terület, amelyhez sok ismeret szükséges, és annak elsajátításához időre van szükség. Idő kell az elmélet megértésére és idő kell a leülepedéhez is.

Idő kell továbbá a tudásod alkalmazásához is. Ez tulajdonképpen hosszas gyakorlást jelent praktikusan olyan feladatokon, amelyeket később elhelyezhetsz a portfóliódban. Az IT egy olyan terület, amely napról-napra változik. Nem lehet leállni a folyamatos tanulással, ha lépést akarszt tartani a szakmával. Nem lehet azt mondani, hogy “na most már eleget tudok, innentől kezdve csak alkalmazom az eddig tanultakat”. Ez egy óriási hiba lenne, hiszen gyakorlatilag minden nap jönnek ki újabb és újabb technológiák, módszerek, keretrendszerek, alkalmazások és fejlesztések, amelyeket ismerni kell a szűkebb területeden. Folyamatosan figyelni kell a trendeket, amelyek megmondják neked, hogy most éppen milyen irányba célszerű haladni, milyen technológiákat, nyelveket érdemes megtanulni a hatékonyabb munkavégzéshez.

Legalább a saját, választott területeden tisztában kell lenned a világ jelenlegi állásával, trendjeivel, ismerned kell a szakterületed legfrissebb friss lehetőségeit, hogy aztán alkalmazhasd azokat. Ehhez folyamatos irodalmazásra van szükség, amelyet nem tudsz megspórolni. Légy lifelong learner! Hidd el, megéri.

A gyakorlás ereje a programozás-ban

Elemi fontosságú továbbá az ismereteid frissítésén túlmenően a tudásod alkalmazása, vagyis a gyakorlás. A különböző könyvek, videók, cikkek tanulmányozása csak az első lépés. He ehhez nem társul egy alkalmazási, gyakorlási fázis, akkor a tudás rövid idő alatt halott tudássá válik. Mint minden készségszakmában, a programozás-ban is nagyon fontos a gyakorlás.

Az alapvető programozás-i készségek mesteri szintre való fejlesztése lehetővé teszi, hogy bármely szoftverfejlesztési területen is dolgozol, képes leszel azt átlátni és alkotni az adott területen. Olyan alapokra, alap feladatokra gondolok itt, mint például a problémák hatékony megközelítése, megfogalmazása és részproblémákra bontása. Fontos továbbá, hogy képes legyél mesteri szinten az algoritmusok tesztelésére és a felmerülő hibák javítására.

Tudnod kell, hogy hogyan hozz létre hatékony, nagy teljesítményű alkalmazásokat és fenntartható, karbantartható kódot. Ezeket az alapvető készségeket pedig nem lehet csak úgy futólag elsajátítani. Ehhez évekre és sok-sok gyakorlásra van szükség. Egy kezdő számára viszont a legnagyobb kihívás nem feltétlenül a kitartó gyakorlás, hanem a megfelelően hatékony haladási irány kijelölése. Ebben érdemes mentoraid segítségét kérni, hiszen rengeteg időt spórolhatnak meg neked.

Portfólió munkák, projekt alapú képzés

A mesteri szint eléréséhez vezető út a jól megválasztott portfólió munkákkal van kikövezve. Ez azt jelenti, hogy időről időre definiálni kell magadnak egy projektfeladatot, amelyet implementálsz. Találnod kell egy olyan funkciót, amelyet szívesen megvalósítanál, amellyel örömmel foglalkoznál. Ha egy ilyen alkalmazást fejlesztessz, akkor nem fogod érezni az idő múlását a hibakeresés közben, és az újabb és újabb ismeretek is csak úgy észrevétlenül tapadnak rád.

Ha éppen nem a saját projekteden dolgozol, akkor nézz körül néhány olyan programozás-sal foglalkozó oldalon, ahol különböző kihívásokat, versenyfeladatokat készíthetsz el. Ilyen például a Codewars [link] vagy a Codility [link] oldal is.

Hibázz sokat, hibázz olcsón!

Fontos, hogy hibázz sokszor és hibázz olcsón. Amíg nem vérre megy a dolog érdemes próbálgatni a határaidat. Ne törekedj a tökéletességre, csak adj egy működő megoldást kezdetben. Később még bőven ráérsz hatékonyabbá és szebbé varázsolni a kódot. Minél többet hibázol, annál többet kell javítanod, és annál gyorsabban fejlődsz. Mintha egy hangszeren tanulnál játszani. Kezdetben nagyon idegesítő, hogy folyton hibázunk, de ez a fázis elengedhetetlen a mesterré váláshoz.

Legyél kalandor és nézz a dolgok mögé!

A gyakorlás arra is kiterjedhet, hogy az általad írt kódot újrafogalmazod. Ez azt jelenti, hogy egy már működő megoldást kis mértékben átírsz, esetleg teljesen új alapokra helyezel. Megteheted például, hogy egy általad megírt függvényt egy osztály részévé teszel és egy létrehozott objektumpéldány tagfüggvényeként használod a továbbiakban.

Ha ez egy kicsit idegen volt volt számodra, ne ess pánikba, csak egyszerűen keress rá a neten a fogalmakra. Ez egy módszertan. Ha további fogalommal találkozol, amelyet nem ismersz, akkor arra is keress rá és így tovább. Erről szól a hatékony tanulás. Azt is csinálhatod, hogy a működő kódodat megnyitod egy szerkesztőben és egy új fájlban újra kezded a kódolást, ezúttal más adaszerkezetekkel, és szebb kivitelben.

Esetleg kipróbálhatsz új függvényeket, vagy szándékosan megadhatsz hibásnak tűnő paramétereket “lássuk, mi történik” alapon. Minden próbálgatással és hibajavítással töltött idő a profivá válásodat szolgálja. Aki az alapok mestere, azt komplexebb kérdésekben is nehéz zavarba hozni.

Ne ess pánikba, tanuld meg használni az Internetet!

Tanulj meg debugolni, vagyis hibákat kijavítani. Ez szintén egy alapkészség, amelyet nem lehet eleget gyakorolni. Kezdetben érdemes a programkódod sorról-sorra írnod és futtatni, megnézve, hogy dobott-e hibát a rendszer. Nem érdemes túl sokat gépelni két próbálkozás között, mert rutin híján nem fogod tudni, hogy pontosan mi okozta a problémát. Még egy komoly integrált fejlesztő környezetben sem.

Tanulj meg hatékonyan rákeresni a felmerülő problémákra az Interneten. Nagy valószínűséggel nem te vagy az első, aki az adott hibát elkövette, vagy aki az adott funkciók szeretné megvalósítani. Sok esetben az első találatban megleled majd a választ, ha jó kulcsszavakkal keresel. Ebben a harcban a Stack Overflow oldal [link] lesz a legnagyobb segítségedre. De fejlesztők blogjain is sok hasznos információt találhatsz, továbbá próbálkozhatsz az adott nyelv, vagy technológia hivatalos leírásával is. Amit semmiképpen nem javaslunk, az a kész megoldások másolása.

Sok esetben okoz gondot ugyanis kezdőknél, hogy gyönyörű megoldásokat találnak a neten, de nem képesek azt integrálni. Ezt a problémát úgy közelítheted meg legjobban, ha mélyebben átgondolod az adott struktúrát, kipróbálod az elemeit, és egyenként ülteted át azokat a programodba, folyamatos hibajavítás mellett.

Anyagaink folyamatosan bővülnek, ezért érdemes külülnézned a www.programozaskarrier.hu oldalunkon, illetve Youtube csatornánkon is.

Innen folytatjuk a következő anyagban.

Scroll to Top