Programozás
Néhány gondolat...
Alig néhány éve a számítógép-programozás még egy titokzatos, csak a beavatottak számára érthető képességnek tűnt. A legtöbb embernek igencsak furcsa volt, hogy a programozás örömforrás lehet. A világ azonban megváltozott. Ma már természetesnek vesszük, hogy a számítógépek a mindennapok részei.
De nemcsak használhatjuk ezt a technológiát, alkothatunk is általa. Ha megtanulunk programozni, saját magunk is készíthetünk digitális remekműveket.
Minden számítógépet olyan programsorok vezérelnek, amelyeket valaki egyszer már megírt. Elsőre egy érthetetlen, idegen nyelvnek tűnhet, de bárki könnyen megtanulhatja. Sokak szerint a programozás a 21. század egyik legfontosabb képessége.
A programozás elsajátítása rengeteg örömmel jár, mert a tanulási folyamat minden szintjén állandó a sikerélmény. Ezenfelül rendkívül hasznos is. Fejleszti a logikus gondolkodást és a problémamegoldó képességet.
A programozási ismeretekkel rendelkezők iránti kereslet hatalmas mértékben növekszik világszerte, és nincs elegendő képzett szakember. Tanulj meg programozni, és a digitális világ kinyílik előtted.
Carol Vorderman: Programozás gyerekeknek c. könyv előszavábólHa érdekel a könyv, részletek itt.
[*] BlocksCAD: egy blokk alapú programozási felületen összetett 3D-s alakzatokat lehet létrehozni
A programozás alaplépéseinak megtanulása
A trinket.oi oldal lépésről lépésre megtanítja a programozás alapelveit.
A blokkoktól a kódolásig: A Blokkoktól kezdve megnézzük az alatta lévő kódot, és megtanuljuk a Python néhány alapját!
A Python vizuális bemutatása: vizuális bevezetés a kódhoz a Python programozási nyelv és a Turtles segítségével.
Online ankönyvek (angolul):
Think Java, Second Edition
A Think Java kiváló bevezető a számítástechnikába és a programozásba, és olyan emberek számára készült, akiknek nincs tapasztalata. A legalapvetőbb fogalmakkal kezdjük, és gondosan definiáljuk az összes kifejezést, amikor először használjuk őket. A könyv minden új ötletet logikus folyamatban mutat be. A nagyobb témákat, mint a rekurzió és az objektum-orientált programozás, kisebb példákra osztjuk, és több fejezetben mutatjuk be.Python for Everybody
A Python mindenkinek bevezető a Python 3 kódolásának alapjaiba, a gyakorlati felhasználásra helyezve a hangsúlyt. Alapnak szánták azoknak a diákoknak, akik a Python-t más akadémiai tárgyakon belül szeretnék alkalmazni, valamint a számítástechnika komoly tanulmányozására készülnek.
Online tevékenységeinket – például a munkavégzést vagy a játékokat – a programok teszik lehetővé. Ezekből a videókból megismerheti, hogy mi a program, miért létezik annyi programozási nyelv, és mindezek hogyan használhatók konkrét feladatok elvégzésére. A legfontosabb, hogy megtudhatja, hogy a programozás alapvető ismerete miként segítheti Önt.
A videók angol nyelvűek, de van magyar felirat
4 lecke, összesen 30 perc
Mi a programkód, és hogyan működik?
Bevezetés a programozási nyelvekbe
Hogyan segítik a programok a mindennapi életünket?
Programozási feladatok: a fejlesztők és a mindennapi iparágak
További díjmentes tanfolyamokat is talál a Google Digital Workshop oldalán
Integrált fejlesztői környezetek (IDE), kódszerkesztők
Néhány cikk a témában:
Nagyon kellemes, sok kényelmi funkcióval ellátott forráskód-szerkesztő, de egyszerű jegyzetelésre is kiváló. Tudása bővítményekkel fokozható.
Professzionális Python fejlesztői környezet. A Community változat ingyenes. Rengeteg extra szolgáltatást nyújt, és nagyon megkönnyíti a szoftverfejlesztést nem csak nagyobb projektek esetén. A rengeteg lehetőség elsőre talán elbizonytalaníthat, így kezdőknek érdemesebb lehet eleinte egyszerűbb IDE-t használni (Python IDLE, Notepad++, ...), de ha már otthonosan mozogsz az IDE-k világában, érdemes a PyCharm-ot megismerni. Zseniális!
A PyCharm intelligens kódkiegészítést, kódellenőrzéseket, menet közbeni kiemeléseket és gyorsjavításokat kínál, automatizált kódjavítással és gazdag navigációs képességekkel együtt.
A PyCharm telepítése (magyar)
Prezentáláshoz érdemes installálni egy plugint, ami a lenyomott gombkombinációkat kiírja az ablak alján. File\Settings...\Plugins\Presentation Assistant
Töltse le a JetBrains Toolbox alkalmazást az összes használt JetBrains termék egyszerű telepítéséhez és frissítéséhez, valamint a projektek gyors újranyitásához.
Professzionális Java fejlesztői környezet. A Community változat ingyenes.
Az IntelliJ IDEA minden aspektusát úgy fejlesztették ki, hogy maximalizálja a fejlesztői termelékenységet. Az intelligens kódolási segítség és az ergonomikus kialakítás együtt teszi a fejlesztést nemcsak produktívvá, hanem élvezetessé is.
Prezentáláshoz érdemes installálni egy plugint, ami a lenyomott gombkombinációkat kiírja az ablak alján. File\Settings...\Plugins\Presentation Assistant
Töltse le a JetBrains Toolbox alkalmazást az összes használt JetBrains termék egyszerű telepítéséhez és frissítéséhez, valamint a projektek gyors újranyitásához.
Nagytudású, hatékony programozói környezet.
Visual Studio Code telepítése Pythonhoz (magyar nyelvű videó)
Kellemes, letisztult, jól áttekinthető felület. Kódszínezés, behúzás, IntelliSense, ...
Ingyenes videotanfolyam (angolul)
SublimeREPL - futtatás a SublimeText-en belül, ajánlott telepíteni
A Python-kód futtatása a SublimeREPL-en (itt elég jól elmagyarázzák)
How to Setup Sublime Text 3 with Python and interactive mode - SublimeREPL (YouTube)
Running Python Code With SublimeREPL (YouTube)
Online IDE
A repl.it több mint 50 programnyelven biztosítja a kódírást, akár társakkal együtt, közösen is.
Van online olvasható és letölthető változat is (pdf és epub). A választék bővül, így érdemes időnként visszanézni.
Cascadia Code betűtípus programozóknak
Programozóknak készített spéci betűtípus adott ki a Microsoft.
Ingyenesen elérhetővé tett egy olyan új betűtípust, amit a cég munkatársai kifejezetten a programozók részére dolgoztak ki. A Cascadia Code különlegessége, hogy támogatja az ún. ligatúrákat, ami az összetett írásjelek elemeinek összevonása révén könnyebben felismerhetővé teszi azokat, ezáltal pedig javítják a kód olvashatóságát is.
Így például a különálló "->" szekvenciából "→"-t, a "!="-ből pedig "≠"-t csinál az új betűtípus, de a ">=" relációs operátor "≥"-ként ábrázolása is segíthet ezen. Ezen kívül az "l" (kis ell), az "I" (nagy i) és az "1" (egy) jelek, vagy például a "0" (nulla) és az "O" (nagy o) is úgy kerültek kialakításra benne, hogy azokat még véletlenül se lehessen összetéveszteni egymással.
Az új font ezen kívül ún. "monospaced", ami azt jelenti, hogy benne minden írásjel azonos szélességű. Ennek köszönhetően ideális tabulátorokkal és szóközökkel történő vegyes igazításra is. A betűtípus a kódoláson kívül a parancssorban is kiválóan használható.
Intel One Mono betűtípus programozóknak
Az Intel egy új, kifejezetten fejlesztőknek szánt betűtípust tett elérhetővé nyílt forrású licenc alatt. A cég One Mono betűkészletéről azt mondja, hogy annak megalkotásakor az elsődleges prioritás az volt, hogy a vele megjelenített kódok jól és könnyen legyenek olvashatók.
Ha valakinek még így sem tetszenek a betűtípus egyes elemei, módosítani is tudja azokat saját ízléséhez, hiszen a font a SIL nyílt forrású licence alatt került kiadásra, ami azt is megengedi. A One Mono egyébként magyar és más nyelvekkel is jól használható, mivel összesen 200 nyelv speciális (ékezetes és egyéb) írásjeleit is tartalmazza, és négy súlyváltozatban (light, regular, medium és bold) lehet már alapból is használni.
Segédeszközök
Google karakterkészletek. Sajnos nem minden font tartalmaz minden magyar ékezetet. Érdemes a tesztszöveget erre átírni:
Árvíztűrő tükörfúrógép Il1O0
A Google egy új betűtípust tett elérhetővé. A "Roboto Serif"-nek elnevezett betűkészletről a cég azt állítja, hogy azzal jóval könnyebbé válik az olvasás szinte minden kijelzőn, mint az eddig használt társaival.
"A Roboto Serif egy változó betűtípusú család, amely kényelmes és súrlódásmentes olvasási élményt biztosít. Minimális és magas fokon funkcionális, bárhol hasznos (még az alkalmazások interfészeiben is), mivel súlyok és szélességek átfogó készletét kínálja az optikai méretek széles skáláján. Bár kifejezetten arra tervezték, hogy jól működjön a digitális médiában, a mai méretek és felbontások teljes skáláján, de ugyanolyan kényelmes az olvasás és a munka vele a nyomtatott médiában is", írja új betűtípusáról a Google annak oldalán.
Diagramok, folyamatábrák, ... rajzolása
Forráskódból kép készítése
Ha egy forráskódot képként szeretnénk közzétenni, vagy egy dokumentumban felhasználni úgy, hogy látszódjon a használt programozási nyelv szintaxisa is, s lehetőleg átlátható maradjon a kódrészlet, akkor ezt képként könnyedén megtehetjük.
a ray.so online szolgáltatás egy rendkívül egyszerű, ám igen jól használható eszköz arra, hogy egy kódtöredéket ízléses és átlátható kivitelben tálaljuk képként. Automatikus kódfelismerést is biztosít és több formátumban exportálható. A kinézetet is testre tudjuk szabni.
A carbon is hasonló online szolgáltatás, de még több beállítási lehetőséget biztosít. Bár a Carbon elsősorban képek készítésére szakosodott, azért közvetlen link vagy iFrame kód is kérhető a szépen formázott kódhoz, amely így szerkeszthető, másolható is marad.
ASCII karakterekből lehet ábrákat rajzolni. Az így elkészített ábrákat beilleszthetjük szöveges állományokba, vagy akár meg is oszthatjuk. A megosztott ábra másolatát szerkeszteni is lehet (tehát az eredeti változatlan marad).
Hexa editorok:
HexEd.it - Browser-based Online and Offline Hex Editing. Rengeteget tud, érdemes tanulmányozni
Színkezelés
Colors Tutorial (w3schools.com)
Olyan emberek számára, akik ♥ betűket, számokat, írásjeleket stb. Unicode karakterek kódját lehet itt megtalálni. Név szerint is kereshető.
Fájlok összehasonlítását biztosító programok leírásai [Meld | Beyond Compare | Araxis Merge | KDiff3 | DeltaWalker | P4Merge | Code Compare | WinMerge | Guiffy
Reguláris kifejezések
A reguláris kifejezés (rövidítve: regexp vagy regex az angol regular expression után) egy olyan, bizonyos szintaktikai szabályok szerint leírt string, amivel meghatározható stringek egy halmaza.
Az ilyen kifejezés valamilyen minta szerinti szöveg keresésére, cseréjére, illetve a szöveges adatok ellenőrzésére használható.
RegexLearn - Ismerje meg a reguláris kifejezést lépésről lépésre, nullától haladó szintig. Az oldal különlegessége, hogy a száraz dokumentációnál könnyebben érthető módon, interaktív formában vezeti be az érdeklődőket a reguláris kifejezések használatába. A teljes tanfolyam 55 lépése gondoskodik arról, hogy az ismerkedés érthető lépésekben történjen, valamint, hogy a reguláris kifejezéseknek nem csak az alapjai, de összetettebb formái és bővített képességei is említésre kerüljenek. Ráadásul minden lépésben ott van azonnal a kísérletezés lehetősége is, aminek eredményét azonnal lehet látni - ezáltal is egyszerűsítve a megértést, illetve a látottak rögzülését a tanulók számára.
RegExr: Learn, Build, & Test RegEx
Regex tesztelésére kiváló, jó magyarázat dobozmodellel, gyakorlati példák
Markdown
Mi az MD fájl?
Az MD fájl egy olyan szöveges fájl, amelyet a Markdown nyelv több lehetséges nyelvjárása alapján hoztak létre. Sima szöveg formátumban menti, de tartalmaz szöveges szimbólumokat, amelyek meghatározzák a szöveg formázását (pl. félkövér, behúzások, fejlécek, tábla formázás). Az MD fájlokat egyszerű szöveges dokumentáció készítésére tervezték, amely könnyen konvertálható HTML-re.
Alapvető és kibővített szintaxis
A Dillinger az egyik legjobb online Markdown-szerkesztő.
Ha van tíz perced, megtanulhatod a Markdownt! Minden leckében egyetlen Markdown-koncepciót kapsz. Ezután több gyakorlatot kell végrehajtania ezzel az új tudással.
Néhány Markdown dokumentum-készítő alkalmazás:
ghostwriter (portable)
Nagyon fontos, hogy az egyes implementációk eltérhetnek egymástól nemcsak megjelenésben, hanem működésben is. Azaz ami az egyikben működik, az nem biztos, hogy a másikban is működni fog. Ezért csak olyan formázásokat használjunk, ami a szabványban van és minden megjelenítő jól kezeli. Természetesen ha egy konkrét megjelenítőre dolgozunk, ki lehet használni annak prusz tulajdonságait.
Így jártam pld. a dokumentumon belüli ugrással. Nem volt a dokumentációban, de egy példa alapján kikísérleteztem. Működött Notepad++-ban, de a DILLINGER-ben nem.
Exportálható az alábbi formátumokba (letöltés):
HTML
Styled HTML
Markdown
PDF
Menthető az alábbi helyekre:
Google Drive
One Drive
Github
Medium
Dropbox
Biggest Online Tutorials Library
Programozz a Zöld Rókával
Tanuld meg a programozás alapjait a Green Fox Academy kezdőknek szóló kis tananyagából. Az instrukciók angolul vannak, de szükség esetén a fordító segít.
Nagyon jó bevezető a programozásról, a programnyelvekről
Öt érv amellett, hogy a gyerekek programozzanak
Programozás egyéni tanulással (Trello tábla)
A programozási nyelveket említései alapján rangsoroló TIOBE Index
Programozással kapcsolatos angol nyelvű könyvek - ingyenesen letölthetők pdf formátumban
Érdekességek a programozással kapcsolatban
Játsszunk programozást! (Kálmán László, 2017.12.09.)
Program belső univerzuma (Kálmán László, 2017.12.18.)
A mesterséges intelligenciának fogalma sincs arról, hogy mi az a fogalom (Kálmán László, 2019.07.27.)
Beszéljünk emberebbül a számítógéppel! (Kálmán László, 2019.11.24.)
Beszéljünk még emberebbül a számítógéppel! (Kálmán László, 2020.02.23.)
A számítógépes program és az emberi gondolkodás (Kálmán László, 2020.07.05.)
Gerőcs tanár úr a prímszámokról (YouTube videó)
A szoftver tegnap a világot ette meg, mára az infrastruktúrát rágcsálja (YouTube videó)
A billentyűzeten való gépelés gyakorlására ad több lehetőséget. Még versenyezni is lehet másokkal.