Vítejte na stránkách, které si kladou za cíl poskytovat v češtině informace o programovacím jazyku D.
Tyto stránky jsou postaveny na platformě DokuWiki, takže je může upravovat každý, kdo požádá o tuto pravomoc.
Pokud chcete něco přidat, upravit nebo odebrat, nestyďte se a napište si o založení uživatelského účtu na adresu: bystrousak@kitakitsune.org.
Pokud naleznete jakoukoliv chybu nebo nepřesnost, nebojte se ozvat − jsem vděčný za jakoukoliv zpětnou vazbu.
Na czwiki4d by vás mohly zajímat tyto sekce:
Programovací jazyk D je kompilovaný systémový jazyk kombinující výkonnost C/C++ s vlastnostmi moderních vysoce produktivních aplikačních jazyků, jakými jsou třeba Java nebo C#. Jeho autor Walter Bright ho navrhl poté, co si při implementaci kompilátoru C++ uvědomil že C++ je zastaralý, komplikovaný1) dinosaurus, který obsahuje spoustu výjimek z pravidel a pro programátora není zrovna jednoduché v něm programovat. C++ mu tenkrát prostě přišel jako zbytečně těžký jazyk, a tak se v roce 1999 rozhodl využít svých zkušeností z psaní kompilátoru k jeho vylepšení.
Ze začátku pouze vylepšoval a zjednodušoval syntaxi, později začal přidávat nové vlastnosti, přičemž za inspiraci mu sloužily jazyky jako Eiffel, Java, C#, Python a Ruby. Od jisté chvíle přestal být jazyk jen vylepšené C++ a stal se z něj samostatný projekt. Vznikl tak vysokoúrovňový jazyk kompilovaný do nativního kódu procesoru, výkonností se blížící C/C++, vhodný pro psaní velkých projektů s miliony řádků zdrojového kódu. Autor ho původně pojmenoval Mars, ale komunita ho raději nazývala D, což mělo po čase za následek jeho přejmenování. Tento jazyk je jednoduchý na naučení a přináší s sebou oproti C/C++ relativně velikou standardní knihovnu, která poskytuje přístup i k pokročilým věcem, jako je třeba komprese souborů a práce s internetem.
Pokud vás D zaujalo, podívejte se na přehled vlastností: Přehled
.
D je mladý a neustále se vyvíjející jazyk. V současnosti existuje stabilní verze 1, někdy též označovaná jako D1. Tato verze byla vydána v roce 2007.
Pro nové projekty je doporučeno použít D2, což je novější verze, která opravuje chyby a zároveň přináší nové vlastnosti, díky čemuž je částečně nekompatibilní s D1. D2 vyšla oficiálně 12. června 2010 spolu s knihou The D Programming Language2) od Andreie Alexandrescu. Od této chvíle jsou do D1 přidávány pouze opravy chyb a vlastnosti, které nenaruší zpětnou kompatibilitu.
Správu paměti provádí garbage collector. Pokud by to bylo v daném případě nevýhodné, je možné použít operátory new a delete, popřípadě funkce malloc a free z knihovny C. Garbage collector může být různě nastavován, vypínán a zapínán podle potřeby, programátor si může vynutit vyčištění paměti atp. 3)
D nemůže přímo překládat céčkové zdrojové soubory, ale může k sobě linkovat objektové soubory vytvořené v C, popřípadě používat ABI C knihovny. Standardní knihovny C jsou v D přístupné v modulu std.c 4).
C++ je podporováno pouze částečně v D2. D1 pro něj nemá podporu vůbec.
Se standardní knihovnou je to v D trochu složitější 5) než v ostatních jazycích.
Knihovna Phobos je vyvíjena firmou Digital Mars jako součást D, díky čemuž je defaultně v dmd. Jelikož je to „oficiální“ knihovna, tak podporuje jak D1, tak i D2.
Phobos je poněkud více céčkově orientovaná a neobsahuje některé složitější moduly. Na druhou stranu se neustále vyvíjí a pokud někdo vytvoří dobrý projekt, je možné ho do ní přidat.
Rád bych poznamenal, že tyto stránky se věnují převážně phobosu.
V dobách D1 se lidem zdálo, že Phobos je moc jednoduchá a neposkytuje potřebné API pro přístup k pokročilým funkcím, proto začali vytvářet novou komunitní standardní knihovnu Tango. Vnikla tak nová, nekompatibilní knihovna, která zatím funguje pouze na D1. Tango oproti Phobosu nabízí více pokročilejších objektově orientovaných modulů a podobá se tak spíše standardní knihovně pythonu, nebo javě spíš než C.
V D2 od sebe byly odděleny standardní knihovna a runtime knihovna, takže používání Tanga není nijak složité − stačí jen nainstalovat tango a přepsat jeden konfigurační soubor.
D používá pro své zdrojové soubory příponu .d. Pro interface je použita .di, pro dokumentaci .dd.
V závislosti na platformě k tomu ještě přibývají přípony pro objektové soubory (většinou .o), knihovny (.lib/.a) a binárky (.exe, .com, .bin atp..).
Pro D v současnosti existuje několik kompilátorů:
Jelikož jsem o D nenašel téměř žádné informace v češtině, rozhodl jsem se začít sepisovat Podrobný přehled vlastností, což je vlastně takový napůl tutoriál, pokud již umíte programovat v nějakém c-like jazyce.
Pokud hledáte informace o D, asi jste už narazili na to, že hledat jen D nemá moc cenu. Místo toho vám doporučuji zkusit hledat výrazy jako „Programování v D“, „Programovací jazyk D“, „D digital mars“.
Pokud si založíte webové stránky o D, přidejte tam prosím aspoň jednou výraz „Programovací jazyk D“, nebo „programming language D“, „digitalmars“, namísto prostého „D“. Pomůže to vašemu pageranku a usnadní to vyhledávání vaší stránky 6).