Tři veteráni: uživatelské srovnání integrovaných prostředí pro jazyk C#

Pokud se ohlédneme do minulosti, zjistíme, že dění ve světě programování a vývoje softwaru je radikálně ovlivněno technologickými turbulencemi, které se vyskytují takřka každých deset let. Zalovíme-li v paměti, pak můžeme prohlásit, že v 80. letech minulého století vládl ve vývoji komerčního softwaru jazyk C a strukturované programování. O deset let později začalo své růžky vystrkovat C++, které seznámilo vývojářské komunity s objektově orientovanou filosofií vývoje počítačových programů.

Zatímco pro programátora v C je aplikace kompozicí funkcí, C++ vývojář nahlíží na svět jako na kolekci objektů, jejichž modely lze převádět do virtuálního prostředí. Díky objektové abstrakci je modelování světa kolem nás mnohem zábavnější, než se na první pohled jeví. Programování s objekty přineslo přehršel dalších pozitivních vlastností, mezi nimiž nechybí zapouzdření, dědičnost, polymorfizmus a, samozřejmě, opětovná použitelnost jednou napsaného programového kódu.

Objektově orientované programování (OOP) je pořád lahůdkou, na kterou nedají ostřílení vývojáři dopustit. Čas ovšem nejde zastavit, čehož důsledkem je, že C++ s OOP nebylo finálním stupínkem v genezi historie softwarového vývoje. Následovníkem se stává dynamické komponentové programování, které sice staví na základech položených OOP, ovšem jde mnohem dál. Klienti už nechtějí pouze samostatné aplikace, jak tomu bylo dříve. Kdepak, nyní je v kurzu sofistikovaná konfigurovatelnost, platformová interoperabilita, technologická synergie a především „přístup odkudkoliv a kdykoliv“. Jazyk C# byl zkonstruován právě proto, aby mohl čelit všem výzvám, které do nikdy neutichajícího světa vývoje softwarových aplikací přináší 21. století.

Jazyk C#, jenž je dílem společnosti Microsoft, je jedním z nejoblíbenějších prostředků pro vytváření řízených aplikací běžících v područí platformy .NET Framework. S první verzí jazyka si mohli vývojáři „popovídat“ již v roce 2002. „Ostré céčko“ mělo již od originální verze (1.0) všechny předpoklady pro to, aby se stalo centrem zájmu vývojářů, které okouzlila touha po rychlém, produktivním a zábavném programování široké palety aplikací. Ačkoliv z hlediska příbuzenstva bychom C# zařadili nejspíš do rodiny jazyků C a C++, ve skutečnosti nemá uvedený kandidát daleko ani k Javě, a dokonce ani k Visual Basicu.

Kategorizace jazyka však není až tolik důležitá. Podstatná je míra přidané hodnoty, kterou bohatá a vskutku inovativní syntakticko-sémantická struktura jazyka nabízí finálním uživatelům, tedy nám, programátorům. Jazyk C# na to jde velice chytře – neviditelné pastičky a léčky známé z C++ před námi důmyslně ukrývá, zatímco v jednom kuse předvádí, že s jeho pomocí se software vlastně „píše sám“. Je nasnadě, že umně podávané inteligentní magii nelze odolat, čehož důsledkem je velice rychlá doba osvojení. Vývojář se s jazykem sblíží takřka neuvěřitelně brzy, takže již po pár sezeních jsou z nich dobří kamarádi.

Druhá verze (s číselným označením 1.1) jazyka C# byla uvedena v první polovině roku 2003, ovšem co se programových konstrukcí týče, nepřinesla žádné zásadní změny. To se ovšem již nedá prohlásit o edici C# 2.0, která se oficiálního uvedení dočkala koncem roku 2005. Jazyk C# 2.0 byl naplněn mnoha opravdovými pochoutkami, z nichž vybíráme následující: podpora generického programování, statické a neúplné třídy, anonymní metody či možnost práce s nulovatelnými datovými typy. Technologická inovace se projevila v celé své kráse a vývojáři opět jásali. Nakoukneme-li do budoucnosti, zjistíme, že nás čeká C# ve verzi 3.0 s další kupou novinek (prozatím však nevíme, kdy bude uveden).

Jestliže jste se v nedávné minulosti pohrávali s myšlenkou začít psát své první aplikace v jazyce C#, máme pro vás dobrou zprávu. V našem přehledovém testu vás seznámíme se třemi digitálními pomocníky, kteří vám pomohou s pronikáním do tajů jazyka C#. Jedná se o tyto nástroje:

  • Visual C# 2005 Express,
  • Turbo C# 2006 Explorer,
  • SharpDevelop 2.0.

První adept přichází z amerického Redmondu, další borec vychází ze stájí společnosti Borland a poslední kandidát je otevřeným projektem počítačových fanoušků. Všechny tři produkty sdílejí několik společných vlastností. Začněme charakteristikou jejich pořizovacích nákladů. Ty jsou nulové, neboť aplikace jsou k dispozici k bezplatnému převzetí na příslušných webových stránkách (ty uvádíme při bližším popisu toho kterého programu dále v textu). Pokračujeme sdělením, že ani jedna aplikace není pouhým editorem – ve všech případech jde o plnohodnotná integrovaná vývojová prostředí (IDE). To znamená, že programátor získá hezky vyvedenou kolekci všech nezbytných nástrojů, jako je editor zdrojového kódu, ladící program (debugger) či vizuální návrhář pro zhotovování grafických uživatelských rozhraní (GUI). Ať už si vyberete kterýkoliv produkt, výstupem vašeho programovacího úsilí se stane řízená aplikace .NET, která bude spouštěna a provozována uvnitř virtuálního exekučního stroje, jemuž odborníci říkají společné běhové prostředí CLR (Common Language Runtime). Kód řízených aplikací (zapsaný v C#) je při kompilaci překládán do společné mezijazykové vrstvy, kterou tvoří jazyk IL (Intermediate Language). Instrukce mezijazyka IL jsou později, přesněji za běhu aplikace, překládány virtuálním strojem CLR. Překlad na požádání se uskutečňuje za přispění Just-In-Time (JIT) kompilátoru, jehož úkolem je transformování IL kódu do formy nativních příkazů, jimž je instrukční sada procesoru třídy x86 schopna porozumět.

Při testování jsme kladli důraz na kritéria, která uvádíme v tabulce 1.

kritérium charakteristika
Implementace specifikace jazyka C# Jak jsme uvedli v úvodu, existují celkem tři verze jazyka C#, které jsou číselně označovány 1.0, 1.1, 2.0. Při posuzování specifikace jazyka C# vycházíme z jednoduchého postulátu: čím vyšší verzi jazykové specifikace produkt zavádí, tím je situace pro programátora lepší. Vycházíme z poznání, že progresivní jazykové inovace vždy přispívají k zvýšení komfortu vývojáře. Je proto ideální, když se vývojář seznamuje s jazykem v jeho nejaktuálnější podobě.
Vybavenost a kvalita integrovaného vývojového prostředí (IDE) Když se vývojář začne učit jazyk C#, vždycky uvítá jakoukoliv pomoc, kterou mu IDE dovede poskytnout. Moderní vývojová prostředí jsou obdařena nemalou dávkou umělé inteligence, která sleduje styl vaší práce, přičemž se snaží smysluplně reagovat na vše, co uděláte. Cíl je zřejmý: vývojář se nesmí nikdy ztratit, neustále musí vědět, že je zde softwarový pomocník, který ho nenechá na holičkách. Vývojové prostředí je množinou různých nástrojů. Každý vývojář se setká s editorem zdrojového kódu, vizuálním návrhářem a ladícím programem. Stranou však nezůstává ani editor tříd, správce řešení, dynamická nápověda či systém elektronické dokumentace. To všechno jsou ukázky mocných čarodějů obývajících současná integrovaná vývojová prostředí.
Vizuální dojem a přívětivost IDE Je starou známou pravdou, že v příjemném prostředí podávají lidé lepší a přesvědčivější výkony. Jelikož se vývojové prostředí stane pro vývojáře druhým domovem, je nesmírně důležité, aby se v něm programátor cítil co možná nejlépe. Psychologickou pohodu ovlivňuje jednak základní grafický motiv, stejně tak jako logické uspořádání důležitých nástrojů, které mají být „vždy po ruce“. Hnáni smyslem pro dokonalost jsme z našeho zkoumání nevynechali ani otázku pečlivé konfigurovatelnosti IDE. I když výchozí rozvržení nemusí být ideální, měl by produkt dovolit vývojáři upravit si vše podle své vlastní chuti a preferencí.
Typy vyvíjených aplikací Jaký druh aplikace si přejete vytvořit? Konzolovou aplikaci, aplikaci s grafickým rozhraním, webovou aplikaci, softwarovou službu pro systém Windows, nebo snad toužíte po 3D hře využívající rozhraní DirectX? Rozdíly v počtu zabudovaných projektových šablon udávají možnosti, jimiž se můžete ubírat.
Elektronická dokumentace a další software Pokud začínáte s jazykem C#, je pro vás každá informace dobrá. O technických zdrojích to platí dvojnásob, a proto má informačně nabitá elektronická dokumentace pro vývojáře cenu zlata. O kolik karátů se jedná, to je otázka, kterou jsme se u jednotlivých produktů snažili rozlousknout. Jako plus jsme brali i další softwarové nástroje, pomůcky a programy, které jsou dodávány v jednom balení.

Tab. 1: Charakteristika hodnotících kritérií

Témata článku: Software, Microsoft, Windows, Programování, Postulát, Express, Editor, Ovládací aplikace, Prostředí, Stříbrná verze, Pokročilý editor, Grafický objekt, Java Runtime, Jediný produkt, Elektronická verze, Turbo, Vývojář, Fragment, Široká paleta, Srovnání, Rychlý krok, Úspěšný editor, Integrovaný editor, Pokročilé formátování, Otevřené okno

Určitě si přečtěte

Tesla chce změnit nákladní dopravu. Její elektrický náklaďák má ohromující parametry

Tesla chce změnit nákladní dopravu. Její elektrický náklaďák má ohromující parametry

** Tesla představila elektrický kamion ** Má obdivuhodný výkon i dojezd ** Prodávat by se měl už za dva roky

Včera | Vojtěch Malý | 150

30 počítačových brzd, které vám zpomalí Windows

30 počítačových brzd, které vám zpomalí Windows

Na webu najdete hromadu rad, jak zrychlit počítač a Windows. My jsme na to šli opačně a naopak jsme hledali činnosti, které ho nejvíce zpomalují. Toto je třicítka těch základních.

12.  11.  2017 | Jakub Čížek | 90

Elektronika, která nepotřebuje kabel ani baterii. Živí se rádiovým šumem

Elektronika, která nepotřebuje kabel ani baterii. Živí se rádiovým šumem

** Každá elektrická krabička má konektor pro napájení nebo baterii ** Jenže pozor, jednou by to tak nemuselo být ** Drobná elektronika se může živit rádiovými vlnami

14.  11.  2017 | Jakub Čížek | 15


Aktuální číslo časopisu Computer

Otestovali jsme 5 HDR 4K televizorů

Jak natáčet video zrcadlovkou

Vytvořte si chytrou domácnost

Radíme s koupí počítačového zdroje