Budapest University of Technology and Economics, Faculty of Electrical Engineering and Informatics

    Belépés
    címtáras azonosítással

    vissza a tantárgylistához   nyomtatható verzió    

    A programozás alapjai 2.

    A tantárgy angol neve: Basics of Programming 2.

    Adatlap utolsó módosítása: 2006. július 1.

    Tantárgy lejárati dátuma: 2007. január 31.

    Budapesti Műszaki és Gazdaságtudományi Egyetem
    Villamosmérnöki és Informatikai Kar

    Mérnök-informatikus Szak

    első ciklus

    Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
    VIEEA112 2 2/2/0/f 4 2/2
    4. A tantárgy előadója

    Név:

    Beosztás:

    Tanszék, Int.:

    Dr. Szeberényi Imre

    egyetemi docens

    IIT

    5. A tantárgy az alábbi témakörök ismeretére épít

    A C programozási nyelv ismerete

    6. Előtanulmányi rend
    Kötelező:
    TárgyEredmény( "BMEVIEEA100" , "jegy" , _ ) >= 2 VAGY TárgyEredmény( "BMEVIEE1239" , "jegy" , _ ) >= 2

    A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.

    A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.

    Ajánlott:

    A tárgyat csak azok vehetik fel, akik korábban a következő tárgyakat hallgatták:

    VIEEA100 Programozás alapjai 1 c. tárgyból kredit pont megszerzése

    7. A tantárgy célkitűzése

    A tárgy alapvető célja, hogy alapozó tárgyként folytassa a számítógépes problémamegoldás módszereinek és alapvető eszközeinek előző félévben megkezdett megismertetését olyan szinten, hogy azt a hallgatók további tanulmányaik során képesek legyenek hatékonyan alkalmazni. Ezen félév alapvető célkitűzése, hogy további gyakorlatokkal mélyítse a C programozási nyelv ismeretét, megismertesse a nagyméretű programozási feladatok megoldásának lépéseit, és bevezessen az objektum-orientált programozásba. Célkitűzését a tárgy az előző félévben megszerzett C nyelvi tudásra alapozva, a C++ nyelv megismertetésével éri el. A gyakorlatok anyaga folyamatosan követi az előadások tematikáját, azok mélyebb megértését teszi lehetővé.

    8. A tantárgy részletes tematikája
    • C++ nyelv származtatása a C-ből
      • Makró (inline), konstans megvalósítás, típusértékű struct, enum; prototípusok, default argumentumok és függvény overload.
      • Memória allokáció, new, delete, new_handler; referencia típus, függvény paraméterek és visszatérési érték, cin, cout, cerr objektumok; adatok láthatóság és érvényessége.
    • Objektum-orientált programozás alapjai a C++ által
      • Objektum-orientált programozás alapfogalmai, elvei, objektum fogalma. Osztály, fogalma, egységbezárás, védelem és információtakarás.
      • Tagfüggvények típusai, védelem enyhítése, friend mechanizmus. Konstruktor, destruktor, adatok (objektumok) inicializálása, this pointer használata.
      • Operátorok értelmezésének kiterjesztése: operátor overload fogalma. Dinamikusan allokált mezővel rendelkező objektumok értékadása és inicializásása, másoló konstruktor.
      • Operátorok értelmezésének kiterjesztése tagfüggvénnyel és friend mechanizmussal. Referencia típussal visszatérő függvény mint balérték (index operátor).
      • Az öröklés szerepe az objektumorientált programozásban. Öröklés, származtatott osztály, alaposztály. Védelem öröklés alatt. Virtuális függvények, fordítási és késői összerendelés, inicializálás; többszörös öröklés. Virtuális alaposztály. Objektumok mint más objektumok attribútumai. Objektum tömbök.
      • Generikus adatszerkezetek jelentősége. Dinamikus adatstruktúrák, generikus osztályok.
      • Az STL és fontosabb osztályai
    • Alapvető operációs rendszer ismeretek és fejlesztést támogató eszközök
    9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

    (előadás, gyakorlat, laboratórium):

    A tárgyból heti 1 alkalommal 2 órás előadást tartunk a teljes évfolyamnak és heti 2 óra tantermi gyakorlatot tartunk 20-30 fős hallgatói csoportok (tanulókörök) számára. Az előadáshoz és a tantermi gyakorlatokhoz a Szoftver laboratórium 2 című tárgy laborfoglalkozásai szorosan csatlakoznak. Jelen tárgy keretén belül az elméleti ismeretek kerülnek előadásra.

    10. Követelmények

    a. A szorgalmi időszakban:

    A tárgyból hetente 2 óra előadást és 2 óra tantermi gyakorlatot tartunk az órarend szerinti helyeken és időben. A szorgalmi időszak alatt 1 alkalommal az évfolyam terhelési táblázata szerinti időpontban nagy zárthelyi dolgozatot íratunk.

    A nagy zárthelyi dolgozaton túl a félév során legalább 3 ellenőrző dolgozat megíratására is sor kerül. Az ellenőrző dolgozatokból a 3 legeredményesebb eredményének az átlagát képezzük. Ha valaki 3-nál kevesebb ellenőrző dolgozatot írt, akkor a meg nem írt dolgozatok eredményét 0-nak tekintjük.

    A felkészülést egyéni szorgalmi feladatok is segítik, melyek megoldása nem kötelező. A határidőre és sikeresen megoldott szorgalmi feladatokkal egy-egy extra pont szerezhető, amelyeket a félév végi jegy kialakításánál veszünk figyelembe.

    A félév végi jegy megszerzésének feltétele legalább elégséges (pót)zárthelyi, legalább elégséges ellenőrző dolgozat átlag, valamint a gyakorlatokon való részvétel. A hiányzások mértékét a TVSz 13.§ (8) rögzíti.

    A félév végi jegy a nagy zárthelyi osztályzatának és a 3 legjobb ellenőrző dolgozat átlagának súlyozott átlaga. A nagy zárthelyi eredményét 2-szeres súllyal, az ellenőrző dolgozatok átlagát pedig 1-szeres súllyal vesszük figyelembe. Az így kialakult értéket a gyakorlatvezető +/-1 jeggyel korrigálhatja figyelembe véve a szorgalmi feladatokkal szerzett extra pontokat és a gyakorlatokon nyújtott folyamatos teljesítményt.

    11. Pótlási lehetőségek

    Elégtelen nagy zárthelyi egyetlen alkalommal pótolható.

    Elmaradt ellenőrző dolgozat, illetve határidőre nem teljesített szorgalmi feladat nem pótolható, azokat 0 értékkel vesszük figyelembe.

    Elégtelen (pót)zárthelyi és/vagy elégtelen ellenőrző dolgozatátlag esetén a félév végi jegy a pótlási héten – a TVSz 13.§ (5) előírásai alapján – ismételt vizsga jelleggel, az egész félév anyagát felölelő beszámoló dolgozattal szerezhető meg.

    12. Konzultációs lehetőségek

    Konzultációt a tantermi gyakorlatok tanulócsoportjai szintjén szervezünk a tanulócsoportok igénye szerint.

    13. Jegyzet, tankönyv, felhasználható irodalom

    Bármely az objektum-orientált programozással és a C++ programozási nyelvvel foglalkozó könyv vagy jegyzet használható. Ajánlott irodalom:

    • B. Stroustrup: A C++ programozási nyelv (Kiskapu, 2001)
    • Tóth Bertalan: Programozzunk C++ nyelven (ComputerBooks, 2003)
    • Kondorosi Károly - László Zoltán - Szirmay-Kalos László: Objektum-orientált szoftverfejlesztés C és C++ nyelven (CompuerBooks, 2004)
    • Benkő Tiborné - Poppe András: "Együtt könnyebb a programozás" sorozat: Objektum-orientált C++ (CompuerBooks, 2004)
    14. A tantárgy elvégzéséhez átlagosan szükséges tanulmányi munka

    Kontakt óra

    56

    Félévközi készülés órákra

    24

    Felkészülés zárthelyire

    20

    Kijelölt írásos tananyag elsajátítása, szorgalmi feladatok megoldása

    20

    Összesen

    120

    15. A tantárgy tematikáját kidolgozta

    Név:

    Beosztás:

    Tanszék, Int.:

    Dr. Poppe András

    egyetemi docens

    EET

    Dr. Vajk István

    egyetemi docens

    AUT

    Dr. Szeberényi Imre

    egyetemi docens

    IIT