Jazyk Csharp a platforma .NET
From ωικι.matfyz.cz
| Jazyk C# a platforma .NET | ||||
|
- http://nenya.ms.mff.cuni.cz/~jezek/ - Domovská stránka předmětu
| Table of contents |
Tipy ke zkoušce
Zkouška je formou testu (až na poslední otázku) a hodně založená na detailech. Velká část otázek se zabývá chováním nějakého daného kusu kódu.
Bodování
Počítají se záporné body. Za každou špatnou odpověď je jeden záporný bod. Odpověď je brána jako špatná, pokud je křížek tam, kde být nemá nebo není tam, kde být má. (U některých otázek se odpovědi sice vylučují, ale stále se špatná odpověď počítá za dva záporné body! Pokud je tedy správně a,b a c a vy zaškrtnete d, znamená to ztrátu 4 bodů!)
| Záporné body | Známka |
|---|---|
| 0-2 | 1 |
| 3-5 | 2 |
| 6-8 | 3 |
| 9+ | 4 |
Na co je potřeba dávat pozor
- Projděte si důkladně kód v otázce! Rozdíl mezi class a struct na místě, kde by vás struct vůbec nenapadlo, může radikálně změnit výsledek!
- Nastudujte si hodnotové a referenční typy. Nullable<T> je struct a tedy hodnotový typ (T musí být také hodnotový typ, jelikož Nullable<T> má v definici where T: struct). System.Int64 je jen zkrácený název pro long, tedy také hodnotový typ.
- Výjimka Stack Overflow se nedá chytit jako ostatní výjimky (ve staré verzi C# to ale šlo)
- Chování zvěrstev typu (int)(unchecked((uint)-4)>>1)
- Kolik bytů zabírá v paměti který hodnotový typ.
- Boxing/unboxing a zvláštnosti s tím spojené.
Poslední příklad
Poslední příklad je "doplňovací". Je dán kus nějaké třídy (může už obsahovat nějaký kód, ale taky být prázdná) a popis úprav, které máte provést (typicky zajištění konzistence při práci ve více vláknech a ošetření chybného použití a/nebo kompletní implementaci). Důraz se také klade na kvalitu kódu (tzn. i když to funguje, může to být špatně, pokud je to příliš pomalé). Za tuto otázku lze získat velký počet záporných bodů (u mě to bylo 4 na prvním a 6 na druhém termínu).

