C# je univerzální imperativní procedurální objektový reflexivní staticky typovaný jazyk s unifikovaným systémem typů. To vám teoreticky říká vše, co o něm potřebujete vědět. Ale co to znamená? A je to po dvaceti letech vývoje vlastně ještě vůbec pravda? Dneškem začínáme na kanále Z-TECH nový seriál o C# pro mírně pokročilé, kde si postupně ukážeme vývoj pokročilejších konstrukcí a možnosti současné verze C# 9.0 (a trochu i těch budoucích).
Seriál C# pro mírně pokročilé
Uplynulý týden jsem bohužel strávil neplánovaně v nemocnici, což poněkud narušilo mé plány na vydávání nového seriálu o C# na kanálu Z-TECH. Dnes jsem vydal nový díl o cestě od delegátů k lambda expressions, ale v článku bude řeč i o generických typech z týdne minulého.
Některé programovací jazyky se bez vlastností (properties) docela dobře obejdou. Ale v C# jsou od samého počátku a jejich zápis se s každou verzí zjednodušuje. Hodí se to, protože se mění kód který píšeme. Nově často místo funkčního kódu píšeme modely a tam se rychlé vytváření vlastností hodí.
Metody (procedury, funkce...) a jejich argumenty jsou v C# základní jazykovou konstrukcí. Za dvacet let existence jazyka však doznaly změn a značného vývoje, již tradičně směrem ke zjednodušení a zpříjemnění práce programátora. V dnešním videu si ukážeme, k čemu slouží klíčová slova in a out, operátor nameof či caller info attributes.
Každý objekt v C# lze pomocí metody ToString převést na řetězec. Ale jak si poradit, když je třeba řešit formátování a internacionalizaci? Od toho je tady rozhraní IFormattable. A další radosti zažijete s metodou String.Format a string interpolation.
Striktně vzato se code snippets netýkají jazyka C#. Ale je to příliš užitečná funkce, než abych se o ní nezmínil. Umožňuje ve Visual Studiu napsat zkrácený text (zkuste třeba prop), stisknout dvakrát tabulátor a zapsané se změní na libovolně složitý kód, do kterého lze inteligentně doplňovat placeholdery. Součástí Visual Studia je sada předdefinovaných, ale můžete vytvářet i vlastní.
Kolekce v C# slouží k práci s větším množstvím objektů stejného typu. Je jich mnoho druhů a každý se hodí k něčemu trochu jinému. V dnešním videu z série C# pro mírně pokročilé se na ně podíváme trochu důkladněji.
Dnešní video o C# pro mírně pokročilé se zabývá rozhraními IEquatable, IComparable, operátory a type cast operátory. Všechny tyto věci se hodí, když chcete vytvořit třídu, reprezentující nějaký "reálný" fenomén a chcete s ní pohodlně pracovat. Zde budeme vytvářet třídu pro reprezentaci hodnoty úhlu.
Nejnovější verze C# 10 přináší novinky - zjednodušení - v práci s namespaces a tomu odpovídá i nová podoba výchozích šablon pro projekty. V tomto dílu seriálu o C# pro mírně pokročilé se na tyto novinky podíváme podrobněji.
I úplní počítačoví laici vědí, že počítače počítají ve dvojkové soustavě - že přemýšlejí v jedničkách a nulách. Pojďme se podívat na to, jak je to doopravdy a jak funguje ukládání celých čísel se znaménkem i bez znaménka v jazyce C# a prostředí .NET. A jak to souvisí s tím, že mnoho Microsoft Exchange serverů přestalo na Nový rok 2022 úderem půlnoci doručovat poštu.