„Eseményvezérelt és vizuális programozás” változatai közötti eltérés
start |
→Előadás: Óra anyagának hozzáadása |
||
| (32 közbenső módosítás, amit 9 másik szerkesztő végzett, nincs mutatva) | |||
| 7. sor: | 7. sor: | ||
|kereszt=N/A | |kereszt=N/A | ||
|tanszék=AUT | |tanszék=AUT | ||
| | |labor=van | ||
| | |kiszh=labor beugrók | ||
|nagyzh= | |nagyzh=2 | ||
|hf= | |hf=0 db | ||
|vizsga=nincs | |||
|tad=https://portal.vik.bme.hu/kepzes/targyak/VIAUBB01/ | |tad=https://portal.vik.bme.hu/kepzes/targyak/VIAUBB01/ | ||
|targyhonlap= | |targyhonlap=https://www.aut.bme.hu/Course/VIAUBB01}} | ||
A tárgy keretein beül a hallgatók a korábbi objektum-orientált ismereteikre alapozva megismerik az eseményvezérelt és grafikus programozás legfontosabb módszereit. A hallgatók megismerik a C# nyelvet és a .NET környezeten keresztül elsajátítják a grafikus felhasználói felület (GUI - Graphical User Interface) programozási alapjait. Megismerik a modern osztálykönyvtárak fontosabb szolgáltatásait (reflexiós technikák, adatkötés, rajz és szöveg megjelenítése stb.), valamint betekintést kapnak a feladatok párhuzamos futtatásának lehetőségeibe. | |||
== Követelmények == | == Követelmények == | ||
=== Előtanulmányi rend === | |||
*A tárgy felvételéhez az [[Objektumorientált programozás | Objektumorientált programozás ]] tárgy kredite szükséges hozzá. | |||
=== A szorgalmi időszakban === | === A szorgalmi időszakban === | ||
*A '''labor'''on megjelenés kötelező. Minden nem házi feladat leadási laboron az órai aktivitást és eredményeket a laborvezető pontozza 0-1-2 ponttal. Egyes előadásokon és laborokon előre be nem jelentett módon további bónusz pontok nyerhetők, melyek hozzáadódnak a félév során gyűjtött pontokhoz. A félév sikeres teljesítésének feltétele a laborok 70%-án való részvétel. A laborok értékelésébe beszámít a „beugró”, ami vagy konkrétan megválaszolandó kérdéssor, vagy a laborfeladat eleje, aminek elkészítésében a laborvezető még nem segít, azt teljesen önállóan kell tudni elkészíteni. Amennyiben ez nem sikerül, a laborra a hallgató 0 pontot kap. | |||
** A laborok lehetnek: | |||
*** ''Hagyományos labor'': kiadott segédlettel feladatok elvégzése, önnálló labor, de laborvezető segíthet. | |||
*** ''Code review labor'': házi feladatokat egymásnak elmagyarázzátok. A cél a forráskód minőségének növelése, az „ezt hogyan érdemes elegánsan megoldani” kérdések megvitatása. | |||
*** ''Házi feladat konzultációs labor'': házi feladattal kapcsolatos egyéni kérdésekre feltevése, házi feladaton való munkálkodás. | |||
*** ''Páros programozással tanuló labor'': mindig más párral kell dolgozni, hagyományos laborfeladatok vagy házi feladatok közös megbeszélése. | |||
*** ''Házi feladat leadási labor'' | |||
*A '''házi feladatok''' darabonként 30-30 pontot érnek. A házi feladatok idő előtt való leadása pluszpontot ér. | |||
==== 2020. őszén (A "hibrid" oktatás alatt) hozott változtatások ==== | |||
* A '''labor'''ok jelentősen megváltoztak. Összesen 10 darab labor, mindegyik pontozva van 0-5 között és akkor számít részvételnek ha egy laboron min. 1 pontot elért valaki (70% részvétel követelmény, lehetnek fél pontok is). Moodle-ön tartozhat "online beugró" egy laborhoz, amit teljesíteni kell az érintett labor előtti vasárnap éjféléjig, különben mínusz pont jár érte. Laborokat mindenki egy külön github repository-ba csinálta és leadás egy pull request ahol a "laborvezető" meg van adva reviewer-nek. | |||
* Csak a '''csapatmunka (3 fős) házi feladat''' van és maximum 25 pontot lehet rá kapni. | |||
* Van jelenléti '''ZH''', ami 25 pontos. | |||
** Engedélyezve volt az online források használata (labvez szavai: "StackOverflow-t nyugodtan kérdezzük, de a padtársakat légyszi ne"). | |||
** Teljesítése nem követelmény, de póthéten lehet pótolni. | |||
* Tehát a pontszámítás a következő: Laborok(max. 50) + házi(max. 25) + zh(max. 25) = max. 100 pont | |||
==== 2021. őszén hozott változtatások ==== | |||
=== | * '''Nincsen NHF'''. | ||
* '''Két jelenléti ZH van''' és mindegyik min. 40%-os teljesítése kötelező. | |||
* Laborokra nem kötelező jelenlétiben bejárni, otthon is elvégezhetőek. | |||
* Ha mégis jelenléti laborra szeretnél menni, azt Moodle-n előre jelezni kell. | |||
* Teams-en van egy egységes felület a laborral kapcsolatos kérdéseknek. Válaszolhat rájuk az előadó, a laborvezető, de hallgató is. | |||
* A félév végén lehet szavazni azon hallgató társaidra, akik a legtöbbet segítettek neked vagy másoknak a kérdéseitek megválaszolásával. 50 pontot osztanak szét azon 5 ember között, akikre a legtöbb szavazat jön. | |||
* '''Pontszámítás: Laborok(max.50)+2 ZH(max.50)+bónuszpontok''' | |||
==== Pótlási lehetőségek: ==== | |||
* A '''házi feladatok''' előre kihirdetett időpontokban, késedelmesen is le lehet adni. | |||
* A '''laborok''' nem pótolhatóak. A házi feladat korábbi időpontban való leadás további pluszpontokkal járhat. | |||
* A '''zh''' 1szer pótolható, egy előre kihirdetett időponton póthéten. | |||
=== Félévvégi jegy === | === Félévvégi jegy === | ||
*Az évvégi jegy a házi feladatokra és laborokra kapott pontszámok összege alapján adódik össze. A tárgy teljesítéséhez legalább 40 pontot kell elérni. | |||
*Ponthatárok: | |||
:{| class="wikitable" style="text-align: center; width: 120px; height: 40px;" | |||
!Pont!!Jegy | |||
|- | |||
|0 - 40|| 1 | |||
|- | |||
|40 - 54|| 2 | |||
|- | |||
|55 - 69|| 3 | |||
|- | |||
|70 - 84|| 4 | |||
|- | |||
|85 - 100|| 5 | |||
|} | |||
== Tematika == | == Tematika == | ||
=== Előadás === | |||
* 1. hét: [[Media:evip_01 EA_20230907_Bevezeto.pdf | bevezetés]], [[Media:evip_01 EA_20230907_Culture Deck.pdf | culture deck]] | |||
* 2. hét: Git-kvíz; Visual Studio; [https://github.com/eviplabs/peldak2023/blob/main/ElsoSolution/ElsoKonzolosApp/Program.cs C#-bevezetés]: args, Console.WriteLine(), static, ref, nullable type, getter-setter | |||
* [https://github.com/eviplabs/peldak2023/tree/main/ElsoSolution/ElsoKonzolosApp 3. hét]: compiler és interpreter, bytecode, JVM, JIT, CIL; ref, [https://github.com/eviplabs/peldak2023/blob/main/ElsoSolution/ElsoKonzolosApp/Ember.cs getter-setter], virtual, [https://github.com/eviplabs/peldak2023/blob/main/ElsoSolution/ElsoKonzolosApp/Ember.cs override], [https://github.com/eviplabs/peldak2023/blob/main/ElsoSolution/ElsoKonzolosApp/IEmberPrinter.cs interface], factory method, [https://github.com/eviplabs/peldak2023/blob/main/ElsoSolution/ElsoKonzolosApp/DesignPrinter.cs base], [https://github.com/eviplabs/peldak2023/blob/main/ElsoSolution/ElsoKonzolosApp/Program.cs $-string, StringBuilder, Exception, TryParse, out] | |||
* 4. hét: [https://github.com/eviplabs/peldak2023/tree/main/RegexProbak regex], [https://github.com/eviplabs/peldak2023/tree/main/Serialization serialization] | |||
* [[Media:evip_eloadas_4.pdf | 05 EA - Linq]] | |||
* [[Media:evip_eloadas_5.pdf | 06 EA - UWP]] | |||
* [[Media:evip_eloadas_6.pdf | 07 EA - Esemenyek INPC]] | |||
* [[Media:evip_eloadas_7.pdf | 08 EA - Adatkotes]] | |||
* [[Media:evip_eloadas_8.pdf | 09 EA - MVVM ICommand]] | |||
* [[Media:evip_eloadas_9a.pdf | 10 EA 1 - Rajzolas]] | |||
* [[Media:evip_eloadas_9b.pdf | 10 EA 2 - UI elemek]] | |||
* [[Media:evip_eloadas_10.pdf | 11 EA - Tobbszalusag]] | |||
* [[Media:evip_eloadas_11.pdf | 12 EA - Attributum Reflection]] | |||
* [[Media:evip_eloadas_12.pdf | 13 EA - Profiling]] | |||
=== Labor === | |||
* 1. hét: ''elmaradt'' | |||
* 2. hét: ''szünet'' | |||
* [https://github.com/eviplabs/start/tree/master/LAB01_KonzolosHelloWorld 3. hét]: Git(hub) és Visual Studio setup (debug); class és unit test prímszámok összegének kiszámítására | |||
* [https://github.com/eviplabs/start/tree/master/LAB02_TurkmiteLab 4. hét]: TurkMite: teljes refaktorálás, OpenCvSharp, xUnit | |||
== Segédanyagok == | == Segédanyagok == | ||
* A tantárgyi oldalon rengeteg segédanyaggal találkozhattok, akár pptx, akár videó formájában, melyeket érdemes átnézni a laborok előtt. | |||
* [[Media:Git_Temalab_MIA_2019.pdf | GitHub használat alapok]] | |||
* [[Media:evip_csoop_bevezeto.pdf | C# OOP bevezető]] | |||
* [https://docs.microsoft.com/hu-hu/dotnet/fundamentals/ .NET dokumentáció] | |||
== ZH == | |||
* 2022 ősz | |||
** [[Media:EvipZh1_2022.pdf | Zh1]] | |||
** [[Media:EvipZh2_2022.pdf | Zh2]] | |||
* 2021 ősz | |||
** [[Media:Evip_zh1_sablon_2021.pdf | Zh1 minta]] | |||
** [[Media:Evip_zh2_sablon_2021.pdf | Zh2 minta]] | |||
* 2020 ősz | |||
** [[Media:evip_zh_Acsoport.pdf | Zh]] | |||
*** (B csoport nagyon kevésben különbözött: a kimenetet minimálisan máshogy kellet csinálni és a ''PrimeGenerator'' helyett ''FibonacciGenerator''-t kellet csinálni) | |||
** [[Media:evip_potzh.pdf | Pót Zh]] | |||
** [[Media:evip_zh_sablon.pdf | Zh minta]] | |||
== Házi feladat == | |||
* A félév során két házi feladat lesz | |||
** C# nyelvben | |||
** WPF-es GUI fejlesztés | |||
* A feladatok megoldása során mindenki személyre szóló github repositoryba dolgozik (GitHub classroom), melyben bizonyos feladatok előre elkészített unit tesztek formájában adottak. | |||
* Az első házi feladat további specialitása, hogy két leadási határideje van és az első után előre ismeretlen módon megváltozik a feladat specifikációja. Ennek célja, hogy rávilágítson az áttekinthető fejlesztés, objektumorientált dekompozíció és beszédes, karbantartható forráskód fontosságára. | |||
* 2020.-ban a csapatmunka házi feladat max 25 pontos lehetett és egy videót is kellet hozzá készíteni, ahol a csapat bemutatja, hogy milyen feladatokat teljesített. | |||
** [[Media:evip_nhf_kiadas.pdf | Kiadás]] | |||
** [[Media:evip_nhf_leadas.pdf | Leadás]] | |||
== | == Tippek == | ||
* Érdemes hétről hétre tanulni, készülni a laborokra. Nagyban megkönnyíti a tárgy elvégzését. | |||
{{Lábléc_-_Üzemmérnök-informatikus_alapszak}} | |||