FÉLÉVES FELADAT KÖVETELMÉNYEK

Hasonló dokumentumok
Toolok a programozás féléves feladatokhoz

Tortoise SVN használata. Képes útmutató

Iványi László ARM programozás. Szabó Béla 1. Óra Verziókövetés

A FEJLESZTÉS KIHÍVÁSAI

Source control systems. Horváth Ernő, Dr. Pozna Claudiu Radu

A CAPICOM ActiveX komponens telepítésének és használatának leírása Windows 7 operációs rendszer és Internet Explorer 9 verziójú böngésző esetén

A FileZilla program beállítása az első belépés alkalmával

1. Origin telepítése. A telepítő első képernyőjén kattintson a Next gombra:

OOP és UML Áttekintés

1 Rendszerkövetelmények

Dropbox - online fájltárolás és megosztás

FÉLÉVES FELADAT KÖVETELMÉNYEK

Image Processor BarCode Service. Felhasználói és üzemeltetői kézikönyv

Szoftver technológia. Verziókövető rendszerek. Cserép Máté ELTE Informatikai Kar 2019.

5. A záróvizsga-jegyzőkönyv készítése

Mi is a git? Csapatban dolgozni Git pro eszközök. Git bevezető. Szabó Adrienn Adatbányászat és Webes Keresés Kutatócsoport

KIRA. KIRA rendszer. Telepítési útmutató v1

Felhasználói leírás a DimNAV Server segédprogramhoz ( )

Bevezetés a QGIS program használatába Összeálította dr. Siki Zoltán

Apache OpenOffice telepítési útmutató

Tanúsítvány feltöltése Micardo kártyára

A fordítónak mindenhez lehet

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver

Útmutató az Elektronikus fizetési meghagyás használatához

Sú gó az ASIR/PA IR Públikús felú lethez

Térinformatikai és távérzékelési alkalmazások fejlesztése. A szoftverfejlesztés technikai támogatása

Mikroszámla. Interneten működő számlázóprogram. Kézikönyv

Útmutató az OKM 2007 FIT-jelentés telepítéséhez

Tanúsítvány feltöltése Gemalto TPC IM CC és ID Classic 340 típusú kártyára

Tanúsítványkérelem készítése, tanúsítvány telepítése Microsoft Internet Information szerveren

Elektronikusan hitelesített PDF dokumentumok ellenőrzése

Eseményvezérelt és objektumorientált programozás

A CAPICOM ActiveX komponens telepítésének és használatának leírása Windows7 operációs rendszer és Internet Explorer 8-es verziójú böngésző esetén

RapidMiner telepítés i. RapidMiner telepítés

ÉVI ADATSZOLGÁLTATÁSOK JAVÍTÁSA. Készítette: Tóth Péter szeptember 26.

WCF, Entity Framework, ASP.NET, WPF 1. WCF service-t (adatbázissal Entity Framework) 2. ASP.NET kliens 3. WPF kliens

Telepítési útmutató a SMART Notebook 10.6 oktatói szoftverhez

A program telepítése. A letöltés lépései: 1. nyissa meg a WEB-oldalt, majd válassza a Letöltés menüpontot a felső sorban:

A Telepítés hajlékonylemezről panelen kattintson az OK gombra.

A MOKKA hitelesítő szoftver telepítése és használata

A Zotero hivatkozáskezelő program bemutatása. Mátyás Melinda

A WorldShip frissítése önálló vagy munkacsoporthoz tartozó munkaállomásra

Programozási technológia

Vihar 2.0 rendszer Felhasználói kézikönyv

Git verziókövető rendszer alkalmazása a projektek nyomon követésére

Tanúsítvány és hozzá tartozó kulcsok feltöltése Gemalto TPC IM CC és ID Classic 340 kártyára

VBA makrók aláírása Office XP/2002/2003 esetén

Navigációs GPS adatok kezelése QGIS programmal (1.4 verzió) Összeállította dr. Siki Zoltán

BaBér bérügyviteli rendszer telepítési segédlete év

PTE-PROXY VPN használata, könyvtári adatbázisok elérhetősége távolról

Segédlet az Eger Megyei Jogú Város Polgármesteri Hivatal által kiadott, EGERPH_1431-es építményadó bevallásához használt elektronikus nyomtatványhoz.

évi adatszolgáltatások javítása

Tanúsítvány feltöltése Oberthur kártyára és Oberthur SIM termékre. Windows 7, Windows 8, Windows 8.1 és Windows 10-es operációs rendszeren 1(9)

Internetkonfigurációs követelmények. A számítógép konfigurálása. Beállítások Windows XP alatt

Duál Reklám weboldal Adminisztrátor kézikönyv

FortiClient VPN-IPSec kliens konfigurációs segédlet

1. DVNAV letöltése és telepítése

Azonosí tá srá Visszávezetett Dokumentumhitelesí te s (AVDH) á Perkápu vonátkozá sá bán

TÁRGYTEMATIKA RÖGZÍTÉSE A NEPTUN RENDSZERBEN

Eseményvezérelt alkalmazások

K&H token tanúsítvány megújítás

A NetBeans IDE Ubuntu Linux operációs rendszeren

Szoftver technológia. Projektmenedzsment eszközök. Cserép Máté ELTE Informatikai Kar 2019.

ÚTMUTATÓ az RVTV portálon történő ciklus beállításhoz

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

Felhasználói kézikönyv. Verzió: 1.01

Tájékoztató a szakdolgozat elektronikus feltöltéséről

Elektronikus aláírás ellenőrzése PDF formátumú e-számlán

Közösség, projektek, IDE

Tanúsítvány feltöltése Oberthur kártyára és Oberthur SIM termékre

Tanúsítvány feltöltése Gemalto.NET kártyára és Gemalto SIM termékre

FELHASZNÁLÓI KÉZIKÖNYV

italc felhasználói dokumentáció

VBA makrók aláírása Office 2007 esetén

SSL VPN KAPCSOLAT TELEPÍTÉSI ÚTMUTATÓ

Segédlet kriptográfiai szolgáltatást beállító szoftverhez (CSPChanger)

Telepítési útmutató a SMART Response 2009 szoftverhez

Conversific integráció Átlátható webelemzés ShopRenter tulajdonosoknak

Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network

Programozás 3 féléves feladat doksi

G Data MobileSecurity 2 telepíte si u tmutato

Easton420. Automata Telefon hangrögzítő. V 6.0 Telepítése Windows XP rendszerre

Szakdolgozat / diplomamunka benyújtásának folyamata (alapképzés, mesterképzés 2018/19/1)

E-Freight beállítási segédlet

PDF. Tartalomjegyzék 1/21

A webáruház kezdőlapján háromféle diavetítés beállítására van lehetőség:

Széchenyi István Egyetem

MAGYAR POSTA ZRT. ebérjegyzék. Felhasználói kézikönyv

A Google űrlap (form) használata

Telepítési útmutató a SMART Notebook 10 SP1 szoftverhez

Megújított tanúsítvány cseréje a Windows tanúsítványtárban

Segédlet az Eger Megyei Jogú Város Polgármesteri Hivatal által kiadott, PHEGER_1231-es építményadó bevallásához használt elektronikus nyomtatványhoz.

Szoftvertechnolo gia 7. gyakorlat

MEH-EIA felhasználói dokumentáció gyakran ismételt kérdések

Selling Platform Telepítési útmutató Gyakori hibák és megoldások

Hiteles elektronikus postafiók Perkapu

POSZEIDON dokumentáció (1.2)

Telenor Webiroda. Kezdő lépések

Bazaar ismertető. Timár András

ÜGYFÉL OLDALI BEÁLLÍTÁSOK KÉZIKÖNYVE

Átírás:

FÉLÉVES FELADAT KÖVETELMÉNYEK A Programozás III. tárgyon belül elvárás egy egyszerű játékprogram elkészítése, amely - Egyszerű felhasználói interakcióval (egérrel/billentyűzettel vezérelhető logikai/ügyességi játék. - Teljesíti a rétegek szétválasztásának alapelvét (üzleti logika leválasztása, valamint a WPF kód MVVM elvű szétválasztása. - Megjelenítés Shape-ek / DrawingImage-ek / FrameworkElement segítségével. - Játékfejlesztő framework (pl. XNA, Unity nem használható! - Megjelenítési framework (pl. SDL, DirectX, OpenGL, Vulcan használható, de az emiatt a megjelenítésre fordítandó és a keretrendszerrel megspórolt időt a játék logikájára kell ráfordítani! Határidők: - A 2 oldalas specifikáció leadásának határideje: október 2. éjfél (szabályok, felhasználói interakciók lehetőségei, 1 kezdetleges képernyőterv, bitbucket projekt címe - Leadási határidő (program, valamint a hozzá tartozó dokumentációk: november 25. éjfél - Pótleadási határidő: december 1. éjfél - Védés: gyakorlatvezető döntése alapján vagy a második zárthelyi alatt, vagy a pótzárthelyi alatt, vagy külön időpontban - Verseny: december 20. 10:00 A jól sikerült munkák bemutathatóak a félév végén megrendezett vizuális alkalmazásfejlesztési versenyen, ahol a díjazottak az elértnél egy vagy két osztályzattal jobb érdemjegyet, vagy akár a szakmai szigorlat beugrójának szoftveres része alóli felmentést is kaphatnak. Elvárások a feladat beadásakor: - bitbucket.org -on hostolt GIT projekt, teljes és újrafordítható forráskóddal o A repository neve a hallgató neptun kódját tartalmazza: OENIK_Prog3_2016osz_NEPTUNKÓD o A projektben látszódnia kell a folyamatos fejlesztésnek és haladásnak; ne a leadási határidő előtti 1-2 commitból álljon a verziókövetés! o Bár a verziókövetés tipikusan CSAK szöveges állományokra vonatkozik (képeket nem verziókövetünk!, most a repository-nak mindent tartalmaznia kell, ami a játék működéséhez szükséges - StyleCop szerint valid forráskód - CHM vagy HTML vagy PDF formátumú fejlesztői dokumentáció - Felhasználói dokumentáció (PDF formátumban: címoldal + minimum 3 oldal: játékszabály, irányítási lehetőségek, képernyőképek (minimum 1, és maximum N-3 darab, ahol N=oldalszám 2016-09-12 1. oldal

GIT QUICKSTART A Git egy elosztott verziókövető rendszer, amelynek segítségével lehetőségünk van a forráskódunk központi kezelésére; valamint a változások megbízható követésére (annak nyilvántartására, hogy melyik file mikor, hogyan, és ki által módosult. Ezt olyan módon éri el hatékonyan a rendszer, hogy nem minden file minden állapotát menti el, csak az egyes változatok közötti különbséget. A Git elosztott működése abban nyilvánul meg, hogy a klasszikus verziókövetőkkel szemben (CVS, SVN nem csak egy központi tárban tárolódik a forráskód file-jainak módosítási története, hanem egy helyi tárban is. Ennek megfelelően, Git esetén külön kell választani a helyi tárat (local repository és a távoli tárat (remote repository. Harmadik tárként a helyi éppen aktuális változatot (working copy szokás említeni. Az alapvető Git műveleteket az alábbi táblázat foglalja össze: ADD A woking copy ból file hozzáadása azon file-ok közé, amiken a változások követése aktív / módosult file-ok kijelölése a következő commithoz COMMIT A working copy-ban lévő módosulások (tartalmi módosítás, ADD, file törlése eltárolása a local repository-ban PUSH A local repository commitjainak feltöltése a remote repository-ba FETCH A remote repository commitjainak letöltése a local repository-ba, a working copy módosítása nélkül MERGE Ágak egyesítése (pl. a local repository-ban FETCH után egyből két ág van: a saját fejlesztési ág, és a remote repository-ból letöltött ág. Amennyiben az ágak között ellentmondás van (ugyanazon file különböző módosítása, akkor ezt kézzel javítani kell. PULL Emellett, a BRANCH / CHECKOUT utasításokkal lehet új ágat létrehozni, mindegyik ág a kód egy változata, illetve sokszor minden új feature egy-egy új ágat jelent (ld. "A successful git branching model", nvie.com; EZ NEM TANANYAG FETCH + MERGE Egy tipikus fejlesztési folyamat a következőképp néz ki: 1. A fejlesztő a nap elején először is egy PULL utasítással letölti a remote repository korábbi módosításait a local repository-ba 2. Az esetleges conflictokat kézzel megoldja 3. Elkezd dolgozni egy új feature-ön / elkezd kijavítani egy hibát (előbbi esetben tipikusan új branch létrehozásával 4. Egy-egy munkafolyamat végén COMMIT utasítással rögzíti a módosításokat (ez akár file-onként is lehet, de akár 10 file-t is jelenthet, a one workitem definíciójától függően. Alapvetően a cél sok kis committal dolgozni, és beszédes commit üzenetekkel. Az az alapelv, hogy minden commit csak egy dolgot javít / ad 2016-09-12 2. oldal

hozzá a kódhoz: If you have to put the word "and" or "also" in your summary, you need to split it up, ez az örök aranyszabály. 5. A nap végén/az adott feature, illetve bugfix befejezésekor ismét PULL, és a conflictok kézzel történő megoldása 6. PUSH, és jöhet a következő ticket/munkafolyamat/bugfix/feature A git használata Visual Studio alatt 1. A javasolt GIT szerveroldali rendszer, amit a félév során használni fogunk: bitbucket.org. Céljainknak a github.com is jó lenne, de ott minden projekt publikus, csak a fizetős felületen lehet privát projektet létrehozni. Emellett bármilyen más privát Gitlab telepítés is jó lenne, de az egyetemi projekthez a bitbucket weboldalt kell használni. 2. Bitbucket regisztráció, aktiváció, bejelentkezés, majd ezután jöhet a repository létrehozása: https://bitbucket.org/repo/create. Issue tracking létrehozása javasolt, de nem kötelező. 2016-09-12 3. oldal

3. A létrehozás után a projekt Repository setup oldalára jutunk, ahol az I m starting from scratch linket kell kiválasztani. Itt látszik a repository GIT címe is: https://anoftc@bitbucket.org/anoftc/nik_test.git 4. Visual Studio-ban Tools/Options/Source control/plug-in selection: itt a GIT legyen kiválasztva. VS 2013+ esetén ez már alapértelmezetten telepített. VS2012 esetén: https://visualstudiogallery.msdn.microsoft.com/abafc7d6-dcaa-40f4-8a5ed6724bdb980c 5. Solution mentésekor (vagy már létrehozáskor be kell jelölni az Add to source control checkboxot. Ebben a dokumentumban végig ebben a WPF alkalmazáson belül fogunk dolgozni. 2016-09-12 4. oldal

6. View/Team Explorer ablakon belül válasszuk ki a Settings menüelemet: 7. Ezután Git settings. Itt a GIT commitokban lévő adatokat adjuk meg. Javasolt (de nem kötelező, hogy az email cím a Bitbucket regisztrációval azonos email cím X legyen. 8. Ezután <Update> gomb, majd Changes, itt tudjuk a változásokat rögzíteni a repository-ban: 9. A módosítási üzenet (kötelező megadása után mehet a <Commit> gomb, ez a helyi repository-ban tárolja a módosításokat (COMMIT: 2016-09-12 5. oldal

10. A <Commit> gomb melletti kis nyíl további 2 lehetőséget rejt magában: X Commit = Helyi repository-ban való tárolás Commit and Push = Commit után a távoli repository-ban való tárolás (PUSH Commit and Sync = Commit után a távoli repository módosításainak lekérése és egyesítése a helyi repository-val (PULL, majd ezután egy PUSH Ha csak a <Commit> gombot nyomjuk meg, akkor a VS figyelmeztet, hogy ez csak a helyi repository-t változtatta (VS2015 esetén ez az első commit lépés nem feltétlenül szükséges, ha a VS automatikusan rögzítette az első COMMIT-ot: 11. Sync esetén az alábbi ablak jelenik meg, ahol meg kell adni a Bitbucket oldalán látható repository címet: 2016-09-12 6. oldal

12. <Publish> után bekéri a Bitbucket usernevünket és jelszavunkat. Ez után a Visual Studioban láthatjuk a sikeres PUSH-t, és a Bitbucket oldalon láthatjuk, hogy a repository oldala megváltozott: 2016-09-12 7. oldal

13. Változások ezután két helyről jöhetnek: a saját VS verziónkból vagy kívülről (más fejlesztőtől / akár a Bitbucket webfelületéről is. Külső módosítás esetén a saját helyi repository-t frissíteni kell (PULL mielőtt feltöltenénk a módosításokat (PUSH; és amennyiben a külső módosítás és a saját módosítás ugyanazt a file-t érinti (CONFLICT, akkor ezt (többnyire kézzel, nagy odafigyeléssel javítani kell. 14. Külső módosítást szimulálunk: módosítsuk a repository-t a Bitbucket weboldalon! Adjunk hozzá egy README file-t ( Create a README, ahogy azt a weboldal jelzi is nekünk, hogy ennek jelenléte javasolt a repository-ban. A commit üzenet default lesz: 2016-09-12 8. oldal

15. Ezután a Visual Studio ban lehetőségünk van a korábban említett SYNC vagy PULL lehetőségek mellett a FETCH műveletet is kiválasztani: a FETCH nem változtatja a helyi working copy-t, csak a remote repository állapotát tölti le onnan. Ezt elég ritkán használjuk, a SYNC a legjobb választás az esetek nagy részében (persze CONFLICT esetén a SYNC helyett jobb a FETCH, ez után meg tudjuk nézni a hiba okát, és a kézzel javítás után jöhet a SYNC. 16. Saját módosítást szimulálunk: adjunk hozzá az ablakhoz egy gombot, és ehhez egy Click eseménykezelő metódust. A Solution Explorer kicsi ikonokkal jelzi a file-ok állapotát (https://msdn.microsoft.com/en-us/library/ms181372%28v=vs.90%29.aspx 2016-09-12 9. oldal

17. Ezután a Team Explorer ablak Changes menüpontjában mehet a COMMIT 18. Újabb módosítás (ezúttal csak az eseménykezelőben, újabb COMMIT: 2016-09-12 10. oldal

19. Ezután jöhet egy SYNC, és a webfelületen is látjuk a COMMIT history-t: 2016-09-12 11. oldal

2016-09-12 12. oldal

20. A weboldal bal menüjében a Settings menüre kattintva, majd az Access Management almenüponttal lehet más felhasználóknak jogosultságot adni. Elvárt a saját repository-hoz ADMIN jogosultságot adni az oktató felé Ez a dokumentum csak az alap GIT műveleteket mutatja be. Az igazán jó verziókezelő rendszerek (GIT, TFS nagy erőssége abban rejlik, hogy képesek több kód ágat (BRANCH-et, valamint az ágak szétválását és egyesítését (FORK, MERGE hatékonyan kezelni. A hallgatóktól az ágak használata nem elvárt, viszont egy céges környezetben csak a tapasztalt vezető programozóknak van a fő (master ágra vonatkozóan MERGE joguk, amúgy mindenki a saját fejlesztői ágán dolgozik. 2016-09-12 13. oldal

Egyéb olvasnivalók: https://hu.wikipedia.org/wiki/verzi%c3%b3kezel%c3%a9s https://hu.wikipedia.org/wiki/git http://blog.osteele.com/posts/2008/05/my-git-workflow/ http://nvie.com/posts/a-successful-git-branching-model/ https://tanarurkerem.hu/git-suli/ SourceTree (GIT GUI Tortoise GIT (GIT GUI https://confluence.atlassian.com/bitbucketserver/basic-git-commands- 776639767.html (basic GIT commands: Team Explorer / Changes / Actions / Open Command Prompt 2016-09-12 14. oldal

STYLECOP QUICKSTART A StyleCop egy VS plug-in, amelynek segítségével lehetőségünk van arra, hogy a forráskódunkban lévő stilisztikai / dokumentációs hibákat megtaláljuk. Telepítése: VS Gallery-n keresztül (Tools / Extensions and Updates vagy inkább a hivatalos oldalon keresztül: https://stylecop.codeplex.com/ (a VS gallery csomagot más tartja karban, és mindig néhány verzióval a hivatalos verzió mögött van. A telepítő next-next-next stílusú, könnyen telepíthető. C# projekt megnyitása utána a projektre jobb egérgombbal kattintva meg kell jelennie egy Run StyleCop és egy Run StyleCop (Rescan All menüpontnak, ezek futtatják a projekten a StyleCop analízist. Javasolt egyből egy Run Stylecop (Rescan All majd StyleCop settings t választanunk, majd az <OK> gombra kattintva így egyből elmenteni a beállítás file-t. Ezek hatására egy StyleCop.Cache és egy Settings.StyleCop file jön létre a projekt könyvtárán belül. A StyleCop hibákat fordítási hibaként jeleníti meg a rendszer, minden lépés után a Run StyleCop (Rescan All lépést hajtsuk végre; látni fogjuk, ahogy folyamatosan csökken a hibák száma. 1. Az assemblyinfo.cs állományban talált hibák minket nem érdekelnek. A file elejére szúrjunk be egy sort: // <auto-generated/> 2. Az app.xaml.cs állományban lévő hibák a következőek: SA1200: using tagok javasolt helye: névteren belül SA1650: helyesírási hiba ( xaml SA1633: file header hiányzik (Mindegyik hibáról a StyleCop oldalán részletes leírást találunk, például http://stylecop.soyuz5.com/sa1200.html 3. Az első két hibával lehet vitatkozni, hogy szükségesek e. Kapcsoljuk ki őket: StyleCop Settings / Find szövegdobozba írva tudunk keresni: 2016-09-12 15. oldal

4. <OK>, majd a file headert is megírhatjuk (opcionális, akár ki is kapcsolhatjuk a szabályt: //----------------------------------------------------------------------- // <copyright file="app.xaml.cs" company="oe-nik"> // No copyright (public domain // </copyright> //----------------------------------------------------------------------- 5. <Rescan All>, már csak a MainWindow.xaml.cs file-ban van hiba SA1633: File header SA1600: Dokumentáció hiánya (FONTOS! Minden publikus/internal láthatóságú osztály, metódus, tulajdonság előtt KÖTELEZŐ a dokumentáció: a metódus fölötti sorba három / jelet írva automatikusan legenerálja a Visual Studio a dokumentációs kommenteket SA1126: minden metódusnak legyen prefixe (PéldánySzintűMetódus( helyett this.példányszintűmetódus( Esetleg kikapcsolható SA1005: Kommentjel után ( // javasolt a szóköz SA1642: kötelező konstruktor komment bevezető szöveg Esetleg kikapcsolható 2016-09-12 16. oldal

6. Ezeket javítsuk ki: //----------------------------------------------------------------------- // <copyright file="mainwindow.xaml.cs" company="oe-nik"> // No copyright (public domain // </copyright> //----------------------------------------------------------------------- 7. Rescan All után: ------ StyleCop completed ------ ========== Violation Count: 0 ========== 8. Team Explorer / Changes menüpont Adjuk hozzá a local repository-hoz a Settings.StyleCop állományt, ezután COMMIT, majd pedig SYNC. A Bitbucket oldalon is látszik a módosítás. 2016-09-12 17. oldal

2016-09-12 18. oldal

DOXYGEN/SANDCASTLE QUICKSTART A fejlesztői dokumentáció részét képezi a kézzel írt dokumentáción/diagramokon túl a jól dokumentált forráskódból automatikusan generált dokumentumok. Erre az egyik eszköz a DoxyGen (http://www.stack.nl/~dimitri/doxygen/download.html. 1. A DoxyGen letöltése és kitömörítése után igazából a doxygen.exe, libclang.dll, illetve a HTML Help Workshop telepítése szükséges. 2. A DoxyGen könyvtárban hozzunk létre egy wpf1.config file-t. Az összes konfigurációs beállítás (van jó sok: https://www.stack.nl/~dimitri/doxygen/manual/config.html nem szükséges nekünk, csak az alábbiak: #Projekt neve PROJECT_NAME = "SZABOZS WPF1" #Kimeneti könyvtár OUTPUT_DIRECTORY = DOCS/ #Minden file használata EXTRACT_ALL = YES #Bemeneti könyvtár INPUT = c:\szabozs\wpfapplication1 #Számunkra érdekes file-ok FILE_PATTERNS = *.cs #Rekurzív? RECURSIVE = YES #CHM formátumot is akarunk? GENERATE_HTMLHELP = YES #CHM filenév CHM_FILE = wpf1.chm #HHC (HTML Help Workshop Compiler helye HHC_LOCATION = "c:\utils\html Help Workshop\hhc.exe" #Fa struktúra GENERATE_TREEVIEW = YES Értelemszerűen a kívánt sorokat módosítsuk igény szerint. Az egyik hiányzó feature az a PDF generálás lehet, ehhez valamilyen TeX fordító és PDFLATEX állomány kell (pl. http://miktex.org/download, 188MB a portable edition 3. Hozzunk létre egy doxygen.bat állományt, benne az alábbi két sorral: RD /S /Q DOCS doxygen.exe wpf1.config 4. Ez után a doxygen.bat állomány futtatásának hatására elkészül a HTML és a CHM formátumú dokumentáció. Figyeljünk rá, hogy a dokumentáció csak a PUBLIKUS tagokat tartalmazza, ezért a BigButton_Click eseménykezelőt publikussá tettük a screenshotok elkészítéséhez 2016-09-12 19. oldal

2016-09-12 20. oldal

A DoxyGen előnye, hogy open source, és szinte minden programozási nyelvet támogat. Sokkal jobban egyénre szabható, ugyanakkor a száznál több konfigurációs beállítás átlátása bonyolult, és kifejezetten nehéz lehet mindent komponenst megfelelően összeilleszteni. Emellett, nem tud beépülni a Visual Studio-ba, ami az alternatíva legnagyobb előnye. Egyik alternatívája a korábban (2010 júniusáig Microsoft fejlesztésű, azóta függetlenné vált Sandcastle Help File Builder. Csak felügyelt nyelveket támogat, gyakorlatilag reflexióval szedi ki a szükséges tagokat (nem a forráskódot elemzi, mint a DoxyGen. A projekt jelenleg a https://github.com/ewsoftware/shfb oldalról tölthető le, valamint NuGet csomagként is (ez utóbbi nem javasolt, kb 1gb méretű extra könyvtárat rak bele a projekt packages könyvtárába, és sokkal nehezebb működésre bírni. Mivel a Sandcastle gyakorlatilag a solution-ben egy extra projektként fog létezni, így könnyen integrálható meglévő solution-be, és a meglévő verziókezelő módszerekkel is jól együtt tud működni. 1. https://github.com/ewsoftware/shfb/releases oldalról installer letöltése. 2. Next-next-next stílusú telepítés, lehetőségünk van itt is letölteni a HTML Help Compiler-t, illetve külön kell a Sandcastle Help File Builder -t; a Visual Studio Extension-t; valamint a Sandcastle MAML extrákat (MAML = Microsoft Assistance Markup Language telepíteni. 3. A 2015.7.25.0 verzió óta csak a VS2013, VS2015 verziókat támogat a Visual Studio Extension! VS2010 és VS2012 verziókhoz a 2015.5.2.0 szükséges. 4. Ezután a Visual Studio solution-ünkben kell új Sandcastle Help File Builder projektet hozzáadni 2016-09-12 21. oldal

5. Az új projektben a Documentation Sources menüelemre jobb katt, majd Add documentation source, itt hozzá tudunk adni meglévő CSPROJ vagy EXE/DLL állományokat. Adjuk hozzá a WPF alkalmazásunk CSPROJ állományát Ϸ 6. Engedélyezni kell a WPF alkalmazásunknál a külön XML dokumentációs file generálását (a project properties ablakon belül: 2016-09-12 22. oldal

7. A ContentLayout.content állomány szerkesztésével tudjuk befolyásolni a CHM állomány egyes részeit; a bal menüben egyes elemekre történő dupla kattintással a megfelelő AML állományt (CHM oldalt lehet szerkeszteni. 8. Ez után a Documentation1 projektre jobb kattintás, majd Build. Egy kis várakozás után az alábbi sorokkal kell záródnia az Output ablaknak: Completed The help file is located at: C:\szabozs\WpfApplication1\Documentation1\Help\Documentation1.chm Build details can be found in C:\szabozs\WpfApplication1\Documentation1\Help\LastBuild.log ========== Build: 1 succeeded or up-to-date, 0 failed, 0 skipped ========== 9. Elkészült a CHM állomány: 趰 ӻ 2016-09-12 23. oldal