Webové Technologie Flashcards

1
Q

CSS metodiky

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

Adaptivní webdesign

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

CSS preprocesory a postprocesory

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

AMP

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

HTML API

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

Pokročilé možnosti JS

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

JS frameworky

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

JS aplikace

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

Šablonovací a ORM systémy

A
  • šablon systémy se používají pro rychlou tvorbu webových aplikací, u kterých odděluje aplikační a prezentační vrstvu, neboli odděluje kód a vzhled, takže programátoři a designéři mohou pracovat zvlášť nezávisle na sobě
  • usnadňuje generování dynamického HTML na základě statických šablon a dynamických dat databáze
  • renderování šablon probíhá na straně serveru, klientovi odesílán hotový kód HTML
  • populární zejména při vývoji webových aplikací, kde je potřeba generovat obsah na základě serverové logiky (server-side rendering)
  • zjednodušení vývoje, údržby a čitelnosti kódu
    + jednoduchá syntax, zvýšení bezpečnosti, možnost dědičnosti šablon

př. Twig - populární šablonovací systém pro PHP, čistá a čitelná syntax
Jinja2 - Python
Mustache - minimalistický, univerzální
Blade - PHP Laravel
Smarty - PHP
Razor - C#

ORM - technika umožňující mpřevod dat mezi OO jazyky a relačními databázemi
- pomáhá řešit problém rozdílnosti OO objektů a dat, aby spolu korespondovaly
ORM poskytuje vrstvu, která mapuje objekty aplikace na řádky v DB tabulkách
- umožňuje práci s těmito objekty přímo bez nutnosti psaní složitého SQL, neboli eliminuje potřebu psaní SQL pro běžné CRUD operace

Doctrie2 - knihovna pro PHP
- podporuje různé databáze - MySql, PostgreSQL, SQLite
- silná podpora transakcí - více operací v rámci jedné transakce
- podp. lazy loading
- migrace pro updatování modelů či databází
- dědičnost - mapování dědičných vztahů objektů na DB tables

př. dalších:
Eloquent - PHP Laravel
Mongoose - JS MongoDB
SQLAlchemy - Python

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

node.js

A
  • runtime prostředí umožňující spouštět javascript přímo na serveru namísto v prohlížeči, jak tomu bylo zpočátku
  • běží na V8 enginu od Googlu, open source, platformově nezávislé
  • pro fullstack vývoj webových aplikací - nabízí nástroje pokrývající celý proces vývoje webových aplikací
  • Asynchronní událostmi řízený přístup zpracovávání požadavků na jednom vlákně. Non-blocking I/O - operace jsou zpracovávány asynchronně, bez blokování hlavního vlákna, které může pokračovat ve své práci. Event loop - stará se o zpracovávání požadavků pro jednoduchost a rychlost
  • cyklus událostí spouští I/O operace asynchronně, ty po skončení signalizují Callback či Promise pro zpracování výsledků
  • optimalizovaný výkon díky V8 enginu
  • integruje NPM - node package manager - správce balíčků pro nodeJS - jedním z nejdůležitějších nástrojů v ekosystému nodeJS, výrazně usnadňuje vytváření webových aplikací, poskytuje přístup k obrovské knihovně open-source balíčků

populární nodeJS frameworky jsou ExpressJS a NestJS.

ExpressJS - minimalistický framework, cílí na jednoduchost a flexibilitu
NestJS - pokročilejší framework, inspirovaný Angularem, používá typescript
- obsáhlý, nabízí více funkcí - pro některé případy až příliš

  • v praxi ExpressJS často s MongoDB

Při psaní článku na blog, odešleme požadavek POST na server, server (nodeJS) požadavek zpracuje a uloží data do databáze. Pokud chce uživatel článek zobrazit, pošle požadavek GET na server, načtou se data z DB, odešlou se ve formě json či html a návštěvník článek zobrazí.

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

SEO

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