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

Szak neve, képzési szintje: Mérnökinformatikus alapszak, BSc
Tanterv: 2021
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: Kötelező
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:

1. Követelményrendszer ismertetése. Windows Forms alkalmazások rövid bemutatása. 2. Windows Presentation Foundation alapok. 3. 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). 4. Adatbázis elérés (bevezetés). Entity Framework Core alapú adatbáziselérés. Model First. 6. Code First. Database First. 5. 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. 6. 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. 7. 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). 8. WPF rajzolás (második rész). WPF animáció. 9. MAUI bevezetés. 10. ZH. 11. Adatok mentése JSON formátumba és visszaolvasás. Adattárolás XML-ben. LINQ to XML. További szerializációs megoldások. 12. MAUI esettanulmány. 13. Pót ZH.


Elsajátítandó ismeretanyag laboratórium:

1. AppInventor: Kapj el alkalmazás, Macskasimogató. 2. Windows Forms bevezető alkalmazás: Gyümölcsárazó automata. 3. 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. 4. WPF - Képnézegető. 5. 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- 6. WPF + Entity Framework Core + Model first adatbázis kezelés (Szerzők-cikkek/Telefonszámok - WPF alk. folytatás) 7. Entity Framework Core + Code first adatbázis kezelés. 8. Projektkonzultáció 9. MAUI - Memória játék 10. MAUI - "Kapj-el" játék alkalmazás. 11. MAUI - Teszt alkalmazás. 12. Projektfeladat bemutatása. 13. MAUI esettanulmány.

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:

- 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.

Képességei:

- 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.

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ók két-három fős csapatokban dolgozva egy adatbázis kezelést alkalmazó WPF vagy MAUI alkalmazást kell fejlesszenek. Az alkalmazás meg kell valósítsa a CRUD funkcionalitást. - Az oktatók által kiadott szorgalmi feladatokkal a hallgatók további pontokat szerezhetnek.
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. Zsolt Csaba Johanyák: Visual Programming Exercises, Moodle Course. The course material was prepared with the support of the RRF-2.1.2-21-2022-00039 grant "Development of comprehensive digital infrastructure, skills and internationalization at John von Neumann University". 2. Zsolt Csaba Johanyák: Mastering Data Access: Practical Exercises for Entity Framework and ADO.NET in C#. The course material was prepared with the support of the RRF-2.1.2-21-2022-00039 grant "Development of comprehensive digital infrastructure, skills and internationalization at John von Neumann University". 3. Zsolt Csaba Johanyák: Introduction to MAUI programming, The course material was prepared with the support of the RRF-2.1.2-21-2022-00039 grant "Development of comprehensive digital infrastructure, skills and internationalization at John von Neumann University". 4. 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 5. Build mobile and desktop apps with .NET MAUI https://learn.microsoft.com/en-us/training/paths/build-apps-with-dotnet-maui/?WT.mc_id=dotnet-35129-website 6. Johanyák Zsolt Csaba: Adathozzáférés haladó szinten: Entity Framework és ADO.NET gyakorlatok. Moodle kurzus.

Ajánlott irodalom: