Jankó András ([email protected])
8 óra előadás+gyakorlat 4 héten (szept. 9, szept. 23, nov. 18, dec. 2)
A négy pénteki workshop célja az F# nyelv gyakorlati elsajátítása. Főbb témakörök, amiket érinteni fogunk:
- Funkcionális programozás alapjai: magasabb rendű függvények, lambda kifejezések, immutabilitás, algebrai adattípusok, generikusság, „monádok”
- Imperatív és objektum-orientált programozás F#-ban
- Iteratív fejlesztés és tesztelés az interaktív mód (REPL) használatával
- .NET keretrendszer alapjai, és igény szerinti részletek bemutatása
- Projektek felépítése
- Build scriptek
- Tervezés típusokkal
- Aszinkron, reaktív, párhuzamos és elosztott programozás
- Type provider-ek, külső adatok típusozott elérése
- Webfejlesztés a WebSharper keretrendszer és fordító használatával
- C# interoperabilitás
- Windows programozás alapjai, WPF alkalmazás írása MVVM alapon, F# nyelvű ViewModel osztályokkal A kurzus során több példaprogram kerül kifejlesztésre. A kurzuson bemutatásra kerülhetnek a következő technológiák:
- git, GitHub, Gitter
- F# open source projektek: WebSharper, FAKE, Paket, FSharp.Data
A kurzus során elsősorban a Visual Studio 2015 fejlesztői eszköz kerül használatra.
- Don Syme, Adam Granicz, Antonio Cisternino: Expert F# 4.0
- F# MSDN: https://docs.microsoft.com/en-us/dotnet/articles/fsharp/language-reference/index
A kurzushoz elvégzéséhez
- szakmai angol tudás kell.
- C# illetve egyéb funkcionális nyelv (pl. Haskell, Scala) ismerete előnyt jelent.
- .Net keretrendszer ismerete előnyt jelent.
Az óra látogatása kötelező.
Házi feladat (kétszer), 20-20 pont Házi feladatok határideje: szeptember 22. éjfél, október 9. éjfél
A kötelező program leadási határideje az utolsó alkalom, december 2. A hallgató egy általa választott programot készít el. A programot a harmadik alkalom (november 18) előtt kell meghatároznia, és az utolsó két napon és otthon kell készítenie. Maximum pontszám: 60
Ponthatárok
- 0-50 elégtelen
- 51-63 elégséges
- 64-75 közepes
- 76-89 jó
- 90-100 jeles
A kurzus során plusz pontokat lehet szerezni, amely nem számít bele a minimum pontba, de a végső érdemjegy kiszámításakor figyelembe lesz véve.