Common Language Infrastructure

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Common Language Infrastructure (často zkracováno jako CLI) je standardní a otevřený sada technologií od společnosti Microsoft pro vývoj a provoz programů. CLI definuje společný jazyk pro různé programovací jazyky a také poskytuje prostředí pro jejich spuštění. Jedná se o součást platformy .NET Framework, která je navržena tak, aby byla multiplatformní a umožňovala použití kódu napsaného v různých programovacích jazycích. CLI také zajišťuje správu paměti a běhové prostředí pro spouštění programů, což zjednodušuje vývoj a provoz aplikací. CLI byl významným příspěvkem k rozšíření možností programování na platformě .NET Framework. Poskytuje možnosti interoperability mezi jazyky a umožňuje sdílení knihoven a komponent napříč různými aplikacemi. Díky tomu lze programovat ve více jazycích a přitom využívat funkčnost poskytovanou platformou .NET Framework. CLI je definován pomocí několika standardů, včetně ECMA-335 a ISO/IEC 23271. Tyto standardy popisují formáty souborů, instrukční sadu, správu paměti a další důležité prvky, které definují chování a spolupráci programovacích jazyků na platformě .NET Framework. CLI je velmi rozšířený a používá se v mnoha různých oblastech vývoje softwaru. Jeho použití je obzvláště vhodné pro vytváření rozsáhlých a komplexních aplikací, které vyžadují vysokou míru flexibility a přenositelnosti.

Pojem Common Language Infrastructure (CLI) (dalo by se přeložit jako společná infrastruktura programovacích jazyků, ale nepřekládá se) je otevřená specifikace vyvinutá nejen firmou Microsoft. Popisuje vlastnosti proveditelného kódu a prostředí pro jeho běh (runtime environment), které tvoří jádro Microsoft .NET Framework. Specifikace definuje prostředí, které umožňuje používání více vysokoúrovňových programovacích jazyků na různých počítačových platformách, aniž by bylo nutné přepisovat jejich překladače s ohledem na zvláštnosti konkrétní architektury.

Zdůrazněme ještě jednou, že CLI je specifikace, a nikoliv implementace. Často se totiž zaměňuje s implementací Common Language Runtime (CLR), která zahrnuje detaily přesahující rámec specifikace CLI.

Specifikace CLI mimo jiné popisuje následující čtyři aspekty:

* The Common Type System (CTS) - sada datových typů a operací, které se používají v mnoha programovacích jazycích. * Metadata - Informace o struktuře programu je popsána jazykově nezávislým způsobem, takže může být zpřístupněna z různých jazyků a prostřednictvím různých nástrojů. +more Díky tomu lze snadno pracovat i s kódem, který byl napsán v jazyce, který nepoužíváte. * Common Language Specification (CLS) - sada základních pravidel, která by měl splňovat každý jazyk vyhovující specifikaci CLI. Cílem je dosažení vzájemné spolupráce s ostatními jazyky splňujícími specifikaci CLI. * Virtual Execution System (VES) - VES zavádí a provádí programy slučitelné se specifikací CLI. Používá metadata k tomu, aby zajistil spolupráci samostatně vytvořených kusů kódu za běhu programu.

Všechny kompatibilní jazyky jsou překládány do společného mezijazyka (v žargonu Microsoftu mezilehlého jazyka), označovaného jako Common Intermediate Language (CIL). Ten je nezávislý na hardwarové platformě. +more Při vlastním provádění kódu zajistí VES kompilaci CIL do strojového kódu, který je závislý na konkrétním hardware.

Na vzniku standardu ECMA-335 se podílely následující organizace: Borland, Fujitsu, Hewlett-Packard, Intel Corporation, International Business Machines, ISE, IT University Copenhagen, Microsoft Corporation, Monash University, Netscape, Novell Corporation, OpenWave, Plum Hall, Sun Microsystems a University of Canterbury New Zealand.

Externí odkazy

[url=http://www. ecma-international. +moreorg/publications/standards/Ecma-335. htm]Standard ECMA-335, Common Language Infrastructure (CLI)[/url] * [url=http://www. iso. org/iso/en/CatalogueDetailPage. CatalogueDetail. CSNUMBER=42927]ISO/IEC 23271, Common Language Infrastructure[/url].

Kategorie:.NET

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top