K-INFO
HU
EN
Belépés

Szoftver-technikák

Software Technologies
A tantárgyleírás hatályossága
Hatályosság kezdete:
—
Hatályosság vége:
—
Tantárgy neve (magyarul, angolul)
Szoftver-technikák
Software Technologies
Tantárgykód BMEVIAU4313
Tantárgyjelleg —
Képzési szint —
Kurzustípusok és óraszámok (heti/féléves)
Kurzustípus elmélet gyakorlat laboratóriumi gyakorlat
óraszám (heti) 4 0 0
jelleg (kapcsolt/önálló) — — —
Tanulmányi teljesítmény/értékelés típusa vizsga
Tantárgy kreditértéke 5
Tantárgyfelelős
DR. Charaf Hassan
beosztás: egyetemi tanár
Tantárgyat gondozó oktatási szervezeti egység
—
Kar
Tantárgy weboldala —
Tantárgy elsődleges mintatantervi jellege —
Közvetlen előkövetelmények – Erős előkövetelmény nincs
Közvetlen előkövetelmények – Gyenge előkövetelmény nincs
Közvetlen előkövetelmények – Párhuzamos előkövetelmény nincs
Közvetlen előkövetelmények – Mérföldkő előkövetelmény nincs
Közvetlen előkövetelmények – Kizáró feltétel nincs

Célkitűzés

Tantárgyprogram

Win32 API

  • API fogalma
  • Eseményvezérelt programozás (üzenetsorok)
  • Ablak-kezelő eljárások
  • Dialógus- és gyerekablakok
  • GDI, DDE, DLL

Szoftverrendszerek tervezése

  • Életciklus modellek
  • Objektum-orientált tervezés: jelölésrendszer és fejlesztési folyamat
  • Unified Process életciklus modellje
  • Unified Modeling Language (UML) áttekintése
  • Objektum-orientált analízis, analízis sémák (Analysis Patterns)
  • Objektum-orientált tervezés: rendszer tervezés, vezérlés implementálása (pl.: eseményvezérelt), részletes tervezés
  • Tervezési sémák (Design Patterns)
  • Framework (strukturált felépítésből Objektum-orientált rendszer)

MFC

  • CObject: Serialization, Dump
  • RTTI
  • Template-ek: CArray, CList
  • Message Map: CWinApp, CWinThread, CCmdTarget
  • Architektúra
  • Load/Save, Undo
  • View
  • OnDraw

Tesztelés – Hibakeresés és javítás

Forráskód menedzselés (SourceSafe, CVS)

X-Window/KDevelop

  • A Linux felépítése és programkönyvtári, X Alapfogalmak
  • X11 kliens-szerver, X protokoll
  • erőforrások (ablak, pixmap, fontkészlet, színek...)
  • biztonság: az xhost parancs
  • események, callback függvények
  • eszközkészletek (toolkits)
  • widgetek és widgetkészletek, window manager, gyökér ablak
  • Az Xlib programozása
  • Ablakok kezelése
  • Események kezelése
  • Színek és grafika
  • Az X Toolkit Intrinsics (Xt) – az eszközkészletek objektum-orientált támogatása
  • Programozás KDevelop környezetben
  • A Qt eszközkészlet (felhasználói felületelemek, a signal/slot modell, előre definiált dialógusablakok, eseménykezelés)
  • A Qt/KDE alkalmazások architektúrája (Document, View, Application, MDI, dialógusablakok)

Esettanulmány

Az előadásokon – ahol erre lehetőség van – egy egyszerűprogram megvalósításán keresztül mutatjuk be az elméletet és a technológiákat.

A tárgy keretében a hallgatók megismerik az objektum-orientált szoftver tervezés és készítés technikáit, valamint az eseményvezérelt programozás legfontosabb módszereit. A hallgatók elsajátítják a grafikus felhasználói felület (GUI - Graphical User Interface) és az automatikus kódgeneráláson alapuló gyors alkalmazás-fejlesztés (RAD - Rapid Application Development) struktúráit és programozási alapjait. A tematika fontos részét képezik a szoftver rendszerek tervezésének elvei, továbbá a megfelelő mértékű absztrakció és a csökkentett bonyolultságú programfelépítés fontosságának bemutatása. Az elvi megfontolásokat haladó szintű C++ nyelvi tervezési minták (Design Patterns) szemléltetik. A szoftver technikák sorát a haladó szintű Windows programozási ismeretek lehetőségeinek bemutatása, ehhez kapcsolódóan a szabványos osztálykönyvtárak szerepének és jelentőségének elemzése, az ismert osztálykönyvtárak (Libraries: MFC) összehasonlítása folytatja. A fejlesztési koncepciók körébe tartozó technikákon túlmenően a tematika a szoftver életciklusban több alkalommal is szerephez jutó forráskód menedzselés fontosabb (SourceSafe, ClearCase, CVS, és egyéb eszközök) elveit is tartalmazza. A tárgy hallgatása során elsajátított ismereteket esettanulmányok reprezentálják. Összefoglalva a tárgy megadja az alapokat ahhoz, hogy a hallgatók képesek legyenek a legelterjedtebb platformokon (Windows, Linux) a legkorszerűbb eszközökkel és technológiákkal szoftverek tervezésére és készítésére.

Tanulmányi eredmények

Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:

Tudás

Nincsenek rögzített tanulási eredmények.

Képességek

Nincsenek rögzített tanulási eredmények.

Attitűd

Nincsenek rögzített tanulási eredmények.

Autonómia és felelősség

Nincsenek rögzített tanulási eredmények.

Oktatási módszertan

Előadás. Fakultatívan (Az órán kívül) laborban mutatjuk az előadásokon elhangzott témák gyakorlati lehetőségeit.

Tanulástámogató anyagok

Online források
Dr. Charaf Hassan. Tanszéki segédletek elektronikus formában

A tantárgy teljesítéséhez ajánlott előzetes ismeretek

Tudás típusú kompetenciák
(azon előzetes ismeretek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
Programozás technológiája
Képesség típusú kompetenciák
(azon előzetes képességek és készségek összessége, amelyek megléte nem kötelező, de a tantárgy eredményes teljesítését nagyban elősegíti)
nincs
Ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák
(azon ajánlott (nem kötelező) előzetesen megszerzendő kompetenciák összessége, amelyek jelentősen hozzájárulnak a tantárgy eredményes teljesítéséhez)
Programozás technológiája
Általános szabályok
Követelmények: a. A szorgalmi időszakban: Zárthelyi + házifeladat b. A vizsgaidőszakban: vizsga c. Elővizsga: van
Teljesítményértékelési módszerek
Szorgalmi időszakban végzett teljesítményértékelések részletes leírása

Nincs megadva részletes értékelés.

Szorgalmi időszakban végzett teljesítményértékelések részaránya

Nincs megadva részarány.

Vizsgaidőszakban végzett teljesítményértékelések részletes leírása

Nincs megadva részletes értékelés.

Vizsgarészek részaránya

Nincs megadva részarány.

Érdemjegy megállapítása

Nincs megadva érdemjegy határ.

Jelenléti és részvételi követelmények

Nincs megadva jelenléti követelmény.

Javítás, ismétlés és pótlás különös szabályai

Nincs megadva.

Rövid leírás

Nincs megadva.

Részletes leírás

Nincs megadva.

Ajánlott tantárgyak

Nincs megadva.

A tantárgy elvégzéséhez szükséges tanulmányi munka

Nincs megadva munkaidő bontás.

Tantárgykövetelmények hatályossága
Tantárgykövetelmények hatályosságának kezdete:
—
Tantárgykövetelmények hatályosságának vége:
—
Tantervi elhelyezés

Nincsenek rögzített tantervi elhelyezések ehhez a tárgyverzióhoz.