Seminář - projekt z .NET/C#
Týden 5 - Základy logické vrstvy, požadavky k odevzdání BL
Cvičení:
- Integrace představených návrhových vzorů
- Práce s persistentní vrstvou
- Mapování a práce s DTO
- Services
Projekt:
Požadavky na implementaci logické vrstvy:
- Implementace aplikační logiky (v plném rozsahu, rozhodně nestačí pouze CRUD pro jednotlivé entity), která odpovídá business procesům ve vaší aplikaci.
- Tuto aplikační logiku bude tvořit:
- fasády (jednotlivé metody v rámci fasád budou vracet výhradně Data Transfer Objekty)
- aplikační služby (dbejte na vhodné rozdělení funkcionality mezi jednotlivé služby)
- při implementaci funkcionality pracující s datovou vrstvou použijte, mimo jiné, následující návrhové vzory:
- UnitOfWork
- Repository
- QueryObject
- při implementaci doporučujeme použít knihovnu Riganti.Utils.Infrastructure.Core a Riganti.Utils.Infrastructure.EntityFramework jež byly představeny na cvičení (verze 1.0.2), pro pohodlnější ladění jsme pro vás předchystali následující archiv obsahující obě knihovny jako projekty: /auth/el/1433/podzim2016/PV226/um/65150151/65150160/RigantiInfrastructure.zip případně je lze přidat jako NuGet balíčky (pozor, nejnovější verze obsahuje drobné změny)
- Součástí vaší implementace logické vrstvy bude buď separátní Console projekt s kompletní sadou testů k veškeré implementované funkcionalitě, nebo projekt přímo s unit testy o stejném rozsahu.
- V této fázi nemusíte řešit přihlašování ani registraci v rámci vašich projektů.
Pokyny k odevzdání:
- Projekt s hotovou logickou vrstvou a testy odevzdejte nejpozději do 10.11 (včetně) do příslušné odevzdávárny.
- Pozdní odevzdání bude penalizováno 50% bodovou srážkou z celkového počtu získaných bodů, neodkládejte proto práci na projektu na poslední chvíli.
- S případnými dotazy ohledně vypracování projektů se prosím obracejte na vaše vedoucí s dostatečným předstihem, obsloužení pár hodin před deadlinem nemůžeme garantovat