Obsah:
Definice - Co znamená Intermediate Language (IL)?
Intermediate language (IL) je objektově orientovaný programovací jazyk navržený pro použití kompilátory pro .NET Framework před statickou nebo dynamickou kompilací do strojového kódu. IL je používán .NET Framework pro generování strojově nezávislého kódu jako výstup kompilace zdrojového kódu napsaného v libovolném programovacím jazyce .NET.
IL je jazyk sestavení založený na zásobníku, který se během provádění virtuálního počítače převede na bytecode. Je definována specifikací společné jazykové infrastruktury (CLI). Protože IL se používá pro automatické generování kompilovaného kódu, není třeba se učit jeho syntaxi.
Tento termín je také známý jako Microsoft mezilehlý jazyk (MSIL) nebo běžný mezilehlý jazyk (CIL).
Techopedia vysvětluje Intermediate Language (IL)
S pomocí vhodného kompilátoru just-in-time (JIT) může být IL kód spuštěn na jakékoli počítačové architektuře podporované kompilátorem JIT. Na rozdíl od interpretů poskytuje kompilace JIT lepší výkon, zachovává paměť a šetří čas při inicializaci aplikace. IL umožňuje funkci nezávislosti na platformě a procesoru v rámci .NET framework tím, že umožňuje kompilovaný zdrojový kód provádět v jakémkoli prostředí podporujícím specifikaci CLI.
Ověření bezpečnosti kódu pro kód IL poskytuje lepší zabezpečení a spolehlivost než nativně kompilované spustitelné soubory. Metadata popisující kód MSIL v přenosném spustitelném souboru eliminují potřebu typových knihoven a jazykových souborů se střední definicí, jak bylo použito v technologii Component Object Model (COM). V kombinaci s metadaty a běžným typovým systémem tvoří IL prostředky k integraci modulů psaných v různých jazycích do jedné jediné aplikace, což umožňuje jazykovou nezávislost.
Přestože je IL ve svém použití kompilátory podobný Java bytecode, liší se od něj v tom, že je navržen pro nezávislost na platformě a jazykovou nezávislost. Liší se také tím, že je kompilován a není interpretován.
Součástí IL jsou dva typy instrukčních sad; základní instrukce podobné instrukcím nativního procesoru a instrukce modelu objektu používané jazykem vysoké úrovně. IL obsahuje všechny pokyny nezbytné pro načítání, ukládání, inicializaci a volání metod na objektech. Zahrnuje také aritmetické a logické operace, řídicí tok, přímý přístup do paměti, zpracování výjimek a další operace. Na rozdíl od běžného formátu souboru objektů používaného pro spustitelný obsah v tradičním přenosném spustitelném souboru společnosti Microsoft obsahuje přenosný spustitelný soubor po kompilaci spravovaného kódu instrukce IL i metadata.
Dva nástroje spojené s kódem IL jsou MSIL Assembler (Ilasm.exe) a MSIL Disassemble (Ildasm.exe). První generuje přenosný spustitelný soubor z kódu IL a umožňuje prohlížení IL kódu ve formátu čitelném člověkem, zatímco druhý převádí přenosný spustitelný soubor zpět do textového souboru pro prohlížení a úpravy. Oba jsou automaticky nainstalovány jako součást Visual Studio.