A CodeBerry Programozóiskola “Bevezetés a programozásba” című cikksorozatában programozással kapcsolatos témákat feszegetünk, és mindenről szót ejtünk, amire a kezdetekben szükséged lehet. Kövesd a blogunkat, ha még több olyan cikket szeretnél olvasni, amiben minden programozással kapcsolatos kérdésedre választ találhatsz!

Ebben a cikkben arra vállalkozunk, hogy végighaladjunk azokon a szempontokon, amik a programozás alapjaival való ismerkedéskor felmerülhetnek.

 

Basics of programming course

1. Programozás, mint gyűjtőfogalom – Mi mindent rejt ez a kifejezés?

Ha azt halljuk valakiről, hogy programozó, már sok mindent sejthetünk arról, hogy milyen komplex, odafigyelést igénylő, érdekes munkát végez. De valójában ennyiből még nem tudjuk igazán, hogy mivel foglalkozik pontosan, milyen lehet egy napja, milyen feladatai vannak.

A programozás annyira sokszínű, hogy ebben a formában tulajdonképp gyűjtőfogalom, ami hatalmas ernyőként számtalan területet fog át.  Annyi azonban mindenképp közös ezekben a területekben, hogy kommunikálni szükséges hozzájuk a számítógépekkel.

Ennek a módja a programkódok írása, amit a programozók végeznek. Ezen kívül tesztelnek, hibát keresnek és javítanak, dokumentálnak, ügyfelekkel kommunikálnak, tanulnak és tanítanak, csapatmunkában dolgoznak, vagy éppen egyénileg, személyes projekteket valósítanak meg.

Mit is jelent, hogy számtalan területen van jelen a programozás? Gondolj arra, mennyi különböző eszközt, alkalmazást, felületet használsz nap mint nap. Weblapok, mobil applikációk, játékok, asztali alkalmazások, beépített eszközök (például okos háztartási gépek) programjai, a sor végtelenségig folytatható.

 

 

Ezek létrehozása és működtetése mind-mind különböző területet és technológiát jelent a programozásban. 

Más szempontok kerülnek előtérbe és más technológiák alkalmazását jelenti annak a megtervezése és megalkotása, amit felhasználóként látunk, és annak, ami a szerver oldalán történik. A különböző technológiák más-más programozási nyelvek ismeretét igénylik.

Ha szeretnéd szemléletes példákon keresztül megismerni az említett kommunikációt, a Rövid bevezetés a programozásba című cikkünket ajánljuk.

 

2. A legnépszerűbb programozási nyelvek

Több felmérés is készült arról, hogy melyek a legnépszerűbb programozási nyelvek. Mit is jelent tulajdonképpen az, hogy népszerű?

Azok a felmérések, amik erről a témáról készülnek, nem a legjobb programozási nyelvet keresik, hiszen nincsenek legjobbak, csak adott feladatra, adott elvárásnak, célnak megfelelőbbek, vagy kevésbé megfelelőek, illetve egyes helyzetekben, egyes platformokra alkalmazható vagy alkalmatlan nyelvek.

 

 

Az a forrás, amit ennek a cikknek a  megírásához használtunk, azt veszi figyelembe, mely nyelveken írják a legtöbb sor kódot az adott hónapban, tehát gyakorlatilag azt méri, melyik nyelvet használják a legtöbbet. 

Ez alapján a legtöbb kódot Java nyelven (A “Java programozás alapjai” című cikkünket itt találod), C nyelven, Pythonban, C++-ban (A C++ programozás alapjairól itt olvashatsz bővebben) és C#-ban írják. Előkelő helyen szerepel még a Visual Basic, a JavaScript (A JavaScript programozás alapjairól itt olvashatsz bővebben), az SQL, a PHP (A PHP programozás alapjairól itt találsz részleteket) és az R.

Több szempontot érdemes figyelembe venni, amikor döntesz egyik vagy másik nyelv megtanulása mellett, de legfőképpen azt, hogy milyen céllal használnád, mik a terveid a programozással.

A Melyik programozási nyelvet válasszam című cikkünkben tippeket olvashatsz ahhoz, hogyan találd meg a számodra megfelelő nyelvet.

3. A tanulás különböző módjai – a programozás alapjainak elsajátítása

Ha új dolgokat szeretnénk megtanulni, sokféleképpen hozzákezdhetünk, nincs ez másképp  a programozással sem. Türelemre, kitartásra és szorgalomra mindenképpen szükség lesz a programozás elsajátításához, bármilyen tanulási formát is választasz.

Tanulás egyénileg

A különböző tanulási módok hatékonysága

A különböző tanulási módok hatékonysága

Az önálló tanulás több szempontból vonzó lehet, mindenképpen nagy előnye, hogy úgy oszthatod be az idődet, akkor és annyit haladhatsz  a tanulással, ahogy neked megfelel.

A tempót, az ismétlés és gyakorlás mennyiségét a saját igényeidre szabhatod, visszatérhetsz, újból elővehetsz bármit, amire szükség van, nem kell másokhoz alkalmazkodni.

Érdemes több forrásból meríteni a tanuláshoz, online tananyagokat, tutorialokat, könyveket megismerni és megkeresni a számodra legmegfelelőbb formát. Nem kell egyféle módszernél maradnod, a módszerek egymással is jól kiegészíthetők. 

Hátránya is van azonban az egyedül tanulásnak – ha elakadsz, fórumokon kívül kevés lehetőséged van kérdezni. A külső motiváció, amit a tanulótársak és a mentorok jelentenének, nagyon sokat számíthat az előrehaladásban.

Léteznek hibrid megoldások, amik ötvözik az egyéni haladás lehetőségét és a tanulóközösség illetve a mentorok támogatását. A CodeBerry-nél is így zajlik a tanulás, virtuális közösséget és online mentorálást biztosítunk. 

Tanfolyami képzések és felsőoktatás

Ha tanfolyami keretek között tanulnál, felkészült oktatókkal, lelkes csoporttársakkal, jól felépített tananyaggal, szintén lehetőségek széles skálájából válogathatsz.

A tanfolyamokról talán sokunknak az „offline”, tantermi oktatás jut eszébe, ami számos kiváló lehetőséget rejt magában, mint a csapatépítés, kommunikációs készségek fejlesztése, jó hangulatú közös órák.

Programozni tanulni azonban online tanfolyamok keretében is lehet, a világ bármely pontjáról. Ha településeden nincs programozásoktatás, vagy nem töltenél időt az utazással vagy nem költenél az ingázásra, akkor az online tanfolyamokat neked találták ki. 

Egyetemi szinten is lehet programozni tanulni, ami jóval nagyobb elméleti tudásanyag átadásával, viszont jelentősen kevesebb gyakorlattal jár. Komplex matematikai ismeretekre tehetsz szert, a programozás hátterében meghúzódó műveleteket ismerheted meg behatóan. 

 

Most azonban hadd ajánljunk néhány tanfolyamon kívüli, önálló fejlődést segítő anyagot.

A programozás elméleti hátteréről:

Python programozás alapjai:

  • Dr Guta Gábor: Szoftverfejlesztés okosan Pythonnal – Agilis csapatok közös nyelve, Panem Könyvkiadó 2020
  • Elektronikusan: Hogyan gondolkozz úgy, mint egy informatikus? Tanulás Python 3 segítségével

C# programozás alapjai:

  • Koncz Balázs: Hogyan válj jól fizetett C# programozóvá?, BBS-Info Kft., 2019
  • Reiter István: C# programozás lépésről lépésre, Jedlik Oktatási Stúdió Bt., 2018

JavaScript programozás alapjai (anyagok elektronikusan):

Nem nyelvre, hanem a programozás céljára fókuszálnak Fehér Krisztián könyvei:

  • Androidos szoftverfejlesztés alapfokon, BBS-Info Kft., 2014
  • Grafikus és játékalkalmazások programozása, BBS-Info Kft., 2017
Youtube galériánkban kezdő programozóknak szóló videókból válogathatsz:

 

4. Technikai feltételek

Ha régóta foglalkoztat a programozás és már sok információt gyűjtöttél, vagy otthon vagy az IT közegben, csak még a kódolásba nem kezdtél bele, akkor ebben a bekezdésben ismerős kifejezéseket fogsz találni.

Ha más területről érkezel, eddig nem foglalkoztál programozással, akkor lehet, hogy benned is kérdések merültek fel az alábbiakkal kapcsolatban. 

Számítógép és operációs rendszer

Milyen számítógép és operációs rendszer szükséges a programozáshoz, mit kell tudnia? 

Kódolni egy egyszerű laptopon vagy asztali gépen is lehet, nem szükséges a NASA szuperszámítógépét beszerezni. A legelterjedtebb otthoni operációs rendszerek (Windows, Linux, MacOS) teljesen megfelelnek a célnak. 

 

Az adatok forrása: You Like Data

Fejlesztői környezet

Hol írom majd a kódokat, milyen környezetet használjak? Programokat írni szövegszerkesztőkben, integrált fejlesztői környezetekben és online szerkesztőfelületeken egyaránt lehet.

Mindnek megvannak a maga előnyei, mindenki azt választhatja, ami a munkájához, igényeihez, pénztárcájához leginkább megfelelő.

Ha szövegszerkesztőben dolgoznánk, használhatjuk például az Atom, Notepad++, Sublime Text, stb felületeket. Ezek lehetővé teszik, hogy kényelmesen írjunk és szerkesszünk kódokat, jól olvasható megjelenést biztosítanak, és számos extra funkcióval is el lehetnek látva, pl. kódkiemelés vagy súgó. 

Az integrált fejlesztői környezetek (angol rövidítésük IDE) olyan alkalmazások, melyek ismerik a nyelv szintaxisát, segítenek kiszűrni a hibákat és tisztább kódot létrehozni.

Ezen kívül tartalmaznak sablonokat és további bővítményekkel és beállításokkal szabhatók testre. Ilyenek például az Eclipse, Visual Studio Code, Webstorm, PyCharm, stb. A vállalatok gyakran megszabják, miben dolgoznak a fejlesztőik és vesznek számukra hozzáférést valamelyik profi fejlesztői környezethez. 

Kezdőként elindulva viszont (illetve a programozás számos területén később is) jól használhatók az olyan egyszerű online szerkesztőfelületek, mint a codepen.io vagy a repl.it.

 A CodeBerry-nél a tanulás kezdő lépéseinek egyike, hogy fejlesztői környezetet alakítasz ki magadnak és megismered a GitHubot, azt az ingyenes online platformot, ahol tárolhatod és megoszthatod a kódjaidat. A GitHubon kívül egyéb verziókezelők is elérhetők, például a Bitbucket vagy a GitLab.

 

 

5. Milyen készségeket érdemes fejleszteni, ha programozni szeretnénk?

Forrás: Unsplash

Analitikus gondolkodás

Egyetemi szintű programozói képzésre készülve tisztában kell lenni azzal, hogy az ott nyújtott oktatás komoly matematikai készségeket és ismereteket vár el, csak erős matematikai tudással végezhető.

A tanfolyamok, gyakorlatorientált képzések és az egyéni tanulás ezzel szemben akkor is sikeres lehet, ha jóval kevesebb vagy kevésbé mély elméleti ismeretet tartalmaz, így nem igényel magas szintű matematikát. 

Egyértelműen szükség van azonban a logikus, analitikus gondolkodás képességére. Az algoritmusok megértéséhez és elsajátításhoz, ha nem is hagyományos matematikai készség, de elmélyült, elemző, következetes gondolkodás mindenképp szükséges.

Bizonyos alapfogalmakkal is tisztában kell lenni, és programozói alapműveleteket megérteni. Ezeket érdemes sokat gyakorolni és időnként újra elővenni, hogy teljesen magabiztosan tudjuk őket használni. 

Programozóképzés anyanyelven és az angol nyelv szerepe

Fontos kérdés az angol nyelv szerepe a programozásban. Sokakat tántoríthat el, hogy nem érzik elég biztosnak az angoltudásukat, miközben mintha az IT-világ nagy része angol nyelven működne. Hogyan kerülhet be valaki, akinek esetleg még hiányosságai vannak e téren? 

A CodeBerry erre a problémára kínál megoldást azáltal, hogy az anyanyelveden teszi lehetővé a programozástanulást. Egyre több anyag (könyv, podcast, videó, tanfolyam) érhető el magyar nyelven, melyekből ebben a cikkben ajánlót is tettünk közzé. 

A tanulás megkezdéséhez és a sikeres haladáshoz tehát nem szükséges már az erős angoltudás.

Mindezzel együtt is érdemes fejleszteni az angol nyelvi készségeket, hiszen a nemzetközi fórumok, cikkek, érdekességek, leírások olvasása, a munkaerőpiaci előnyök, a globális IT vérkeringésbe való bekapcsolódás mind amellett szólnak, hogy minél jobban ismerjük meg a nemzetközi kommunikáció nyelvét.

Személyiségjegyek

Programozási alapokról szóló cikkünkben mindenképp meg kell említenünk azt, amire minden kezdő, lelkes ismerkedő figyelmét fel kell hívni. Ez pedig a programozás tanulása és a programozói munka végzése során szükséges kitartás, elmélyült és koncentrált figyelem.

Bármilyen formában tanulsz is, szorgalom és kitartó gyakorlás nélkül nem lesz eredményes a folyamat. Ha ezek megvannak benned, akkor viszont kreatív és örömteli alkotótevékenységet, izgalmas és kihívásokkal teli problémamegoldó folyamatot végezhetsz és a munkaerőpiaci esélyeid is nagyon kedvezően alakulnak majd. 

Csapatmunkához szükséges készségek

Ha nem csak hobbiként szeretnél programozni, hanem ebben a szakmában képzeled el magad, akkor nagy valószínűséggel csapatban vagy ügyfelekkel együttműködve kell dolgoznod, ez pedig jó kommunikációs és együttműködő képességet igényel.

Az is fontos, hogy érthetően, tömören és hatékonyan tudd prezentálni, épp mivel foglalkozol, milyen kérdések merültek föl, mire jutottál. Ezek mind fejleszthető készségek, a hatékony programozói csapatmunkához pedig elengedhetetlenek

Lehetetlen egy cikkben mindent érinteni, ami a programozás alapjaihoz tartozik, de reméljük, sok hasznos információval szolgált ez a betekintés.

Ha azzal a céllal olvasol bennünket, hogy tájékozódj, mielőtt belevágsz a tanulásba, érdemes megnézned a programozás tanulásának kezdeteiről, kihívásairól és szépségeiről szóló személyes beszámolót, és 10 dolog, ami megváltozott az életemben, amikor megtanultam kódolni című bejegyzésünket.

A CodeBerry Programozóiskola A programozás alapjai című cikksorozatában programozással kapcsolatos témákat feszegetünk, és mindenről szót ejtünk, amire a kezdetekben szükséged lehet. Kövesd a blogunkat, ha még több olyan cikket szeretnél olvasni, amiben minden programozással kapcsolatos kérdésedre választ találhatsz!

A programozás alapjai

Szeretnél online megtanulni programozni? Gyere, és próbáld ki az első 25 leckénket ingyen a CodeBerry Programozóiskolában!