Kompilátory vytvářejí podrobný model kódu aplikace, protože ověřují syntaxi a sémantiku tohoto kódu. Tento model používá k sestavení spustitelného výstupu ze zdrojového kódu. Sada .NET Compiler Platform SDK poskytuje přístup k tomuto modelu. Stále častěji spoléháme na integrované vývojové prostředí (IDE), jako je IntelliSense, refaktoring, inteligentní přejmenování, "Najít všechny odkazy" a "Přejít k definici", abychom zvýšili naši produktivitu. Spoléháme na nástroje pro analýzu kódu, abychom vylepšili kvalitu kódu a generátory kódu, které vám pomůžou při vytváření aplikací. Vzhledem k tomu, že tyto nástroje získají chytřejší přístup k více a více modelu, který vytváří pouze kompilátory při zpracování kódu aplikace. Toto je základní mise rozhraní ROSlyn API: otevření neprůhlásných polí a povolení nástrojů a koncových uživatelů sdílet v bohatství kompilátorů informací o našem kódu.
Místo neprůhlásného zdrojového kódu a překladačů objekt-kód-out, prostřednictvím Roslyn se kompilátory stanou platformami: rozhraní API, která můžete použít pro úlohy související s kódem ve vašich nástrojích a aplikacích.
koncepty sady .NET COMPILER PLATFORM SDK
Sada .NET Compiler Platform SDK výrazně snižuje bariéru pro vytváření nástrojů a aplikací zaměřených na kód. Vytváří mnoho příležitostí pro inovace v oblastech, jako jsou metaprogramování, generování kódu a transformace, interaktivní používání jazyků C# a Visual Basic a vkládání jazyka C# a Visual Basic v jazycích specifických pro doménu.
Sada .NET Compiler Platform SDK umožňuje vytvářet analyzátory a opravy kódu, které vyhledá a opravují chyby kódování. Analyzátory rozumí syntaxi (struktura kódu) a sémantiku k detekci postupů, které by měly být opraveny. Opravy kódu poskytují jednu nebo více navrhovaných oprav pro řešení chyb kódování nalezených analyzátory nebo diagnostikou kompilátoru. Analyzátor a související opravy kódu se obvykle zabalí do jednoho projektu.
Analyzátory a opravy kódu používají statickou analýzu k pochopení kódu. Nespouštějí kód ani neposkytují další výhody testování. Mohou však upozornit na postupy, které často vedou k chybám, nedodržitelnému kódu nebo standardnímu porušení zásad.
Kromě analyzátorů a oprav kódu umožňuje sada .NET COMPILER PLATFORM SDK také vytvářet refaktoringy kódu.
Poskytuje také jednu sadu rozhraní API, která umožňují prozkoumat a pochopit jazyk C# nebo Visual Basic základ kódu. Vzhledem k tomu, že můžete použít tento jediný základ kódu, můžete snadněji psát analyzátory a opravy kódu pomocí syntaktických a sémantických analytických rozhraní API poskytovaných sadou .NET COMPILER PLATFORM SDK. Uvolněte z velkého úkolu replikace analýzy provedené kompilátorem, můžete se soustředit na prioritní úkol hledání a opravy běžných chyb kódování pro váš projekt nebo knihovnu.
Menší výhodou je, že analyzátory a opravy kódu jsou menší a při načítání do Visual Studio používat mnohem méně paměti, než kdybyste napsali vlastní základ kódu, abyste porozuměli kódu v projektu. Pomocí stejných tříd používaných kompilátorem a Visual Studio můžete vytvořit vlastní nástroje pro statickou analýzu. To znamená, že váš tým může používat analyzátory a opravy kódu bez znatelného dopadu na výkon integrovaného vývojového prostředí.
Existují tři hlavní scénáře pro psaní analyzátorů a oprav kódu:
Mnoho týmů má standardy kódování, které se vynucují prostřednictvím kontrol kódu s ostatními členy týmu. Díky analyzátorům a opravám kódu je tento proces mnohem efektivnější. Kontroly kódu se dějí, když vývojář sdílí svoji práci s ostatními v týmu. Vývojář bude investovat celou dobu potřebnou k dokončení nové funkce před získáním komentářů. Týdny můžou zajít, zatímco vývojář posiluje návyky, které neodpovídají postupům týmu.
Analyzátory běží jako vývojářský kód. Vývojář dostane okamžitou zpětnou vazbu, která okamžitě vybízí k sledování pokynů. Vývojář vytváří návyky pro psaní kompatibilního kódu, jakmile začnou vytvářet prototypy. Až bude funkce připravená na kontrolu lidí, vynutí se všechny standardní pokyny.
Teams může vytvářet analyzátory a opravy kódu, které hledají nejběžnější postupy, které porušují postupy kódování týmu. Ty se dají nainstalovat na počítač každého vývojáře, aby se vynucují standardy.
Tip
Před vytvořením vlastního analyzátoru si projděte předdefinované analyzátory. Další informace najdete v tématu Pravidla stylu kódu.
Pokyny k balíčkům knihoven
Na NuGet je k dispozici řada knihoven pro vývojáře .NET.
Některé z nich pocházejí od Microsoftu, některé z společností třetích stran a jiné od členů komunity a dobrovolníků. Tyto knihovny získávají větší přehled o přijetí a vyšších kontrolách, když můžou vývojáři s těmito knihovnami uspět.
Kromě poskytování dokumentace můžete poskytovat analyzátory a opravy kódu, které vyhledá a opravují běžné nesprávné použití knihovny. Tyto okamžité opravy pomohou vývojářům rychleji uspět.
Analyzátory balíčků a opravy kódu můžete s knihovnou zabalit na NuGet. V tomto scénáři nainstaluje balíček analyzátoru také každý vývojář, který nainstaluje váš balíček NuGet. Všichni vývojáři používající vaši knihovnu okamžitě dostanou pokyny od vašeho týmu formou okamžité zpětné vazby k chybám a navrhovaným opravám.
Obecné pokyny
Komunita vývojářů .NET zjistila vzory, které fungují dobře a vzory, kterým se nejlépe vyhnout. Několik členů komunity vytvořilo analyzátory, které vynucují tyto doporučené vzory. S tím, jak se dozvíme víc, je vždy prostor pro nové nápady.
Tyto analyzátory je možné nahrát do Visual Studio Marketplace a stáhnout je vývojáři pomocí Visual Studio. Nováčci v jazyce a platformě se učí akceptované postupy rychle a stávají se produktivními dříve v cestě k .NET. Vzhledem k tomu, že se tyto postupy běžně používají, komunita tyto postupy přijímá.
Další kroky
Sada .NET Compiler Platform SDK obsahuje nejnovější jazykové modely objektů pro generování, analýzu a refaktoring kódu. Tato část obsahuje koncepční přehled sady .NET COMPILER PLATFORM SDK. Další podrobnosti najdete v částech rychlých startů, ukázek a kurzů.
Další informace o konceptech v sadě .NET Compiler Platform SDK najdete v těchto pěti tématech: