Ačkoli je mnoho vývojářů, kteří práci s COM objekty, možná právem, nemají rádi, jsou tu stále s námi a nabízí možnosti, které by jinou cesty nebylo možné provést nebo by to bylo velice obtížné. A ani práce s COM objekty nezůstala beze změn v .NET Frameworku 4.0 a C# 4.
reklama
Ačkoli je mnoho vývojářů, kteří práci s COM objekty, možná právem, nemají rádi, jsou tu stále s námi a nabízí možnosti, které by jinou cesty nebylo možné provést nebo by to bylo velice obtížné. A ani práce s COM objekty nezůstala beze změn v .NET Frameworku 4.0 a C# 4.
Pravděpodobně první vlastností, která vás napadne je „dynamic“. Tuto novou vlastnost jsme si představili v předchozích dílech. Jak možná víte, často je třeba pracovat s návratovými typy, které jsou variantní, a jsou vraceny jako typ object. Přetypování se tedy nevyhnete. Tedy doposud. Nyní je možné využít jako návratový typ dynamic, takže hromada přetypování ve vašem kódu odpadá. Každá malá pomoc se počítá.
Co však bylo možné ještě horší, byla práce s PIA (Primary Interop Assemblies). Tyto knihovny obsahují, zkráceně řečeno, všechny typy, které můžete použít. Bohužel tyto knihovny je také třeba distribuovat s aplikací a její velikost resp. velikost distribuce velice narůstá. Ne nadarmo je PIA také uváděno jako Pain In the Ass. Nyní však máte možnost zapnout volbu Embed Interop Types a kompilátor přímo do vaší aplikace (assembly) přiloží pouze typy, které skutečně používáte – tzv. no-PIA. Aplikace je pak menší a distribuce jednodušší.
Společně s volitelnými a pojmenovanými parametry, představenými taktéž v přechozích dílech, již propojení těchto dvou světů nevypadá tak bolestivě. Ačkoli dramatických změn pro lepší spolupráci s COM světem není tolik jako například pro práci s vlákny a „tasky“, nejsou zanedbatelné a především no-PIA je podle mého názoru velký kus kvalitní práce.