19. - 20. jazyk C# Flashcards

1
Q

základní vlastnosti C#

A
  • Rozlišujeme velikost písmen
  • Bílé znaky se ignorují (mezery, vynechané řádky, tabulátory…)
  • Řádky se zakončují středníkem (kromě konce bloků {})
  • Plně objektový (všechny typy jsou třídy nebo struktury mající metody, vlastnosti, …)
  • Sada rezervovaných slov (malými písmeny), která nelze použít jiným způsobem (Color, Vector3, Float, …)
  • Je typový – vše má definovaný datový typ až na výjimky (typy, co se dají implicitně konvertovat) se musí např. při porovnání nebo přiřazení typ shodovat
  • Nepoužívá se diakritika (jen v komentářích)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

jak pojmenováváme věci (pomocí jakých velikostí písem?)

A
  • PascalCase – je-li název složenina, každé slovo začíná velkým písmenem (DateTime, SpriteRenderer)
  • camelCase – výjimka pro parametry metod a lokálních proměnných (pozice, barva, posledniSlovo)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

co je to postprocesor, čím začíná a co definuje?

A

program co provede předzpracování

začíná #

definuje například region (zabalitelý blok kódu)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

jaká je struktura kódu C#?

A
  1. importy jmenných souborů (using)– např. using UnityEngine.UI
  2. definice vlastního jmenného prostoru (namespace) – následuje blok do kterého se píše zbytek (namespace Nepratele {….} )
  3. definice třídy (class), struktury (struct) nebo výčtového typu (enum) – následuje blok do kterého se píše vše další (např. public class Ovladani {…})
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

jaké máme druhy komentářů?

A
  • řádkový komentář – začíná // zbytek řádku je pak považován za komentář
  • blokový komentář – začíná /* končí */ vše mezí tím je komentář
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

jak dělíme datové typy a proměnné?

A
  • hodnotové – obsahují hodnotu (int, bool, float, char, struct, enum…)
  • referenční – obsahují odkaz na skutečnou hodnotu (string, class, array…)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

jaký je rozdíl mezi datovými typy a promměnou?

A
  • od datového typu lze vytvořit proměnnou (variable) nebo položku (field)
  • proměnná je krabička, která informaci uchovává a může se i časem změnit (je proměnlivá)
  • její hodnota se musí nastavit (zapsat) a pak je možno ji číst
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

jaké máme základní datové typy?

A

o Int – celé číslo
o Float – reálné (desetinné) číslo
o Bool – logická hodnota = true/false
o Char – právě jeden znak uzavřený v apostrofech např. ‘a’
o String – libovolný (i nulový) počet znaků, uzavřených v závorkách např. „figurka“ , „“

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

jaké máme speciální typy?

A
  • Null – není datový typ ale hodnota, říkající že reference na objekt neexistuje
  • Void – nelze od něj vytvořit proměnnou, speciální hodnota pro signalizaci, že metoda nic nevrací
  • Nullable – kromě původní hodnoty umožňuje uložit také hodnotu null, zkrácený zápis je přidání ? za jméno typu např. int? Číslo = null;, disponuje vlastními metodami či vlastnostmi
    o Value – přes kterou se přistupuje na původní datový typ, např. cislo.Value
    o HasValue, vrací bool, a říká, že je do proměnné přiřazena skutečná hodnota, např. cislo.HasValue
  • Enum – možnost definovat výčtový typ (seznam všech možných hodnot), výhoda je kontrola nad těmito hodnotami (jiné než vyjmenované nelze použít), položky jsou poté „Smer.Nahoru“
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

co to jsou strukturované datové typy a co používáme pro jejich tvorbu?

A
  • Null – není datový typ ale hodnota, říkající že reference na objekt neexistuje
  • Void – nelze od něj vytvořit proměnnou, speciální hodnota pro signalizaci, že metoda nic nevrací
  • Nullable – kromě původní hodnoty umožňuje uložit také hodnotu null, zkrácený zápis je přidání ? za jméno typu např. int? Číslo = null;, disponuje vlastními metodami či vlastnostmi
    o Value – přes kterou se přistupuje na původní datový typ, např. cislo.Value
    o HasValue, vrací bool, a říká, že je do proměnné přiřazena skutečná hodnota, např. cislo.HasValue
  • Enum – možnost definovat výčtový typ (seznam všech možných hodnot), výhoda je kontrola nad těmito hodnotami (jiné než vyjmenované nelze použít), položky jsou poté „Smer.Nahoru“

operátor NEW

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

jaké máme strukturované datové typy?

A

o Array – pole, obsahuje hodnoty stejného typu adresované indexem (int). Index se zapisuje do [ ], první buňka má index 0, poslední délka pole -1. Používají se pro ukládání opakujících se informací, prochází se pomocí smyček.
o Class – slouží pro definici třídy
o Struct – téměř to samé jako class, liší se v detailech
 Od struktury nelze dědit potomka
 Na rozdíl od class patří mezi hodnotové typy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

co jsou to operátory a výrazy a co je u nich pevně dáno?

A
  • Výrazem je přímo zapsaná hodnota, proměnná nebo operace využívající operátor/y
  • Výraz je vždy nějakého datového typu
  • Operátory mají pevně danou prioritu, kterou lze měnit pomocí ( ) ve výrazu
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

co obsahuje class a jak k nim přistupujeme?

A

členy, přistupujeme k nim ořes operátor tečka “.”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

jaké druhy class (jejich viditelnost) máme?

A

o Public – veřejný člen, viditelný odkudkoliv
o Protected – chráněný, viditelný z dané třídy potomků
o Private – soukromý člen, viditelný jen z dané třídy

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

jaké máme členy tříd?

A
  • Položky proměnné třídy deklarují stejně jako jiné proměnné
  • Oproti jiným proměnným mají navíc viditelnost (Např. public inf float)
  • Metody – funkce třídy, samostatný spustitelný blok programu, metody mají za názvem závorky
  • Vlastnosti – proměnné na které je vytvořen speciální přístup přes metody
  • Konstanty – neměnná hodnota, automaticky statické
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

jaké máme metody a co to jsou?

A
  • Samostatný logicky spustitelný blok
  • Slouží pro organizaci kódu č při opakování nějaké činnosti
    o Awake(), pro inicializaci komponenty
    o Start(), po startu komponenty
    o Update(), před grafickou aktualizací každého snímku
    o FixedUpdate(), před fyzikální aktualizací
17
Q

a

A