c programozási nyelv. C programozási nyelv

gyakorlati tanfolyam

Ami?

Egy időben (1991-1992) a nyelvválasztás Xi A matematikaórák fő programozási nyelveként a szerző azzal a problémával szembesült, hogy hiányoznak az iskolásoknak ajánlható normál tankönyvek. Ez arra kényszerítette, hogy megírja az előadási jegyzeteit, amit ún "Gyakorlati programozási tanfolyam Xi» - tartalmazta azokat az információkat, amelyekre a szerzőnek a gyakorlatban valóban szüksége volt. A sok éves tanítási tapasztalat azt mutatja, hogy az absztraktra valóban van kereslet, és széles körben használják mind az iskolások, mind a diplomások.

Fejlesztői környezetként az ingyenes és nyílt forráskódú Dev-C++ wrappert használják, amely tartalmazza a GCC fordítót.

A szerző hálás lesz az anyagok tartalmával és kialakításával kapcsolatos visszajelzésekért és építő kritikákért. Ha hibát észlel, vagy javaslata, észrevétele, panasza, kérése és nyilatkozata van, írjon a címre.

Licencszerződés

  1. 1) anyagok közzététele bármilyen formában, beleértve az anyagok közzétételét más webhelyeken;
  2. 2) hiányos vagy módosított anyagok forgalmazása;
  3. 3) anyagok felvétele a gyűjteményekbe bármilyen adathordozón;
  4. 4) kereskedelmi haszon megszerzése anyagok értékesítéséből vagy egyéb felhasználásából.

Az anyagok letöltése azt jelenti, hogy elfogadta a jelen licencszerződés feltételeit.

Letöltés

Az absztrakt formátumban szabadon terjeszthető PDF. A megtekintéshez ingyenes Acrobat Reader szükséges. A tanfolyam vázlata 4 részre oszlik:

  1. Bevezetés a C programozásba (860 Kb) 29.03.2014
    A nyelv alapszerkezeteinek és a programírás technikáinak elsajátítása.
  2. Adattárolás és feldolgozás (792 Kb) 21.11.2013
    C nyelv: tömbök, mátrixok, struktúrák, karakterláncok, struktúrák, rekurzió.
  3. Programok fejlesztése C nyelven (937 Kb) 01.03.2014
    Programtervezési technikák, strukturált programozás, egészszámú algoritmusok, numerikus módszerek, modellezés.
  4. Dinamikus adatstruktúrák C-ben (666 Kb) 11.06.2009
    Listák, halmok, fák, grafikonok.

Előadások

A tanárok és a diákok számára hasznosak lehetnek az ezen a vázlaton alapuló prezentációk. Letölthetők a Prezentációk oldalról.

Módszertan

A fő feladat a nyelv alapkonstrukcióinak megismertetése a tanulókkal Xi: ciklusok, feltételes utasítások, eljárások. A grafikával és animációval kapcsolatos részek tanulmányozása nagyon sikeres.

8. osztály

A program a következő részeket tartalmazza (az absztrakt egy része zárójelben van feltüntetve): Tömbök (II), Fájlokkal való munka (II), Karakterláncok (II), Forgó objektumok (III), Modellezés (III). Speciális figyelem a tömbökkel végzett munka algoritmusainak tanulmányozására szolgál, beleértve a keresést, a rendezést stb. Adott a számítási módszerek hatékonyságának fogalma.

9. évfolyam

A hangsúly a tanuláson van programozási módszerek a nyelvben Xi. A tanulók egyéni feladatot hajtanak végre, melynek során megtanulnak grafikonokat építeni a képernyőre, megismerkednek a koordinátarendszerek transzformációival, egyenletmegoldási módszereket tanulnak, megismerkednek a numerikus módszerekkel, megtanulják a programok helyes formázását (1-2. III. rész). Az egyik feladat a használatnak van szentelve Monte Carlo módszer egy összetett ábra területének kiszámításához. Az új szakaszokból is tanulmányozzák Mátrixok (II), karakterláncok tömbjei (II). A koncepció bevezetésre kerül mutatókés tanulmányozza velük a legegyszerűbb műveleteket.

10-es fokozat

nyelvtanulás Xi komolyabb szintre lép. Fő témák - Memóriakezelés (II), Rekurzió (II), Struktúrák (II). A tervek szerint a Pascal nyelvet mint második programozási nyelvet tanulmányozzák. Ettől a pillanattól kezdve az elméleti órákon az algoritmusokat felváltva két nyelven írják.

11. évfolyam

Nem annyira a nyelvek jellemzőit, mint inkább az algoritmusokat vizsgálják. Fő szakaszok − Numerikus módszerek (III), Modellezés (III), Dinamikus adatszerkezetek (IV).

Ismerje meg a ciklusok működését. A ciklusok a programozás egyik legfontosabb aspektusai, mivel lehetővé teszik az egyes kódblokkok ismételt futtatását, amíg egy bizonyos feltétel teljesül. Ez megkönnyíti az ismétlődő műveletek programozott írását, és megóvja attól, hogy minden alkalommal új feltételeket kelljen írnia, amikor azt szeretné, hogy a program tegyen valamit.

  • A hurkok három fő típusa létezik: FOR, WHILE és DO...WHILE.
  • Használjon FOR hurkot. Ez a ciklusok közül a legnépszerűbb és leghasznosabb. Mindaddig folytatja a megadott funkció végrehajtását, amíg a FOR-ban beállított feltételek teljesülnek. A FOR ciklusokhoz három feltételt kell megadni: az inicializálandó változót, a teljesítendő feltételt és a változó értékének frissítési módját. Ha nincs szüksége mindhárom feltételre, akkor pontosvesszővel kell szóközt hagyni a helyükön, ebben az esetben a hurok örökkévaló lesz.

    #beleértve int main() ( int y ; for ( y = 0 ; y< 15 ; y ++ ){ printf ( "%d \n " , y ); } getchar (); }

    • A fenti programban az y változó kezdeti értéke nulla, és a ciklus addig folytatódik, amíg a változó értéke kisebb 15-nél. Minden alkalommal, amikor y új értéke jelenik meg, az eggyel nő, és a ciklus ismétli. Amint az y változó egyenlő 15-tel, a ciklus véget ér.
  • Használjon WHILE hurkot. WHILE hurkok könnyebb mint FOR hurkok. Csak egy feltételt adnak meg, és a ciklus addig fut, amíg ez a feltétel teljesül. Itt nem kell inicializálni vagy frissíteni a változót, de megteheti magában a ciklus törzsében.

    #beleértve int main () ( int y ; while ( y<= 15 ){ printf ( "%d \n " , y ); y ++ ; } getchar (); }

    • Az y++ parancs minden alkalommal hozzáad egyet az y változó értékéhez, amikor a ciklus végrehajtódik. Amint az y változó egyenlő lesz 16-tal (megjegyzendő, hogy a ciklust addig kell végrehajtani, amíg a változó kisebb vagy egyenlő 15), a ciklus leáll.
  • Alkalmazási ciklus DO...MÍG. Ez a ciklus nagyon hasznos olyan esetekben, amikor a ciklusműveleteket legalább egyszer végre kell hajtani. A FOR és WHILE ciklusokban a feltétel ellenőrzése már a legelején megtörténik, vagyis ha téves eredményt kapunk, akkor a feltétel által meghatározott műveletet kihagyjuk és nem hajtjuk végre. A DO...WHILE ciklus a legvégén ellenőrzi a feltételeket, ami lehetővé teszi a ciklus műveleteinek legalább egyszeri végrehajtását.

    #beleértve int main () ( int y ; y = 5 ; do ( printf ("A ciklus fut! \n " ); ) while ( y != 5 ); getchar (); )

    • Ez a ciklus a kívánt üzenetet jeleníti meg, még akkor is, ha a feltételteszt hamis. Az y változó értéke öt, és a ciklusnak meg kell ismétlődnie abban az esetben, ha a változó nem egyenlő öttel, tehát a ciklus kilép. Az üzenet egyszer jelenik meg a képernyőn, mivel a feltétel csak a legvégén kerül ellenőrzésre.
    • A WHILE záradéknak a DO...WHILE ciklusban pontosvesszővel kell végződnie. Ez az egyetlen ciklus, amelynek a végén pontosvessző kell.
  • A C egy meglehetősen "ősi" programozási nyelv, a 70-es évek elején alakult. Ennek ellenére a C élő nyelv abban az értelemben, hogy ma aktívan használják. A Unix-szerű operációs rendszerek programkódjának lényeges részeit kitalálták, használták és használják. Segédprogramok, fordítók, ritkábban alkalmazásprogramok is rá vannak írva. Ezért a C-t rendszerprogramozási nyelvnek nevezzük.

    Túlélhetősége azzal magyarázható, hogy az operációs rendszerek működési elvei viszonylag univerzálisak, nincsenek kitéve az asztali és mobil szoftverek, webes alkalmazások környezetében megfigyelhető fejlődésnek és sokszínűségnek. A C nem elég magas szintű nyelv, közelebb áll a számítógépes architektúrához. Ennek eredményeként a C programok kompaktok és gyorsak.

    A C nem támogatja az objektumorientált programozást. Az OOP támogatás C++ nyelven van megvalósítva. Ez utóbbi ugyan a C nyelvből fejlődött ki, de nem annak "folytatása", hanem egy külön nyelv, amely a C ismerete nélkül is megtanulható. A C-t azonban hasznos megtanulni, mielőtt megismerné "haladó kistestvérét", mert a nyelvek szintaxisa hasonló, a C nem terheli túl egy kezdő programozó agyát szuperképességekkel, és megtanítja őket megérteni a történések lényegét.

    A C jó az első bevezetés a programozásba? Ha nem tanulsz egyetemen informatikához kapcsolódó szakon, akkor nem. A C a hardver, különösen a memória felépítésének és működési elveinek megértését jelenti. Ennek nagy része mutatókkal történik, kulcsszerepet játszanak; ezt a témát meglehetősen nehéz megérteni, és általában nem tanulják az iskolában.

    Természetesen a C-vel elsajátíthatod a programozás alapjait anélkül, hogy megtanulnád a mutatókat. Az ember azonban azt hiszi, hogy ismeri a C-t, önmagában keveset tud róla. A C nyelvet a hardverhez értő professzionális programozók hozták létre a UNIX operációs rendszer megírására. Nem kezdők tanítására szánt nyelvnek szánták.

    Környezetek és fordítók C programozáshoz

    Ha valamelyik GNU/Linux disztribúciót használod, bármelyik szintaktikai kiemeléssel rendelkező szövegszerkesztő megteszi, és szükséged lesz a GCC-re és egy terminálra is.

    Vannak olyan szerkesztők a programozók számára, amelyek különféle kiegészítőket tartalmaznak, beleértve a terminált, a címtárböngészést és egyebeket, például a Geany vagy az Atom.

    A C egy lefordított programozási nyelv. A GNU/Linux a GCC-t használja a végrehajtható fájlok, a fordítóprogramok készletének lekérésére, beleértve a C fordítót is. Ahhoz, hogy végrehajtható fájlt kapjon a forrásfájlból (általában az ilyen fájlok *.c kiterjesztést kapnak), le kell futtatnia egy parancsot a terminál, ami valahogy így néz ki:

    gcc -o hello hello.c

    Ahol a gcc egy olyan parancs, amely egy fordítást és egyéb műveleteket végrehajtó programot indít el; -o egy kulcs, amely azt jelzi, hogy manuálisan adjuk meg a végrehajtható fájl nevét; hello az eredményül kapott végrehajtható fájl neve; hello.c a forráskód fájl neve. A végrehajtható fájl neve elhagyható:

    gcc hello.c

    Ebben az esetben a végrehajtható fájl alapértelmezett neve a.out lesz.

    A Windowsnak saját fordítókészlete van - a MinGW. Önállóan is használható, de egy egyszerű Dev-C++ fejlesztői környezettel érkezik, ami jó választás lehet C és C++ nyelven programozni tanulni.

    Mentéskor válassza ki a "C source files (*.c)" fájltípust. A program lefordítása és futtatása az F9 billentyű lenyomásával történik. A végrehajtás után a program azonnal bezárul, és az eredmény nem látható. Hogy ez ne forduljon elő, két további sort írunk: #include és getch(). (Talán ez nem releváns a Dev-C++ újabb verziójára.)

    „Hello World” GNU/Linux alatt:

    #beleértve \n") ; }

    „Hello World” Windows rendszeren:

    #beleértve #beleértve int main() ( printf("Hello World \n") ; getch(); )

    Másrészt számos platformon átívelő fejlesztői környezet létezik. Például Eclipse + CDT modul, KDevelop, CLion. Ez utóbbi fizetős, az IDE-fejlesztésben vezető JetBrains gyártja, de 30 napos próbaidővel rendelkezik, ami elég lehet a tanuláshoz. A CLion kényelmesebb, mint a többi IDE.

    „Hello World” a C

    A legegyszerűbb programot példaként használva azonnal megjegyezzük a C programozási nyelv néhány jellemzőjét.

    A C nyelvben a main() függvény a program fő ágának szerepét tölti be. Ennek a függvénynek mindig jelen kell lennie egy teljes C programban, és a program végrehajtása ebből indul ki. A benne deklarált változók azonban nem globálisak, hatókörük csak a main()-ra terjed ki. A C programozási nyelvben azonban szinte az összes programkódot egy függvény tartalmazza, és a main() függvény a fő és kötelező függvény.

    Alapértelmezés szerint a main() függvény int adattípust ad vissza, így nem kell megadni a visszatérési adattípust. A fordító azonban ebben az esetben figyelmeztetést ad ki.

    A printf() függvény az adatok kiadására szolgál. Célja hasonló a Pascal write() eljárásához és a Python print() függvényéhez. A printf() függvény nem törik új sorra a kimenet után. Ezért egy speciális karaktert használnak az ugráshoz, amelyet a \n kombináció jelöl. A teljes C kifejezéseket pontosvessző választja el.

    C-ben az I/O funkciók nem részei a nyelvnek. Például a Pythonban nem kell egyetlen modult sem importálnunk a print() és input() függvények használatához. C-ben nem csak a printf() függvényt hívhatjuk meg, mert egyszerűen nem létezik magában a C-ben. Ez a funkció, valamint számos más, az stdio.h fejlécfájl használatával is beépíthető. Erre a célra a program elején a sort #beleértve . Az Include angolból "include"-nak fordítják, az stdio pedig a "standard input-output (input-output)" rövidítése.

    A fejlécfájlok (*.h-ra végződnek) általában bizonyos függvények deklarációit tartalmazzák. A deklaráció egyszerűen egy függvény leírása: milyen paramétereket vesz fel, és mit ad vissza. Maga a függvénykód (definíció) nem a fejlécfájlban található, hanem olyan könyvtárakban (egyéb fájlok), amelyek már le vannak fordítva és rendszerkönyvtárban találhatók. A program összeállítása előtt elindul a C előfeldolgozó, amely többek között tartalmazza a programfájl elején a programfájlban megadott fejlécfájlok tartalmát.

    Praktikus munka

    Írja megjegyzésbe a HelloWorld programkód 1. sorát. Próbáld meg lefordítani a programot. Sikerült letölteni a végrehajtható fájlt? Milyen figyelmeztetést adott ki a fordító?

    1 // - egysoros megjegyzés C nyelven; /* … */ - többsoros megjegyzés C nyelven.

    A programozás alapjai
    Programozási alapismeretek, alapfogalmak és fogalmak

    A videó tanfolyam bemutatja a hallgatókat a programozás alapjaival, az alapvető kifejezésekkel és fogalmakkal. Megtanítja Önnek, hogyan kell algoritmusokat fejlesztenie, és valódi tapasztalatot nyújt a webes termékek létrehozásában. A leckék áttekintést tartalmaznak az aktuális programozási nyelvekről és területekről, segítenek a tanulóknak kiválasztani a számukra legérdekesebbet, valamint anyagokat és utasításokat adnak a további szakmai fejlődéshez.

    3. lecke

    Programozási nyelv kiválasztása. Böngésző előkészítése. Program "Helló, világ!".

    4. lecke

    Kényelmes kódszerkesztő telepítése. Bevezetés a változókba. Egyszerű számológép.

    5. lecke

    Adattípusok. Műveletek különböző típusú adatokkal. Adattípus átalakítás.

    6. lecke

    Algoritmikus gondolkodás. Vizuális folyamatábrák.

    7. lecke

    Választási lehetőségek a programban. Az if fiók operátor. Találós játék.

    8. lecke

    Összetett kiválasztási feltételek. Logikai ÉS, VAGY. Angry Birds játék.

    9. lecke

    do és while hurkok. Orosz rulett játék.

    10. lecke

    hurokhoz. Pénzügyi kalkulátor.

    11. lecke

    Nagy adatkészletek és tömbök. Rulett játék.

    12. lecke

    Funkciók. Felkészülés a "Black Jack (21)" játék megírására.

    13. lecke 1. rész

    Komplett játék megírása. Az alap a lapok kiosztása és a pontozás.

    14. lecke 2. rész

    A játék megírásának befejezése. Az eredmények és a győztes meghatározása.

    15. lecke

    A programozás főbb irányainak áttekintése. Hogyan válasszunk programozási nyelvet? Mit tanuljunk ezután?

    Bevezetés a Gitbe
    Git alapok

    A 13 videó során a Git verziókezelő rendszer alapjaival ismerkedünk meg. Nézzük meg, miért fontos ez a modern fejlesztésben és a kollaboratív programozásban. Ismerkedjünk meg a Git alapfogalmaival: tárolók, commitok, ágak és címkék. Megtanuljuk az alapvető műveleteket: repository létrehozása és klónozása, ágak összevonása, változástörténet lekérdezése és még sok más. Nézzük meg, hogyan lehet beadni a házi feladatot a Git használatával. Ez egy alaptanfolyam, amely után bármilyen programozási nyelvet elkezdhet tanulni. Emellett készen áll egy interjúra, ahol általában több kérdés is a verziókezelő rendszerrel kapcsolatos.

    1. lecke: Bevezetés a verzióvezérlő rendszerekbe

    Mi az a verziókezelő rendszer?
    Verziókezelő rendszerek típusai
    Git és előnyei
    Dokumentáció

    2. lecke

    Mi az a parancssor?
    Miért fontos a parancssor?
    Hogyan lehet megnyitni a parancssort?
    Hasznos parancsok

    3. lecke

    A konzolkliens bemutatása
    git beállítás
    Adattár inicializálása
    Adattár klónozása
    Grafikus git kliensek

    4. lecke

    Indexelés
    Változások közzététele
    Elkötelezi magát
    Indexelés megszakítása
    Jelenlegi állapot

    5. lecke

    Változások története
    Visszagörgetés a projekt történetében
    A változtatások szerzői: git blame
    A .gitignore fájlok figyelmen kívül hagyása
    A gitignore.io webhely
    Keep folders.keep

    6. lecke

    Fiókvezetés
    Elágazások létrehozása és törlése
    Váltás az ágak között
    Konfliktusmódszerek és megoldásuk
    git merge

    7. lecke

    Git hosting (GitHub, GitLab, Bitbacket)
    Saját bare-git tár létrehozása
    Regisztráció a GitHubon
    Módosítások közzététele távoli lerakatban

    8. lecke

    Az adattárak nevei
    Több adattár egy projektben
    .git/config
    Elágazások kezelése távoli adattáron

    9. lecke

    Verziószámítási módszerek
    A címkék és kapcsolatuk a kötelezettségvállalásokkal
    Címke hozzáadása
    Címke törlése
    Címke kezelése távoli tárolóban

    10. lecke

    A változtatásokat egyesítjük. git merge
    Ágakat mozgatunk. git rebase
    A kötelezettségvállalásokat átadjuk. git cseresznye csákány
    Egyesítse a kötelezettségvállalást egybe. git squash
    Horgok
    Álnevek

    11. lecke

    Hogyan használják és miért?
    Tesztciklusok
    Esetleg kék/zöld
    Engedje el az ágakat
    Gyorsjavítások

    12. lecke

    SSH protokoll
    Miért használják?
    Kulcsok létrehozása
    Szállítmányozás
    SSH ügynök
    Fájlok másolása SSH-n keresztül
    Windows: Git for Windows
    SSH használata Git-tel

    13. lecke

    Az adatbázis alapjai. 20 lecke.
    Adatbázis tervezés és SQL lekérdezések

    Az adatbázisok (DB) olyan adattároló és feldolgozó rendszerek, amelyekhez SQL (Structured Query Language) segítségével lehet hozzáférni. Minden modern webhelynek, játéknak vagy asztali alkalmazásnak szüksége van adattárolásra. Jelenleg sokféle adatbázis-kezelő rendszer (DBMS) létezik, a legnépszerűbb a MySQL. A „Database Fundamentals” 20 intenzív videólecke (egyenként 10 perces), ahol az adatbázis-tervezés minden szakaszát együtt járjuk végig egy SQL lekérdezési nyelvet használó online áruház példáján. A tanfolyam elvégzése után képes leszel különféle adatbázisokat használni, mint például az MS SQL és a Postgre Sql, mivel az SQL nyelv szintaxisa szinte azonos náluk.

    1. lecke

    Mi a különbség az adatbázis és a DBMS között? milyen adatbázisokat nevezünk relációs; a modern DBMS áttekintése.

    2. lecke

    A MySql DBMS és a Mysql Workbench grafikus alkalmazás telepítése.

    3. lecke

    Adattervezés Excelben; normál formák; elsődleges kulcs.

    4. lecke

    Táblázatok létrehozása a MySql Workbench GUI-ban; CREATE parancs; adattípusok; dolgozni a konzolban.

    5. lecke

    Táblázatok kitöltése adatokkal grafikus felület segítségével; INSERT parancs; AUTOMATIKUS NÖVEKEDÉS.

    7. lecke

    Adatok lekérése és szűrése a DISTINCT és LIMIT SQL parancsokkal; rendezés az ORDER BY paranccsal.

    9. lecke

    A konzisztencia vagy adatkonzisztencia fogalma.

    10. lecke

    Az idegen kulcs fogalma és az oszlopértékekre vonatkozó megszorítások; IDEGEN KULCS KORLÁTOZÁSOK.

    11. lecke

    Bevásárlókosár hozzáadása az online áruház adatbázisához.

    12. lecke

    Kompozit elsődleges kulcs használata sok a sokhoz tábla tervezésekor.

    13. lecke

    Adatok lekérése több egymással összefüggő táblából; a több SELECT-et használó megközelítés következetlensége.

    14. lecke

    Több tábla adatainak összekapcsolása az INNER JOIN utasítás használatával.

    15. lecke

    Több tábla adatainak összekapcsolása a LEFT JOIN és RIGHT JOIN utasítások használatával.

    16. lecke

    Több SQL lekérdezés eredményeinek kombinálása az UNION operátor használatával.

    17. lecke

    Aggregáló függvények COUNT, SUM, MIN, MAX.

    18. lecke

    A kiválasztott sorkészlet csoportosítása a GROUP BY záradék használatával.

    19. lecke

    Szűrés a GROUP-ban a HAVING használatával; a lekérdezés végrehajtási sebességének növelése indexek segítségével.

    20. lecke

    A tranzakció fogalma; TRANSACTION nyilatkozat; ACID követelmények egy tranzakciós rendszerhez.

    Linux. Munkaállomás. 1 hónap.
    A Linux operációs rendszer számítógépen történő adminisztrálásának gyakorlata

    A GNU/Linux egy népszerű operációs rendszer, amely vezető szerepet tölt be a szerverhardverek piacán, és ipari és fogyasztói berendezések beágyazott operációs rendszereként, sőt asztali szoftverként is használatos. A GNU komponenseket a MAC OS X is használják, és a GNU/Linux által befolyásolt Windows is. A Linux ismerete szükséges egy rendszeradminisztrátornak, tesztelőnek, webprogramozónak, információbiztonsági szakembernek, minden olyan fejlesztőnek, aki közép- és felsőbb szintűnek vallja magát. Ez a kurzus bemutatja a Linux alatti munka alapjait: a Linux shellben való munka alapjait, a felhasználók és fájljogosultságok kezelését, a reguláris kifejezéseket és a parancsfájlokat bashban, a folyamatokkal való munkát, valamint a rendszerindítás és a szolgáltatások kezelését Linuxban. A programozás alapjainak megértése, a számrendszerek (bináris, oktális, hexadecimális) és a logikai logika

    1. lecke: Első lépések és telepítés

    Bevezetés a GNU/Linuxba. Mi az a GNU, Linux és UNIX. Virtualizáció. Az Ubuntu telepítése virtuális gépre. Alapvető Linux szolgáltatások

    2. lecke. Munka grafikus és konzol módban

    Konzol és grafikus mód Linux alatt; konzolparancsok; fájlok létrehozása és szerkesztése.

    3. lecke

    Felhasználók és jogok Linuxban; munka fájlokkal; műveleteket hajt végre a szuperfelhasználó nevében.

    4. lecke

    Reguláris kifejezések. Keresés. sed.

    5. lecke

    Szintaxis. Csapatok. Változók. vezérlő struktúrák. Néhány egyszerű szkript. A feladatok ütemezése cron segítségével

    6. lecke

    A Linux hálózati képességei. Webszolgáltatások. nginx, apache2. Titkosítsuk. netfilter hálózati szűrő és iptables segédprogram.

    7. lecke: Bevezetés a Gitbe

    Bevezetés a Gitbe.

    8. lecke: SOA és a Docker bevezetése

    Monolitikus és SOA alkalmazás architektúra. A Docker bemutatása

    1. lecke

    Ismerkedés a nyelvvel, rövid történelem. Szoftver áttekintése. A nyelv alapfogalmai. Változók és adattípusok

    2. lecke

    Körülmények. Boole-algebra és bináris számítástechnika. ciklusok. Hurokvezérlés és a kapcsoló utasítás

    3. lecke

    Funkciók. Mutatók. Tömbök. Többdimenziós tömbök

    4. lecke

    Húrok. Adatstruktúrák. Fájlrendszer. Dinamikus memóriafoglalás

    A tanfolyam kezdőknek és azoknak szól, akik már ismerik a más programozási nyelveket vagy a C ++ nyelvet, de nem kellő szinten, valamint azoknak, akik nem ismerik az adattárolás és adatfeldolgozás megszervezését összeállított számítógépes programokat. A C++ egy általános célú nyelv, és a magas és alacsony szintű nyelvek tulajdonságait kombinálva lehetővé teszi a programozás során felmerülő problémák legszélesebb körének megoldását. A kurzus teljes körűen bevezeti a hallgatót a C ++ nyelvben rejlő lehetőségekbe, amelyek ezen célok megvalósítása érdekében beépülnek abba.

    1. lecke Összeállított nyelv. A programok fordításának és összeállításának szakaszai

    1. Miért szükséges a C++?
    2. Fejlesztőeszközök C++ nyelven.
    3. Hogyan működik egy összeállított nyelv.
    4. A műsor sugárzásának szakaszai.
    5. Hogyan működik a build szkript.
    6. Házi feladat elemzése.

    2. lecke. Nevek a programban. Adatok, típusok, függvények és változók

    1. Nevek, típusok és változók.
    2. Változó- és számábrázolás.
    3. Kiszámíthatóság.
    4. Funkció. Fogalom és jelentés.
    5. Függvények és érveik.
    6. Egyszerű tömbök.
    7. Házi feladat elemzése.

    3. lecke

    1. Blokkok. Az algoritmus névtér fogalma.
    2. Feltételes műveletek.
    3. Állandó feleletválasztós.
    4. Ciklikus feltételes működés közben.
    5. Iterációs vezérlés (ciklusismételhetőség).
    6. számlálási ciklus.
    7. Kivételes helyzetek.
    8. Házi feladat elemzése.

    4. lecke

    1. Projektváz készítése a Qt Creator számára.
    2. Hozzáférünk az adatállományhoz.
    3. Formátum-hack: az adatok tárolási módjának megfejtése.
    4. PNM/PGM formátumú dekódolás.
    5. Oldalsó adattranszformációk: beolvasott képméretek.
    6. A kimeneti hisztogram és az adatkimenet felépítése.
    7. A program tervezésének elemzése, procedurális stílusban összeállítva.

    Kurzus kezdő fejlesztőknek, akik ismerik a C vagy C++ nyelv alapjait. Segít megérteni az alapvető adatstruktúrákat és alapvető algoritmusokat. Általános megértést ad a programon belüli folyamatokról és alapvető készségeket az algoritmusok felépítéséhez. A kurzus nem kötődik konkrét programozási nyelvhez, és annak ellenére, hogy minden C-ben van elmagyarázva, a tudás bármely kötelező programozási nyelven alkalmazható.

    1. lecke

    2. lecke

    4. lecke

    5. lecke

    6. lecke

    7. lecke

    8. lecke

    9. lecke

    10. lecke

    11. lecke

    Objektumorientált programozás. 1 hónap.
    Merítés az OOP-ban

    A kurzus bemutatja a hallgatókat a legjobb C++ programozási technikákkal. Kitérünk az objektum-orientált programozás hatékony alkalmazásának főbb rendelkezéseire a programok írására, valamint a stream I / O könyvtár munkájának jellemző aspektusaira. A képzés során a hallgatók a megszerzett tudás felhasználásával egy teljes értékű játékot írnak. A tanfolyam kezdő C++ programozók számára készült, akik 1. szintű eljárási programozást teljesítettek.

    1. lecke

    Név exportálása. A függvénynév túlterhelése (globális).
    A funkciók tárolása állapotban. Az állam névterének elérhetősége. Nyilvános és privát kulcsszavak. Bemutatjuk a tárgy fogalmát. Bemutatjuk az osztály fogalmát. A kezdeti tárolt állapot.

    2. lecke

    Alaposztályú hozzáférés-vezérlés. Konstruktorok és öröklés. Többszintű osztályhierarchia létrehozása. Mutatók származtatott osztályokra. Egyszerű és többszörös öröklődés.

    3. lecke

    A virtuális funkciók alapjai. Tiszta virtuális függvények és absztrakt osztályok. Korai és késői kötés. Túlterhelési funkciók és módszerek. Paraméteres polimorfizmus

    4. lecke

    Összetétel, aggregáció, asszociáció, függőség. konténer osztályok. Típus casting operátorok. Példa programok C++ nyelven

    5. lecke

    Kezelői túlterhelés. Függvény- és osztálysablonok. Explicit és részleges sablonszakosodás. Példák egyszerű programokra

    6. lecke

    A stream osztályok hierarchiája. I/O műveletek szabványos típusokhoz. Az input-output szervezése a felhasználó által definiált típusokhoz. Munka a memóriában lévő fájlokkal és pufferekkel. Kimeneti formázók, manipulátorok

    7. lecke. A modularitás támogatása. Blackjack játék írása

    összeállítási egységek. Fejléc- és implementációs fájlok szétválasztása. Előfeldolgozó direktívák, makrók és feltételes fordítás. Blackjack játék írása

    8. lecke

    A helyzetek gerjesztése, feldolgozása. Veremhajtogatás, konstruktorok és destruktorok kivitelezése. Az osztályhierarchia támogatása.
    A kivételek szabványos osztályai. Kivételeket használó példaprogramok

    Kurzus a C++ programozás továbbképzéséhez, memóriakezeléssel és alacsony szintű adatkezeléssel foglalkozik. Képet ad a memóriakezelés alapelveiről egy C++ programban, az adattárolás szervezéséről, a funkciócímzésről. A kurzus külön része a C++ típusú rendszerről és az adatreprezentációk közötti konverziókról szól. Ezenkívül röviden bemutatjuk a C++ előfeldolgozási képességeit, a fordítás során forráskód generálására alkalmas lehetőséggel.

    1. lecke

    2. lecke Típusrendszer

    3. lecke. Előfeldolgozás. Feltételes összeállítás

    Grafikus felülettel rendelkező programok fejlesztése C++ nyelven. 1 hónap.
    Qt Framework

    1. lecke. Qt Creator: alapok

    Mi az a Qt? A szolgáltatások rövid áttekintése (súgó, qtdemo, nyelvész, uic stb.). A QT könyvtár és a fejlesztői környezet telepítése. A Qt Creator beállítása munkához (fordító, hibakereső, könyvtár stb. kiválasztása). Az első alkalmazás létrehozása és futtatása (Hello world!). Widgetek. Különféle típusú szöveges kimeneti mezők. Gombok és indikátorok.
    A widgetek jeleinek kezelése.

    2. lecke. Modularitás a Qt-ben

    A Qt alapmoduljai. Az osztályok hierarchiája. A modularitás elve. A motor és az interfész szétválasztása. A „modell – nézet” fogalma. Lista, fa, táblázat és ezek kimeneti módszerei. Kimeneti mezők védelme. A Qt modulok és osztályok dokumentációja. QMake és projektépítési rendszerek. Modules.pro fájl összeállítására és összekapcsolására szolgáló rendszer

    3. lecke. Munka adatokkal a Qt-ben.

    konténer osztályok. Iterátorok. Szekvenciális konténerek. Asszociatív konténerek. Munka húrokkal. Képek olvasása, megjelenítése és mentése. Fájlokkal és könyvtárakkal végzett munka. I/O adatfolyamok. A QFile, QFileDialog fájl megnyitásának alapvető módszerei. Programforrások.

    4. lecke. Objektumok interakciója a Qt-ben

    Qt objektummodell. Memóriakezelés. Az objektumok hierarchiája. Jelek és nyílások. Objektumok csatlakoztatása és leválasztása. A MOC egy meta-objektum fordító. Az eseményhurok elve. Rendezvénykezelés. Egér és billentyűzet események. Eseményszűrők. Különböző nyelvek támogatása. Programhonosítás. Dinamikus nyelvváltás (QLinguist). Parancssor hívása programból

    5. lecke

    QWidget osztály. Widget típusok. A widgetek hierarchiája. OpenGl és más harmadik féltől származó kimeneti könyvtárak csatlakoztatása. Űrlapok tervezése a Qt Designerben. Űrlapok használata projektekben. Widget elrendezés. Méretezési szabályzat. Jelek csatlakoztatása slotokhoz. bemeneti fókusz. Stíluslapok. Szín paletta. Készítse el saját widgetjeit.

    6. lecke

    Egy- és többdokumentumú felület. Gyermek és szülő képernyők. Alosztályok (QDialog és ets). Fő ablak. Eszköztárak. Állapotsor. Menü létrehozása. Legördülő menü. Helyi menü. párbeszédpanelek. Dokumentumok megnyitása, mentése és nyomtatása.

    7. lecke

    A QPainter rajzkörnyezete. Koordináta rendszerek. Pont, vonal, téglalap, sokszög. Tollak, ecsetek. színes modellek. színátmenetek. Graphics View Framework. Színpad és előadás. Szöveg formázási elemekkel. Betűtípusok. Munka a html jelöléssel Kimenet és mentés. webmotor. Egy egyszerű webböngésző megvalósítása.

    8. lecke

    Dátum és idő. időzítő események. Folyamatok. Indítsa el, fuss és álljon meg. Szálak. Többszálú. Jelek, események cseréje. Szinkronizálás. Mutexes

    9. lecke

    QML nyelv. Felhasználói felület elemei. Az elemek elhelyezésének szabályozása. Grafikus elemek. Munka képekkel és betűtípusokkal. Munka egérrel, billentyűzettel és érintőpaddal. Animáció megvalósítás. QML használata projektben

    10. lecke

    Program tesztelés. Hibatípusok. Qdebug. Lépésről lépésre hibakeresés. Ellenőrző pontok. Változó ablakok és hívóláncok. Egységteszt. GUI tesztelés. A projektépítés típusai (hibakeresés, kimenet, profilalkotás). Qt Creator és verziókezelő rendszerek. Git. Keressen kapcsolódó könyvtárakat. Hogyan küldjük el az alkalmazást az ügyfélnek (forráskód nélkül), hogy az biztosan futni fog neki

    11. lecke

    Rövid információ az SQLite DBMS-ről. Alapvető műveletek adatbázissal végzett munka során. Qt eszközök az SQLite használatához. DB-vel végzett munka megvalósítása a "modell - reprezentáció" koncepción keresztül. Más adatbázis-könyvtárak létrehozása és összekapcsolása (Postgresql/mysql/ets)

    12. lecke

    Magas és alacsony szintű hálózati protokollok. Csatlakozás aljzatokon keresztül. A kliens-szerver modell. Hálózati hozzáférés szabályozása. Csatlakozás a szerveren lévő adatbázisokhoz

    A gyakorlat során egy nyílt forráskódú szövegszerkesztőt fog fejleszteni, mint például az Emacs C++ nyelven bővítményekkel. Csapatmunka készségekre tesz szert, dolgozhat gittel és Tasktrackerrel, valamint megismerkedhet az Agilis fejlesztési módszertanokkal, a SCRUM-mal, a KANBAN-nal.

    2. lecke: Bevezetés az agilis módszertanokba. Feladatkövetők

    Scrum és Kanban módszertanok. Hogyan kell vállalni a feladatokat. A kezdeményezőkészség és a felelősségvállalás előnyei. Feladatkövetők Kanban stílusban. SMART célok kitűzése. Műszaki feladatok. Felhasználói történetek. Használati forgatókönyvek.

    3. lecke Scrum és Kanban

    Az agilis módszertan értékei. Scrum (részletesen). Kanban. Megvalósítási hibák. Cargo kultusz. Mikromenedzsment. Miért van szükség az átláthatóságra és hogyan biztosítható? Scrum chat.

    4. lecke

    Tervezési és kezelési kockázatok. Határidők és értékük. Idő beosztás.

    5. lecke

    Maslow piramisa. A motiváció három szintje. Hogyan motiváld magad? Motiváció Lebegyev szerint. Példabeszéd egy kutyáról. Fegyelem.

    6. lecke

    Hibák a követelmények tervezésében és összegyűjtésében. Vezetési hibák: mikromenedzselés, utánzás. Következmények: forgalom, feldolgozás, éjszakai munkavégzés. Megkísérli új követelmények és változtatások bevezetését. A határidők megszegése. Reménytelen projektek. Felelősség. Projektmentés. Mikor kell abbahagyni? Pivot.

    7. lecke

    Csapat menedzsment. Miért fontos a mentorálás. Milyen gyakran kell egy programozónak mentornak lennie. Vezetői képességek. Delegáció. SMART célok. A tanulás képessége.

    8. lecke

    Nyers termék. Minőségi termék. Gyorsan működő prototípus. Minőségi kód. Egyensúly. A funkció egy részének megtagadása. Funkcionális tesztelés. Fekete-fehér doboz. Egyél saját kutyaeledelt.

    9. lecke

    puha készségek. kemény készségek. Dolgozzon az önéletrajzon.

    10. lecke

    Interjú HR-menedzserrel és leendő vezetővel.

    11. lecke kilátások

    Milyen cégekhez érdemes jelentkezni. Speciális fejlesztés. Junior, Közép, Senior, Csapatvezető, CTO. Menedzsment.

    12. lecke

    Áttekintés az elért eredményekről. Búcsúzó szavak.

    Hogyan lehetsz programozó. 13 lecke.
    Álláskeresés lépésről lépésre

    A programozói karrier izgalmas utazás a modern technológia világába. Minden fejlesztőnek megvan a saját története és tapasztalata. Van azonban egy alapvető algoritmus, amely segít helyesen megtenni az első lépéseket, és elvezetni a célhoz. 13 videós oktatóanyagot készítettünk, amelyekben választ adtunk a legégetőbb kérdésekre a programozói karrierrel kapcsolatban a vállalatoknál és a szabadúszó piacon. Gyakran gondol az állásra, és úgy érzi, készen áll a kereset megkezdésére? Akkor ez a videó tanfolyam neked szól.

    1. lecke

    A szakma jellemzői; GYIK; kereslet a munkaerőpiacon.

    2. lecke

    Sikeres programozó leszek? sikertényezők.

    3. lecke

    A legfontosabb az első benyomás; hogyan nevezzük el a munkát.

    4. lecke

    Weboldal-fejlesztési nyelvek áttekintése: HTML, CSS, JavaScript, PHP, Python, Ruby, C#, Java; jó választás.

    5. lecke Univerzális programozási nyelvek

    Nyelvi áttekintés: Java, Objective-C, Swift; C#, C++, Python: a megfelelő választás.

    6. lecke

    Technológiák listája; portfólió oklevelek és bizonyítványok; személyes tulajdonságok. A műszaki szakember és a HR véleménye.

    7. lecke

    Álommunka, pszichológiai vonatkozások; lekérdezési technika.

    8. lecke

    Interjúk programozóknak: hogyan viselkedjünk, mit mondjunk, mit hallgassunk; próbaidő és annak letételének szabályai.

    9. lecke

    A szabadúszó oldalak áttekintése; a regisztráció jellemzői; számla regisztráció; hogyan lehet kitűnni az előadók többsége közül.

    10. lecke

    Rendelés keresési stratégia; prioritási sorrend: mit vegyünk be a munkába; Tárgyalás; a TK feladatai és buktatói; az ügyféllel való kapcsolatfelvétel módjai; válaszok írása és az ügyfelek figyelmének felkeltése; a megfelelő kérdéseket.

    11. lecke

    Fizetési módok: nem készpénz vagy készpénz; előre vagy utólag fizetett; olyan helyzetek áttekintése, amelyekben az egyes módszerek jobban működnek; munka előkészítése és kötelező érvényű megállapodások az ügyféllel; a munkafolyamat jellemzői; az együttműködés végső szakaszai; visszacsatolás csere; "konzultál" technika.

    12. lecke

    Hogyan zajlik a fejlődés a nagyvállalatoknál? Kik az elemzők, tervezők, tesztelők, építészek, projektmenedzserek, csapatvezetők stb.

    13. lecke

    Hogyan néz ki az informatikai karrierlétra? Milyen szakterületeken könnyebb elindulni? Mik a fejlődési kilátások?

    Az EnglishDom iskolával közösen kidolgozott kurzus segít elsajátítani a kezdő informatikusok számára fontos angol nyelvű témákat. Maximális gyakorlás és összpontosítás az informatikai szókincsre. 10 leckében elemezzük az önéletrajzok, technikai megbízások és üzleti levelek elkészítését, interjúkat és tárgyalásokat, nemzetközi kommunikációt a projekt promóciója során. Az élő angol nyelvű párbeszédek során a hallgatók olyan kifejezéseket foglalnak össze, amelyek hasznosak lesznek a fejlesztők és tesztelők, a marketingesek és a tervezők munkájában.

    10. lecke

    Beszélünk a projektünkről és bemutatjuk a csapatot angolul.

    A C++ programozási nyelv alapjainak és finomságainak elsajátítása. Tankönyv gyakorlati feladatokkal és tesztekkel. Szeretnél megtanulni programozni? Akkor jó helyen jár – itt az ingyenes programozói képzés. Akár van tapasztalata, akár nincs, ezek a programozási leckék segítenek a C++ programok létrehozásának, fordításának és hibakeresésének megkezdésében különböző fejlesztői környezetekben: Visual Studio, Code::Blocks, Xcode vagy Eclipse.

    Rengeteg példa és részletes magyarázat. Tökéletes kezdőknek (bábuknak) és haladóknak egyaránt. Minden el van magyarázva a semmitől a legapróbb részletekig. Ezek a leckék (200+) jó alapot/alapot adnak a programozás megértéséhez nem csak C ++ nyelven, hanem más programozási nyelveken is. És ez teljesen ingyenes!

    Tartalmazza továbbá a játék lépésről lépésre történő létrehozását C ++ nyelven, az SFML grafikus könyvtárat és több mint 50 feladatot, amellyel tesztelheti képességeit és tudását C ++ nyelven. További bónusz a .

    Repost +20 a karmának és hálám!

    0. fejezetszám. Bevezetés. A munka kezdete

    fejezet száma 1. A C++ alapjai

    2. fejezetszám. Változók és alapvető adattípusok C++ nyelven

    3. fejezetszám. Operátorok C++ nyelven

    4. fejezetszám. Hatókör és más típusú változók a C++ nyelven

    5. fejezetszám. A kód végrehajtásának sorrendje a programban. Cikkek, elágazások C++-ban



    Betöltés...
    Top