Tantárgy neve, kódja: Vizuális programozás, GINFBAN-VIZUPROG-1

Szak neve, képzési szintje: Mérnökinformatikus alapszak, BSc
Tanterv: 2017
Heti órászám (előadás + gyakorlat + labor): 2+0+2
Kreditérték: 5
Elmélet: 50 %
Gyakorlat: 50 %
A tantárgy tantervi helye: 4. félév
Munkarend: Nappali
Előtanulmányi feltételek: Programozási paradigmák és technikák
Értékelés: gyakorlati jegy
Tantárgy besorolása: szakmai törzsanyag
Oktatás nyelve: Magyar
Tantárgyfelelős: Prof. Dr. Johanyák Zsolt Csaba
Felelős tanszék: Informatika Tanszék
Tantárgy oktatója(i): Prof. Dr. Johanyák Zsolt Csaba , Dr. Subecz Zoltán, Tóth László
Ellenőrzésért felel: Prof. Dr. Johanyák Zsolt Csaba
Tárgy oktatásának célja:
A hallgatók megismertetése a vizuális eszközök segítségével történő gyors alkalmazásfejlesztéssel.
Elsajátítandó ismeretanyag előadás:

- Követelményrendszer ismertetése. Windows Forms alkalmazások rövid bemutatása. - Windows Presentation Foundation alapok. - Események és viselkedés. Űrlapok, adatbevitel és ellenőrzés (első rész - komplex adatkötés-ig). WPF rajzolás (első rész: shapes + Drawing and Geometries). - Adatbázis elérés (bevezetés). Adatbázis elérési módok (közvetlen, ODBC, OLE DB). - WPF rajzolás (második rész). WPF animáció. ADO.NET. Adatelérési modellek. Kapcsolat nélküli adatbáziselérés. A kapcsolat alapú adatbáziskezelés részletes áttekintése. A provider-consumer modell fontosabb objektumai. Adatok módosítása és a módosítások érvényesítése az adatbázisban. Ismétlés: Bevezetés a LINQ használatába. - Entity Framework Core alapú adatbáziselérés. - MAUI bevezetés. - LINQ to Objects (folytatás - Szótár/Számok demó). Lambda kifejezések. LINQ to DataSets. Adatkötés WPF alkalmazásokban. Egyedi oszlopdefiníciók DataGridnél. - Adatkötés Entity Framework Core objektumoknál. Megjelenített adatok csoportosítása. Esettanulmány. Űrlapok, adatbevitel és ellenőrzés (második rész - komplex adatkötéstől). - ZH - Adatok mentése JSON formátumba és visszaolvasás. Adattárolás XML-ben. LINQ to XML. További szerializációs megoldások. Rajzolás WPF-ben. - MAUI esettanulmány. - Pót ZH.


Elsajátítandó ismeretanyag laboratórium:

- AppInventor: Kapj el alkalmazás, Macskasimogató. Egyéni AppInventor feladat kiadása. - Windows Forms bevezető alkalmazás: Gyümölcsárazó automata. - Memóriajáték (WPF). Csoportmunkában megoldandó WPF-es feladat (projektfeladat) kiadása + csoportok összeállítása. Projektfeladat formai követelmények ismertetése. - WPF - Képnézegető. - Projektkonzultáció 1. Fakultatív feladat egyéni feldolgozásra: AppInventor: Katica. - Entity Framework Core + Model first adatbáziskezelés (Szerzők-cikkek/Telefonszámok alk). A gyakorlathoz SQL Server Management Studio (SSMS) és Devart Entity Developer Express előzetes telepítése is szükséges- - WPF + Entity Framework Core + Model first adatbázis kezelés (Szerzők-cikkek/Telefonszámok - WPF alk. folytatás) - Entity Framework Core + Code first adatbázis kezelés. - Projektkonzultáció 2. - MAUI - Memória játék - MAUI - Xamarin.Forms - "Kapj-el" játék alkalmazás. - MAUI - Teszt alkalmazás.

Elsajátítandó szakmai kompetenciák (tudás, képesség, attitűd, autonómia és felelősség, további szakmai kompetenciák):
Tudása:

- Ismeri a főbb programozási paradigmákat, programnyelveket, fejlesztési eszközöket. Tudása kiterjed az információs rendszerek modellezésére, adatbázis alapú rendszerek kialakítására, számítógépes hálózatok felépítésére, működésére és implementációjára, intelligens rendszerek jellemzőire, a mobil alkalmazásfejlesztés sajátosságaira, a korszerű, általános célú operációs rendszerek menedzselésére, és az IT biztonság szempontjaira - Ismeri a fontos szoftverfejlesztési módszertanokat, informatikai tervek és dokumentációk jelölésrendszerét. - Ismeri az informatika és a mérnöki szakma szókincsét és kifejezési sajátosságait magyar és angol nyelven, legalább alapszinten.

Képességei:

- Képes alkalmazást fejleszteni, kliens-szerver és WEB, mobil rendszereket programozni, multiplatform rendszereket kialakítani. - Képes a megszerzett alapismeretekre építve egy-egy műszaki informatikai területen mélyebb ismeretek önálló megszerzésére, a szakirodalom feldolgozására, majd a területhez kapcsolódó informatikai problémák megoldására. - Képes szakterületén elemzési, specifikációs, tervezési, fejlesztési és üzemeltetési feladatok ellátására, alkalmazza a fejlesztési módszertanokat, hibakeresési, tesztelési és minőségbiztosítási eljárásokat. - Együttműködik informatikusokkal és villamosmérnökökkel a csoportmunka során, és más szakterületek képviselőivel is az adott probléma követelményelemzésének és megoldásának kimunkálása során. - Folyamatosan képezi magát és lépést tart az informatikai szakma fejlődésével.

Attitűdje:

- Hitelesen képviseli a mérnöki és informatikai szakterületek szakmai alapelveit. - A saját munkaterületén túl a teljes műszaki rendszer átlátására törekszik. -Nyitott az új módszerek programozási nyelvek, eljárások megismerésére és azok készség szintű elsajátítására - Nyitott az informatikai eszközöket alkalmazó más szakterületek megismerésére és azokon informatikai megoldások kidolgozására az adott terület szakembereivel együttműködve. - Törekszik a hatékony és minőségi munkavégzésre.

Autonómia és felelősség:

- Felelősséget érez az önálló és csoportban végzett informatikai rendszerelemzői, -fejlesztői és -üzemeltetési tevékenységéért. - Feltárja az alkalmazott technológiák hiányosságait, a folyamatok kockázatait és kezdeményezi az ezeket csökkentő intézkedések megtételét.

További szakmai kompetenciák:


A számonkérés és értékelés rendszere:
Félévközi tanulmányi követelmények:
A félév során teljesítendő számonkérések és feladatok az alábbiak. - Elméleti ZH, amivel összesen 40 pont szerezhető. Ebből 20 pont megszerzése a minimum követelmény. - A gyakorlati részből 60 pont szerezhető, ebből 30 pont megszerzése a minimum követelmény. A konkrét feladatokat és a határidőt a gyakorlatvezető határozza meg. Itt a hallgató három feladatot kell elkészítsen. - Egy AppInventoros alkalmazás fejlesztése (10 pont). - Egy adatbázis kezelést alkalmazó WPF alkalmazás fejlesztése (projektfeladat/nagyfeladat) (40 pont). - Egy MAUI alkalmazás fejlesztése (10 pont).
Vizsgakövetelmények:

Tanulmányi segédanyagok, laborháttér:

Az ajánlott irodalom, előadásvázlat, a gyakorlatokon megírt programok, a fejlesztőkörnyezetek súgója. A gyakorlatokon minden hallgatónak külön számítógépes hozzáférés biztosított. 1. Igényelt Visual Studio 2022 komponensek • .NET desktop development workload • .NET Multi-platform App UI development workload • Individual components: SQL Server Express 2019 LocalDB, Class Designer 2. További szükséges szoftverek • SQL Server Management Studio (SSMS) • Devart Entity Developer Express

Kötelező irodalom:

1. Segédletek AppInventoros, .NET -es és Xamarin.Forms-os gyakorlatokhoz: https://unineumannhu-my.sharepoint.com/:f:/g/personal/johanyak_csaba_o365_uni-neumann_hu/Eof0XNGpyNtHtJjK_GoyyxQBJ0LALuuokiqfduga1CI19A?e=i31RBX 2. Előadásokhoz kapcsolódó példaprogramok: https://unineumannhu-my.sharepoint.com/:f:/g/personal/johanyak_csaba_o365_uni-neumann_hu/EjByP1_2ydxFhSR1ra6XzEEBsHogkwX1wURnkFWm42XZ0Q?e=GvIq18 3. Előadás prezentációk https://unineumannhu-my.sharepoint.com/:f:/g/personal/johanyak_csaba_o365_uni-neumann_hu/EhSARxvHpM5FhTfoafactPMBt28D9eFtifZhIgCk4VD_Tw?e=6YvVAY

Ajánlott irodalom:

1. AppInventor ajánlott irodalom - David Wolber, Hal Abelson, Liz Looney, Ellen Spertus: App Inventor 2, Create Your Own Android Apps, 2nd Edition, O'Reilly Media, 2014, ISBN-13: 978-1491906842 - Takács Viktor László: Mobiltechnológia (e-könyv), 2017, ISBN: 978-963-318-639-8 2. NET ajánlott irodalom - Andrew Troelsen Philip Japikse: Pro C# 10 with .NET 6, APress, 2022, ISBN: 1484278682 - Build mobile and desktop apps with .NET MAUI (7modul) https://learn.microsoft.com/en-us/training/paths/build-apps-with-dotnet-maui/?WT.mc_id=dotnet-35129-website