Pět optimalizací v .NET (které nepoužijete)

Během vývoje naší interní aplikace v Avastu jsme museli řešit nejeden problém s výkonem. Vždy jsme postupovali tak, že jsme nějakým způsobem změřili výkonnost aplikace a až na základě toho dělali příslušná opatření – a takový přístup bych doporučil vždy – nemá moc cenu odhadovat, co by asi tak mohlo stát za neuspokojivou výkonností, nejlepší je to změřit. Samozřejmě jsou ale vyložené boty, kterých se je třeba vyvarovat vždy. V tomto článku bych rád ukázal pár zajímavých triků pro vyšší výkonnost, které rozhodně nešlo jen tak vykoukat z kódu.
Celý příspěvek

Poznámky z NDC Oslo 2013

Norwegian Developers Conference je třídenní konference především pro vývojáře, kteří se pohybují okolo .NETu. Témata se ale netýkají výhradně Microsoftích technologií, člověk může zajít i na velmi kvalitní přednášky o obecnějších tématech – např. přednášky Roberta C. Martina jsou zárukou kvality a i jen kvůli nim se vyplatí na NDC vyrazit.
Zajímavostí této konference je to, že v minulých ročnících dávala videa ze všech přednášek volně ke stažení. Protože konference má 8 paralelních tracků a témata i přednášející jsou na úrovni, skončil jsem poslední dva roky vždy s cca 40 staženými videy, z nichž jsem nakonec kvůli nedostatku času (já vím, bla bla bla) viděl tak 10. Proto jsem se rozhodl (a firma mi to umožnila) vyrazit na konferenci osobně a mít tak jistotu, že to nejzajímavější uvidím a vstřebám.
Celý příspěvek

Můj měsíc s Nokia Lumia 820

Přes dva roky jsem víceméně spokojeným uživatelem Androidu (dříve HTC Desire, nyní HTC One V), ale vždycky jsem pošilhával po ostatních platformách, takže mě moc potěšilo zastoupení Nokie, které mi poskytlo telefon Nokia Lumia 820 na měsíční používání. Mohl jsem tak na vlastní kůži konečně vyzkoušet Windows Phone (poslední verzi, tj. 8.0), na který jsem slyšel dost rozdílné názory (řekl bych 50:50).

Celý příspěvek

Lepší bindování kolekcí v ASP.NET MVC

Výchozí model-binder v ASP.NET MVC se nechová v případě kolekcí vždy tak intuitivně, jak bychom předpokládali. Naštěstí máme ale k dispozici dost extension-pointů, kterými můžeme výchozí chování jednoduše upravit tak, jak nám vyhovuje. Rád bych nejprve ukázal přirozenější způsob bindování polí, a dále pak bindování Dictionaries.
Celý příspěvek

Atributy jsou zlo

Atributy v C# (v ostatních jazycích známé např. jako anotace) považuju ve většině případů za zlo, protože porušují SRP – třída pak dělá více než musí – navíc si s sebou nese metadata. Na první pohled vypadají atributy jako super věc, ale snadno můžete narazit na situaci, kdy se vám vymstí mít všechno na jedné hromadě – a pak budete litovat, že používáte atributy.
Celý příspěvek