Záznam z přednášky pro konferenci TechEd Praha 2025, kde jsem ukazoval novinky v C# 13 v .NET 9 (společně s hlavními novinkami z předchozí verze C# 12 v .NET 8 a ochutnávkou chystaných novinek v C# 14 v .net 10).
Category Archives: Announcements
FluentValidations vs Today [HAVIT Vzdělávací okénko, 5.6.2025]
Záznam ze Vzdělávacího miniokénka HAVIT z 5. června 2025, kde jsem ukazoval past FluentValidation validátorů, které se registrují do dependency-injection jako scoped-service a definice pravidel vznikají při volání konstruktoru (tj. v Blazor WebAssembly jednou).
OpenAPI + Scalar UI [Alexandr Hájek, Vzdělávací okénko, 22.5.2025]
Záznam ze Vzdělávacího (mini)okénka HAVIT z 22. května 2025. Alex ukazoval Scalar UI jako alternativu k Swagger UI.
Web Accessibility a EAA [Michal Melena, Vzdělávací okénko, 15.5.2025]
Záznam Vzdělávacího okénka HAVIT z 15. května 2025, kdy nám Michal Melena povídal o Accessibility a aktuálních povinnostech webových aplikací v této oblasti.
Seedy, UoW a Created v HAVIT stacku [Robert Haken, Vzdělávací okénko, 15.5.2025]
Technická změna v seedech, kde se nyní používá Unit of Work. Není potřeba explicitně nastavovat Created atribut, protože se o to postará systém. Taktéž je vhodné použít ExcludeUpdate, aby se Created hodnota nepřepisovala.
Tipy a triky pro mobilní vývoj na webu [Dominik Crha, Vzdělávací okénko, 10.4.2025]
Znáte v CSS funkci clamp()? To a další triky z vývoje webů pro mobilní zařízení nám ukázal Dominik. Záznam ze Vzdělávacího okénka HAVIT z 10. dubna 2025.
Blazor – past cyklu for s RenderFragment [Vzdělávací okénko, 24.4.2025]
Představení problému s cyklem for v Blazoru, kde se při použití s RenderFragment může objevit poslední hodnota řídící proměnné. Je potřeba řídící proměnnou vykopírovat do lokální proměnné nebo se jí vyhnout cyklem foreach.
Exception types – kdy který použít [Vzdělávací okénko, 10.4.2025]
NotImplementedException– výhradně během vývoje jako TODONullReferenceException– nikdy nevyhrazujeme explicitně, výhradně vyhazováno runtimemNotSupportedException– explicitně indikujeme, že o use-case víme, ale není řešenInvalidOperationException– „nemělo by v produkci nastat“, chyba vývoje (nesprávné volání ,switchnad nečekanou hodnotouenum, …)ArgumentNullException,ArgumentOutOfRangeException– výhradně přímé argumenty (nearg1.Property != null)ArgumentException– obecný problém s argumentem/-y (bližší specifikace vMessage)ContractFailedException– default proContract.Requires(cond),Contract.Assert(cond), …Exception– nedoporučuje se vyhazovat, mělo být spíšeabstract, použijte potomkyOperationFailedException– indikace chyby do UI (specficiké pro Havit.Blazor stack)ApplicationException– deprecated
Záznam ze Vzdělávacího okénka HAVIT z 10. dubna 2025.
Blazor – Proč nepoužívat parametry v OnInitialized [Vzdělávací okénko, 3.4.2025]
V tomto videu se podíváme na důležitý technický detail v Blazoru, který představil – proč by se v metodě OnInitialized popř. OnInitializedAsync neměly používat parametry. Ukážeme si na příkladu konkrétního problému, který může nastat, když komponenta nezmění instanci při změně routy a parametr zůstane se starou hodnotou. Dozvíš se:
- Jak funguje lifecycle metoda
OnInitializedv Blazoru - Proč je nevhodné používat
[Parameter]hodnoty v této fázi - Jaké chyby to může způsobit v praxi
- Kdy (a jestli vůbec) je použití parametrů v
OnInitializedv pořádku
Záznam ze Vzdělávacího okénka HAVIT z 3. dubna 2025.
YAML Pipelines – Azure DevOps [Jiří Kanda, Vzdělávací okénko, 27.3.2025]
V tomto videu se dozvíte vše o našich nových YAML pipelines v Azure DevOps, které prezentuje Jiří Kanda. Jirka vysvětluje, proč jsme se rozhodli přejít na YAML pipelines a jaké výhody nám to přináší.
- Specifika našich buildů a důvody pro změnu na YAML pipelines.
- Výhody YAML pipelines, jako jsou lepší parametrizace a paralelizace.
- Základní syntaxe YAML a struktura YAML pipelines.
- Paralelní běh jobů a použití více agentů.
- Volitelné parametry buildů a task scheduler.
- Podpora pro integrační testy a automatické pull requesty.
- Použití deduplication a reprodukovatelnost buildů.
- Validace zranitelností nuget balíčků a definice pipeline v projektech.
- Problémy s manuálním spuštěním buildů.
Záznam ze Vzdělávacího okénka HAVIT z 27. března 2025.