Mielőtt elkezdené a kódolást, hogy megtanítsa a számítógépet egy adott probléma megoldására, általában magának kell megértenie a problémát, meg kell találnia a megoldást, és csak ezután kell megtanítania a számítógépet a probléma megoldására. A számítógépes gondolkodás egy módszer, amellyel ezt a folyamatot gyorsabbá és egyszerűbbé tehetjük, de nem korlátozódik csupán a programozásra, hanem életünk különböző részein alkalmazható.

A Computational Thinking (CT) egy olyan fogalom, amelyet az iparági szakértők „siker kódjának” és „létfontosságú készségnek” neveznek. Annak ellenére, hogy viszonylag egyszerű, a CT a szoftverprogramozáson túl is hasznos lehet. A kifejezést először 1980-ban Seymour Papert, matematikus és informatikus javasolta a programozással kapcsolatos különféle problémák és feladatok hatékonyabb megoldásának módjaként.

A CT olyan módszerek összessége, amelyek során egy összetett problémát fel kell bontani egy sor kisebb, könnyebben kezelhető problémára, valamint a probléma lényegét és a megoldást számítógép által végrehajtható módon fejezik ki.

Hogyan működik a számítógépes gondolkodás?

A számítógépes gondolkodás mint technika négy fő módszerből áll, ezek a dekompozíció, az általánosítás/absztrakció, a mintafelismerés/adatábrázolás és az algoritmusok. Mindegyik egyformán fontos és hatékony, ha megfelelő sorrendben alkalmazzák (egy problémára).

Bomlás

A dekompozícióval kezdi, amely egy problémát több kisebb problémára oszt fel, amelyeket könnyebb egyesével megoldani.

Absztrakció (általánosítás)

Ezután egy konkrét feladatra/problémára lép, kizárólag a megoldáshoz fontos információkra koncentrálva, a többit figyelmen kívül hagyva.

Mintafelismerés (adatábrázolás)

A következő lépés hasonlóságokat keres a jelenleg folyamatban lévő probléma és más, korábban (a rendelkezésre álló megoldással) megoldott problémák között. A cél az, hogy olyan mintákat találjunk, amelyek alkalmazhatók az aktuális feladatra.

Algoritmusok

És végül, miután az előző lépések alkalmazásának eredményei a helyükön vannak, kidolgoz egy algoritmust a probléma lépésről lépésre történő megoldására. Ezután egy algoritmust végrehajthat egy számítógép (vagy az agy, amely a legjobb számítógépes megoldás az életében).

Számítógépes gondolkodás használata

A CT használatának ismerete olyan problémák és feladatok megoldása során, amelyekkel a legtöbb szoftverfejlesztő rendszeresen foglalkozik, rendkívül hasznos lehet a kódolási pályafutása során.

Íme egy gyors útmutató arról, hogyan kezdje el alkalmazni a számítási gondolkodást akár kódolási feladatokra, akár bármilyen komoly problémára, amellyel személyes életében találkozhat.

Dekompozíció alkalmazása

A dekompozíció meglehetősen egyszerű, de erőteljes technika, amivel az első pillantásra túl bonyolultnak tűnő problémákat/feladatokat is meg lehet birkózni, és így gyakran okoznak halogatást és egyéb nehézségeket. A kulcs itt az, hogy megtanítsa az agyát a dekompozíció rendszeres használatára, felosztva egy feladatot több kisebb, könnyebben megoldható feladatra. Annak ellenére, hogy a dekompozíció nagyon egyszerű, sőt kézenfekvő módszernek tűnhet, meglepődne, hogy milyen sokan nincsenek tisztában vele, ami sokkal nehezebbé teszi számukra, hogy elkezdjenek nagy, globális feladatokon dolgozni (mint például a Java tanulása, például).

Absztrakció alkalmazása

Az absztrakció alkalmazásának ismerete hatalmas képesség, ha ismeri a technikát, és megtanította az agyát a tudattalan használatára. Az absztrakció arról szól, hogy kizárólag a feladat megoldásához szükséges információkra koncentrálunk, miközben minden mást figyelmen kívül hagyunk. A dekompozícióval kombinálva ez alapvetően az a módszer, amellyel szinte bármilyen problémát vagy problémát megközelíthet az életében. Amikor szigorúan programozási feladatokat végez, az absztrakció segít koncentrálni, és elkerüli, hogy agya túl gyorsan kimerüljön.

Mintafelismerés alkalmazása

A mintafelismerés nagyon fontos készség a kódolásban, mivel sokkal gyorsabban oldja meg a feladatokat az agy által ismert és kényelmesen használható gondolkodási minták alkalmazásával. Ez egy hatékony technika általános életproblémák esetén is: csak próbálja meg elemezni az életében felmerülő problémákat, és találjon (és kölcsönözzön) mintákat élete azon részeiből, amelyek kielégítően működnek, átvive azokat az aktuális problémára.

Algoritmusok alkalmazása

Ha belegondolunk, az életünk az algoritmusok kialakításáról szól. Ezeket szokásoknak hívjuk. Agyunk hajlamos mindennap a szokásokra hagyatkozni, csak azért, mert hatékonyabb és így praktikusabb. Az egyetlen probléma az, hogy legtöbben ezt öntudatlanul tesszük, ami gyakran rossz és káros algoritmusok kialakításához vezet (ezeket nevezzük rossz szokásoknak vagy függőségeknek). A hasznos algoritmusok tudatos kialakításának ismerete rendkívül hasznos életkészség lehet, amely lehetővé teszi céljai elérését és sikeressé tételét. Ami a programozást illeti, az különbözteti meg azt a személyt, aki csak ismeri a kódolást, egy tapasztalt, professzionális számítógép-programozótól, ha egy adott probléma leggyorsabb és leghatékonyabb megoldására alkalmas algoritmust alkot.