Znalosti


  • Datové typy
    • Celočíselné: sbyte, byte, short, ushort, int, uint, long, ulong
    • Desetinné: double, float, decimal
    • Textové: string, char
    • Logické: bool
    • Parsování

  • Podmínky
    • if, else-if, else, switch
    • Relační operátory: ==, <, >, <=, >=, !=, !
    • Logické operátory: &&, ||, !
    • Ternární operátor: (logický výraz) ? hodnota(true) : hodnota(false)
    • Unární operátory: ++, --

  • Cykly
    • for, foreach, while, do-while

  • Pole a třída Array
    • Metody - Sort(), Reverse(), IndexOf(), LastIndexOf(), Copy(), Min(), Max(), Average(), Sum(), Concat(), Intersect(), Union(), Distinct(), Contains(), First(), Last(), Take(), Skip()

  • Práce s textovými řetězci
    • Práce se znaky, Interpolace, Escapování
    • Metody - PadLeft(), PadRight(), ToUpper(), ToLower(), Trim(), TrimStart(), TrimEnd(), StartsWith(), EndsWith(), Contains(), Replace(), Remove(), Insert(), Substring(), CompareTo(), Format(), Split(), Join()

  • Knihovna Math
    • Metody - Min(), Max(), Round(), Ceiling(), Floor(), Truncate(), Sign(), Abs(), Sin(), Cos(), Tan(), Pow(), Sqrt(), Exp(), Log(), Log10()

  • Práce s třídou Console, Random
  • Referenční a hodnotové datové typy, konstanty, readonly

  • Třídy, instance, konstruktory, atributy

  • Zapouzdření, dědičnost, polymorfismus
    • Modifikátory přístupu: public, private, protected, sealed, internal
    • Metody: návratové typy, parametry, proměnný počet parametrů (params), přetěžování (overload), překrývání (virtual, override), :this, : base

  • Vlastnosti: get, set, init

  • Statika
    • Statické atributy, metody, třídy

  • Interface, Abstrakce
    • ICollection, IEnumerable, IComparable
    • Porovnávání objektů CompareTo(), přetěžování operátorů, překrytí Equals() a GetHashCode()

  • Výčtové typy Enum a [Flags]

  • Delegáti
    • Lambda výrazy, Predicate<in T>, Func<in T, out TResult>, Action<in T>

  • Události EventHandler

  • Struktury, jmenné prostory, parciální třídy

  • DateTime
    • Vlastnosti: Date, Day, Month, Year, Hour, Minute, Second, Millisecond, Ticks, DayOfWeek, DayOfYear
    • Statické vlastnosti: Now, Today
    • Metody: Add(), AddDays(), AddMonths(), AddYears(), AddHours(), AddMinutes(), AddSeconds(), AddMilliseconds(), AddTicks(), Subtract(), ToShortDateString(), ToShortTimeString(), ToLongDateString(), ToLongTimeString()
    • Statické metody: DaysInMonth(), IsLeapYear(), Parse(), TryParse(), ParseExact(), TryParseExact()

  • TimeSpan
    • Vlastnosti: Days, Hours, Minutes, Seconds, Milliseconds, Ticks, TotalDays, TotalHours, TotalMinutes, TotalSeconds, TotalMilliseconds
    • Metody: Add(), Divide(), Duration(), Negate(), Subtract()
    • Statické metody: FromDays(), FromHours(), FromMinutes(), FromSeconds(), FromMilliseconds(), Parse(), ParseExact(), TryParse(), TryParseExact()

  • DateOnly, TimeOnly

  • Tuple, ValueTuple
  • Pole, vícerozměrná pole, pole polí
    • int[], int[ , , ], int[][]

  • Seznam List<T>

  • Spojový seznam LinkedList<T>, LinkedListNode<T>
    • Metody: AddAfter(), AddBefore(), AddFirst(), AddLast(), RemoveFirst(), RemoveLast()

  • Slovník Dictionary<TKey, TValue>
    • Vlastnosti: Count, Keys, Values
    • Metody: Add(), Clear(), ContainsKey(), ContainsValue(), Remove(), TryGetValue()

  • Množina HashSet<T>
    • Metody: IntersectWith(), IsSubsetOf(), IsSupersetOf(), IsProperSubsetOf(), IsProperSupersetOf(), Overlaps(), UnionWith(), ExceptWith()

  • Fronta Queue<T>
    • Metody: Enqueue(), Dequeue(), Peek(), TryDequeue(), TryPeek()

  • Zásobník Stack<T>
    • Metody: Push(), Pop(), Peek(), TryPop(), TryPeek()

  • LINQ
    • Dotazování, řazení, seskupování
    • from-in where select
    • orderby ascending/descending
    • group-by-into
    • join-in on-equals-into
    • Where(), Select(), Take(), Skip(), TakeWhile(), SkipWhile(), Distinct(), Union(), Intersect(), Except(), First(), FirstOrDefault(), Last(), ElementAt()
    • Any(), All(), Count(), Sum(), Min(), Max(), Average(), Aggregate()
    • Concat(), SequenceEqual()
    • Enumerable .Range(), .Repeat()
  • Sestavení aplikace
    • Middleware
    • Services
    • Routing

  • Model
    • DataAnnotations atributy
    • Display, Required, DataType

  • View
    • Razor syntaxe
    • Kolekce ViewData, ViewBag
    • Formuláře, Tag Helpers
    • Validační scripty
    • Partial Views

  • Controller
    • Akce (metody s návratovým typem IActionResult)
    • HTTP atributy
    • URL parametry

  • Entity Framework Core
    • Code First
    • Scaffolding
    • Migration

  • ASP.NET Core Identity
    • Autentizace, Autorizace, Uživatelské role
    • UserManager, SignInManager, IdentityUser, RoleManager

  • Cross-site Request Forgery
  • Datové typy
    • TINYINT, SMALLINT, INT, BIGINT
    • DECIMAL, FLOAT, REAL, MONEY, SMALLMONEY
    • NCHAR(), NVARCHAR()
    • DATE, TIME, DATETIME
    • BIT
    • Constraints: IDENTITY, NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY

  • Vytvoření tabulky, úprava, smazání
    • CREATE TABLE, ALTER TABLE, DROP TABLE
    • ADD, ALTER COLUMN, DROP COLUMN

  • Záznamy CRUD
    • INSERT INTO - VALUES
    • SELECT - FROM - WHERE
    • UPDATE - SET - WHERE
    • DELETE - FROM - WHERE
    • TRUNCATE TABLE

  • Výběr SELECT, limit, agregační funkce
    • SELECT *, SELECT TOP
    • SELECT COUNT(), SUM(), MIN(), MAX(), AVG()
    • Poddotazy - Subqueries

  • Podmínky, řazení, seskupování
    • WHERE - LIKE, IN, BETWEEN - AND, OR
    • Operátory ALL, ANY, EXISTS, NOT
    • ORDER BY - ASC, DESC
    • GROUP BY
    • HAVING

  • Dotazy přes více tabulek
    • JOIN, INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL JOIN

  • Transakce, pohledy, indexy
    • BEGIN TRANSACTION, COMMIT TRANSACTION, ROLLBACK TRANSACTION, SET IMPLICIT_TRANSACTIONS ON/OFF
    • CREATE VIEW - AS
    • CREATE INDEX - ON

  • DML triggery, procedury, parametry
    • CREATE TRIGGER - ON - {INSTEAD OF, AFTER} {INSERT, UPDATE, DELETE} AS BEGIN END
    • CREATE PROCEDURE - AS BEGIN END
    • Proměnné DECLARE @name {datový typ}
    • IF, ELSE IF, ELSE
  • Základní struktura
    • <!DOCTYPE>, <html>, <head>, <body>
    • <title>, <meta>
    • <h1> - <h6>, <p>, <br>, <hr>, <!-- komentáře -->

  • Tagy
    • Formátování
      • <address>, <blockquote>
      • <pre>, <code>
      • <strong>, <small>, <em>
      • <b>, <i>, <u>
      • <abbr>, <kbd>, <mark>, <s>
    • Formuláře
      • <form>, <label>, <input>, <textarea>, <select>, <option>, <button>
    • Obrázky
      • <img>, <picture>, <area>, <canvas>
    • Odkazování
      • <a>, <link>, <nav>
    • Seznamy
      • <ul>, <ol>, <li>
      • <dl>, <dt>, <dd>
    • Tabulky
      • <table>, <thead>, <tbody>, <tfoot>, <caption>
      • <tr>, <th>, <td>
    • Sémantika
      • <header>, <section>, <article>, <footer>, <nav>, <main>
    • Stylování
      • <style>, <div>, <span>
    • Scriptování
      • <script>, <noscript>

  • Atributy
    • class, id, name, content, type, lang, charset
    • src, href, target, rel, srcset, alt
    • style, width, height
    • disabled, hidden, tabindex

  • HTML Entity
    • &nbsp; &quot; &apos; &amp; &lt; &gt; &euro; &copy; &reg; &trade; &sol
  • Selektory
    • Jednoduché
      • Typové: p {}; div, p {}
      • Třídní: .class-name {}; div.class-name {}
      • ID: #element-id {}
      • Výběr všech elementů: * {}
    • Kombinované
      • Výběr potomků: div p {}
      • Výběr přímých potomků: div > p {}
      • Výběr sousedících elementů: div ~ p {}
      • Výběr přímo sousedících elementů: div + p {}
    • Pseudo
      • Pseudo-třídy: a:link {}, a:hover{}, input:focus {}, ...
      • Pseudo-elementy: p::before {}, p::after {}, ...
    • Atributy
      • Dle atributu: [target] {}
      • Dle atributu i hodnoty: [target="_blank"] {}
      • Dle atributu a specifického slova: [title~="menu"] {}
      • Dle atributu a specifického slova, nebo slova následovaného pomlčkou:
        <div class="text-center"> => [class|="text"] {}
      • Dle atributu a slova začínající výrazem:
        <div class="restaurace"> => [class^="rest"] {}
      • Dle atributu a slova končící výrazem:
        <div class="restaurace"> => [class$="race"] {}
      • Dle atributu a slova obsahující výraz:
        <div class="restaurace"> => [class*="tau"] {}

  • Vlastnosti
    • Boxmodel: padding, margin, box-sizing
    • Velikost: width, height, min-width, max-width, min-height, max-height
    • Barvy: color
    • Pozadí: background, background-color, background-image, background-position, background-size, background-repeat
    • Fonty: font, font-family, font-size, font-weight, font-style
    • Text: text-shadow, text-decoration, text-transform, line-height
    • Rámeček: border, border-radius, border-style, border-color, border-collapse
    • Seznam: list-style, list-style-type
    • Stylování: float, clear, filter, box-shadow, text-align, vertical-align
    • Pozice: position, top, right, bottom, left, z-index
    • Flexbox: display, flex-direction, justify-content, align-items, align-self

  • Jednotky velikosti
    • Pevné: px, in, cm, mm
    • Relativní: %, em, rem, vh, vw
  • Grid systém, sloupce, kontejnery, breakpointy

  • Stylování elementů, pozadí, text, rámečky

  • Tlačítka, badges, skupiny, dropdown, checkboxy, radiobuttony

  • Tabulky

  • Formuláře, validace

  • List groups, Taby

  • Karty, Carousely

  • Collapse, Accordion

  • Display Utilities, Flex Utilities, Sizing Utilities

  • Navigace, Navigační lišta

  • Alerts, Modal, Popovers, Tooltips

  • Pagination, Breadcrumb, Scrollspy
  • Datové typy
    • string, number, bigint, boolean, object
    • null, undefined
    • Parsování

  • Podmínky
    • if, else-if, else, switch
    • Relační operátory: ==, ===, <, >, <=, >=, !=, !==, !
    • Logické operátory: &&, ||
    • Ternární operátor: ?:

  • Cykly
    • for, for in, for of, while,

  • Pole a třída Array
    • Metody: push(), pop(), shift(), unshift(), slice(), splice(), join(), sort(), reverse()

  • Práce s textovými řetězci
    • Jednoduché uvozovky (apostrofy): ''
    • Dvojité uvozovky: ""
    • Zpětné uvozovky (tupý akcent): ``
    • Escapování: \b, \f, \n, \r, \t, \v, \\
    • Interpolace: `${proměnná}`
    • Metody: trim(), trimStart(), trimEnd(), replace(), toUpperCase(), toLowerCase(), concat(), startsWith(), endsWith(), charAt(), indexOf(), LastIndexOf(), substring(), charCodeAt(), fromCharCode(), localeCompare(), split()

  • Funkce
    • Parametry, výchozí hodnota parametru, návratové hodnoty
    • prompt(), confirm(), alert(), isNaN()
    • toPrecision(), toExponential(), toString()

  • Date()
    • Metody: getDate(), getDay(), getMonth(), getFullYear(), getHours(), getMinutes(), getSeconds(), getMilliseconds(), getTime()
  • Výběr elementů
    • getElementById(), getElementsByClassName(), getElementsByName(), getElementsByTagName()
    • querySelector(), querySelectorAll()

  • Práce s elementy
    • createElement(), removeChild(), appendChild(), replaceChild(), insertBefore()
    • hasAttribute(), setAttribute()
    • innerHTML, innerText, textContent
    • firstChild, lastChild, firstElementChild, lastElementChild, parentElement
    • childNodes, children

  • Události, EventListener
    • onload, onfocus, onclick, onchange, onmouseover, onmouseout

  • Časovače
    • setInterval(), setTimeout(), clearInterval()

  • Canvas
    • getContext(), fill(), stroke(), fillRect(), strokeRect(), fillText(), beginPath(), closePath(), moveTo(), lineTo(), arc(), drawImage()
    • fillStyle, strokeStyle, lineWidth
    • save(), restore(), translate(), scale(), rotate(), clearRect()
    • shadowColor, shadowOffsetX, shadowOffsetY, shadowBlur
    • createLinearGradient(), createRadialGradient(), addColorStop(), createPattern()