tak to je to bylo psaní webových aplikací
když se podíváme
schválně já jsem tady viděl pár zástupců jo tak se dá psát skoro ve všem
a tak a nejznámější asi schémátko
tom každej tvrdí že umí psát
a pak to pole to vypadá
a je to takovej mix umí to všechny možný syntaxe můžete vtom svátek operu jako
v céčku
a lidi čtou píšou všemožně
pak a sem tady vydala jako zástupce ruby on rails
což bylo strašně cool pár zpátky na všechny sou začínaly psát
a o tom a
spousta různých generátorů takže si k tomu sedne té řeknete chci ve a vono vám
to vygeneruje celej ne
a první ty jsi ten webu seznam a chcete formulář horvátový ne spousta různých souboru
ty jsou někde
a najednou máte spousta různých věcí a
aspoň já sem vám
narazil na to že pak nevím
co mám dělat až jedna verze a jak to budu mít inovovat dlouhodobě
a webový to většinou používá je takový ty viděl metodě
prostě člověk něco udělá a my si to zase zahodí a udělá to znova
takže ta doufám že jsem se teda pořádně jestli to bych bys tu
a dneska
dneska strašně cool je to děs
což znamená že všechno se to když javaskriptu
protože javaskriptu ten umí každej
no tak a já se přiznám že já jsem spíš cc plus programátor
a kdo z vás dělá ten tady
různejch tě těch technologiích a líbí se vám
tady všichni derby a jednou se to líbí
sebe
a docela se nepíše tečka c plus call
jo tak
takže půlka místnosti
tak a já jsem se dostal vývojáře chce čtverce plus plusku cítil tak jako diskriminovanej
když sem měl psát weby
a zjistil jsem že to jenom můj vlastní pocit že se takhle nemluvil strašně dlouho
a jedna z věcí co válci a to je zcela lvaci neska přednes teda ukázal
je tntnet
co vše webový sem vole a ty můžete psát i weby a můžete psát konce
plus plusku
takže
to je ta
super věc
má to nějak interpretovat si systém po byste psali jindy
s čímkoliv jiným tak pravděpodobně
lehce pochopíte to funguje
má to
a nějaký routování
já si to pamatuju nejvíc
toho podělaného s
dostal specifikovanou ty když se přijde nějaký vůl tak co se má stát a do
se má volat kdo to má fungovat
tak to je to je taky
a tu aplikačního výkonu trestu píšete chce plus plusku to vše super všichni to marný
píšeme jsem přeci zjistil
a
na míle že roce plus plusku je spousta knihoven takže můžete používat všech měst
skoro všechny systémový knihovny protože celej náš linuxy na co nechte plus plusku ta nebo
nechce plus plusku a céčku
a se plus plusku céčku můžete volat jednoduše
takže spousta knihoven je k dispozici
to školy výhodné ještě potom tu svojí aplikací musíme zkompilovat
abyste si mohli spustit
výhoda to je že potom ta aplikace běží docela svižně
a
na nevýhoda je že
no výhoda nevýhoda
nebavíme se to trošku jinak než klasický webový aplikace klasický webový aplikace vy přijdete k
tomu vepředu mám tam je píše spousta ti
na tu stránku a vy potom nedáte co a
tady uděláte chybu a zapomněli ste někde nějakej point
jakou adresu špatně a to prostě smrti
udělala to kolega mi si otevřete kdo byl a hledáte
a další nevýhoda trošku nevýhoda
je že je s přístupu a histon vás dva
možný výstupy s ty kompilace
moci zkomprimujete
nějakou to potom spustíte a sou časy tím jinak je web server a potom běží
a já to tenhle
nebo druhá možnost je že si necháme zkontrolovat a sdílenou knihovnu
a pak si spustíte web server ten mercedesy načte tu sdílenou knihovnu
a byste zapomněli nějaký link je ovšem i tak musíme načte proč jsou nepodaří nesouhlas
všechny symboly
takže poznáte co ste tam špatně udělali při kompilaci
ale by se vám to povede tak ten nepřenositelnost jenom k němu načte
a vy si můžete prohlížet svá váš krásný ne
aha podíváme se trošku do toho nepletla cíl systému
pokud s tady přeli jako jenom webová aplikaci takle diplomy víte že trysky to vypadá
takže tam máte hotovo
a pak se máte nějaký zvláštní tam být rizika je to a to vše je
to byl
tady zavolám a kol nebo ruby nebo
pantem cokoliv jinýho
tak tady se nedá pátek zajímavý stavu
a jeden z nich je na začátku je tam nějaký
prvé co jsou typicky věci který chcete
až se zpracovat úplně nejvíc na začátku
takový věci jako include i a define i
pak tam jsou ty zajímavý tady
co vše
co se proto
a nebo takovej skácel i tak
a mezi tyhle ty dva tejdny tak mezi ty vkládáte ten tak plus plusku bojkot
si mastit já tu logiku ty aplikace
pak tam jsou
a typicky potřebujete občas nějaký boty od uživatele
tak tady sis to tady ajax
dají se dá specifikovat že chcete jenom a gnome type jsou po os nebo pět
nebo původ nebo něco takovýho a tam napíšete jenom jména pro mě nech
a ten fail psala vám do těch proměnných nesype ty data
a vy potom můžete dál vchodu používat
samo od sebe to umí pro vás
sessiony
zase
udělat dva tady mezi tohle zboží takle nadefinujete proměnný a ty proměny jsou validní v
rámci sessiony
no a pak vobčas dyž service pracujeme s něčím
a dostáváme nějaký data tak bylo fajn je i uživatel zobrazit
na to existuje takovejdle ta
venčit kódová
a do toho napíšete nějaký výraz
a výsledek tohoto výrazu se
dveře do tý stránky
takže tohle výstupu bude nahrazený hodnotou toho data
případě
můžete to udělat i podmíněný
když už se menujou třech proměnné jich tak proměnných je spousta různých typů
můžete mít různý
a
s koupi po kterých sou ty proměnný platný
vona si
toho tntnet se píše všech to webová část do
se souboru který se potom překládají jo
co popr
a to se potom se kátým kompilátor na ty sdílený knihovny
tak můžete mít rámci jednoho to recept soubojů na definováno víc komponent
při potom můžete vyvolat
tak a proměnný můžete mít platný buď v rámci tý komponenty nebo v rámci stávky
což je ten tak se prober soubor na vy můžete být platným globálně
dá se může lišit
jestli ta proměnná má žít
jenom v rámci jednoho requestu když někdo řek že chce tu stránku
nebo jestli má žít v rámci tý session jak jsme se jak se obezditelní to
podporuje
samo pro vás pes velký námahy sessiony
a nebo můžete říct že máte třeba proměnnou která že jenom v jednom threadu
a to se hodí když potřebujete dělat
a
například spojení s měřit s někým jiným
a byste museli řešit mutexy a podobný věci
a nebo potom máte globální application wide proměnný
u ty jsi ty mutexy musíte řešit protože všechno tohleto běží mu ty té době
a
jo když je to můžete mít obsahu silnější všechny věci
tak podíváme se na kousek
na kousek kódu
tak a tady začínáme nějakýma komentářema
pak tady mám jeden argument který je name
to je ten
to je parametr výchozí typ je stejný
takže když já zavolám
tuhletu stránku otazník že ti name rovná se
ahoj tak tady do name se mi vloží ahoj
a pak se tady skončil s těma argumentama a pokračuju
klasickým na tom jo a to byl hlavička
ta je to
normální klasický je to mel
path chci vložit nějaký zajímavý data
tak tady použiju ten kouzelný ta
a vložím a
pokud že je to čtyři tak vložením word pokud to není jen ty ženy
normální zkrácená
céčková syntaxe
a pak už tady můžu zase napsat nějakej formulář zas nějaký litoval
že ta té nějaký
nějaký view
tady se může na stránkách a cena vložit ty snippety kde potřebu
pokud potřebuju tak můžu se tam vložit ten tak plus kód tam už tam i
nějaký ify a celý části tohoto mel zaifovat
nebo vložit do nějakých switch u a podobně
tím
a co to logiku napíšu o
a napíšu ještě plus plusku a nemusím přemejšlet
jak se dělaj takovýhle věci nebo
jak se to děláte hádku
nebo nedej bože javaskriptu
dobrá otázka a otázka byla pro záznam a jestli se u ty hodnoty escapovaný
můžou bejt obojí
a výchozí stav je že se escapujou všechny znaky
ale když se tadyhlec dá ještě jeden dolar za ten první dolar za ten první
dolar tak se to vrací měl zpětného escapovaný
takže můžete vracet
jak
a bezpečný
bezpečný string
tak nebezpečnej ty může obsahovat nějaký je to na značky
pokud to potřebujete
tak a
vy si chcete napsat
samostatnou aplikaci a nechcete používat tu sdílenou knihovnu
tak se dá použít takovéhle krátkej kód
chci ve skutečnosti akorát
spustí ten vytvoří ten server
řekne mu ať poslouchá nějakým portu nastaví se tam nějaký mapování a spustí se to
to je všechno pokud chcete spustí po chcete binárku která bude používat vaší sdílenou knihovnu
ta
teď řeší to slinkujete všechno dohromady takže ten musíte požádat o změnu
jak existuje
přímo binárka jmenuje se tntnet
a ty předáte konfigurák řeknete tomu to mapování
a on to podle toho natáhne ty sdílený knihovny a bude to řešit váš
takle vypadá čast toho konfiguráku která se zabývá tím routováním je to bohužel xmlko
ale umí to nějaký některý zajímají věci
když máte nějakou komponentou
tak a
tak často tím loginem tak to s ta často tím zavináčem tak to jsou ty
na ty ec tp soubory
a co tam můžete udělat je že vy nemusíte zpracovat celý ten request nemůžete říct
teď sem něco udělal
a u si nemyslím že tohleto je pro mě zajímavý pošli to někomu dalšímu
a tím některé ty
moduly s řetězíte za sebou tak můžete dělat složitější funkcionalitu
no to sem se pokus o ukazatel to vedoucí proto routování
jako první modul tam a mluví
a ten se zavolá jenom pokuď url na tom se přistoupí je slečno vy
to vykreslí nějakej loni bylo tam se uživatel přihlásí
a
pak může jedna
jednou byl
a ale když tam bude chtít poslat někde a tak se může nastavit nějaký proměnný
session
například
abych věděl že uši přihlášenej
ale když tady potom už nastavit že když pude na jakoukoliv url a publicista udělat
po hospůdce nebo delete
co jsou takový ty typický akce vést aby který něco modifikuje o
takže k můžete ty věci ty dovolím jenom ty uživatelů ty jsou zalakovaný
tak to je použijou no a napíšu si nějakou vězte u pojmenoval jsem outcome wifi
tak a se podívám
vydržela to zavolali
není tak a za ten request
napíše tam
a cesty najít
a cestného někam jinam a řekne
jo toto byl
request pro mě
pracoval jsem to
vepředu šli jsme řešit
já tím že lze odpověď
a nebo
tahleta komponenta takto ověřit i
a credential s
jestliže uživatele opravdu zalhal i
a řeknem
dobry u se ujal šel jsem potřeboval
nikláren
a dal filtrech je se zajímat o že to někomu dalšímu
a tebe převezme pořadí další komponentu
která večer ty pravidla
a tady já použil další komponentou protože to je to se nějak i nějaká ukázka
ze stojí chlapi
a povidám eště myslel
tak já tady vemu kompletů že jsem
ten a všechno co udělá je že mi nastaví že
má jen ta je a
takový lety a
prosím pátek se tom jak sto to moc to pro menuje a prostě nastaví že
odpovědi že jsem
a
já to je to budu můžem si dělat ty naše komponentách a prostě botech a
všechno já velmi nastaveny repre že takže jsem
tak a bez databáze
jsem nevěděl ale těžko
a zem tomu že databází je spousta
tak existuje součásti toho ty entý světa
i další zajímavá knihovna to se jmenuje ty entitní d
a ta
nabízí databázová abstrakci
na pluginy pro sqlite mysqlka postgres
vojtou a mysim že ještě silnějšího
a
zase je tam
hezký co je plus plusku i aby
má to všechny takový ty featury který byste chtěli
cachování purpose statements
má to dokonce je konečném pull takže nemusíte mít
pro každý request zvlášť vytvářet
a připojit databázi zase uzavírat
řeknete že chcete
hašovaný spojení a moc se podívat do polišů půli stav a něco volný no když
nemám potvrzený
když má
použije starý až s ním skončíte prvé se vrátí do konečníku
nemusíte nic řešit
a zároveň to má uši napsaný hezký funkce která pomůžou
ty výsledky těch se letech
zkompletovat
na ty víš typu dokonce existuje i možnost napsat si vlastně jako metody pro svoje
vlastní datový typy
na to se používá je takový ty
můj ty větších a nutí mě čítka ty máte všichni ani určitě chce plus k
a
a na to i integrovanou podporu pro transakce která tak vypadá docela hezky
podívám se ne jak ty
tak zapo
tady a
když se což bude nějaký databázi tak a abych tam nemusel řešit na začátku a
vytvářet si nějaký objekty s nějakým speciálním typu a neřešil se to přes dědičnost
a já tam řeknu že url je mysql
a nebo tam řeknu že bojuje sqlite
a že tě podle toho to stringu se mi to připojit i strany databázi aby
se to chovat správně je to je ta databáze očekává
použiju nějaký konečný s toho konečnou toolu připojí se
a pak si tady
na čtu
cache vanou prefer statement
doplním tam
za
za tyhle ty proměnný nějaký hodnoty nechám sto spustit
a kromě toho setting ta set stream existujou i
myslím že
se taky určitě je
kdy se využívá chce plus plusku jo přetěžování že prostě podle dalšího typu on pozná
jakej typ používáte a nemusíte tam explicitně vypisovat on to je spíš pro kontrolu
transakce
vytvoříme si obě transakce předáme tomu
konečně a na konci to call komitne
dobrý náhodou se stane že tam je nějaká chyba
vypadne nám výjimka a tak se všemi se
ahojte
no aby toho nebylo málo
tak jo a objednejte ty knihovny jsou
používají spousta věcí který by se vám mohli hodit i zvlášť
když zrovna nepíšete
nebo nepotřebujete se připojí databázi
a všimněte ty zajímavý funkce
jsou ve zvláštní knihovně tak snadné sejících stůl s
a pokud píšete
jenom ani se plus plusku aplikaci
tak určitě stojí za celý podívat
takže já říkám je tam spousta zajímavých věcích ty autoři toho tntnet u
použili na napsání jak to tntnet tak to ti líbí
zajímavých a vlastnosti bych nedával například tetku nebo nějakou abstrakci na strana
a
je tam
co tam nástroje pro serializaci
na čtení a psaní james mnou se smečka xmlka
jsou tam naimplementovaný expiry
a i nějaky
jak mi ty základní věci který
jste si každej určitě už
stokrát implementovali samý nějak i pak se konfiguráků
a nebo nějakej jednoduchý mobil
ta
co dál hlavní stránka je
tntnet do toho
a pokud chcete psát i velmi
tak a velmi užitečná je manová stránka moc
co pro kde sou vyjmenovány všechny ty taky ne jenom ty boty jsem mluvil já
a je jich tam ještě víc
a
díky tomu zjistíte co všechno můžete mezi to je tohle mixovat aby jste dostali
to funkce letuju kterou vy byste zrovna chtěli
a ten poslední slajd
teď jestli máte nějaký otázky nebo všimli jste té jít domů psát ten plus plusku
ji webový aplikace
tak dámy a pánové nestyď nejsem nějaké otázky tntnet
tak počkáme na mikrofón známe to žena
já bych se chtěl zeptat které sem děkuju cesty dals otce přestávce kdy
odkaze se s velkou spoustou problém že co vykonali testovat je mi to i
já jsem vo co xmlka
a
kolik to tak zhruba zpráva zvládne i nebo jako knihovnu to jak a kým tam
ty
rastrová xmlko
práce z xmlka má takový používali ten cejch sextus protože
chceme si na tu knihu už napsali
jak to se
tohleto týče tak dál
nevýhoda se plus kam oproti céčko je že přece jenom je to trošku jednodušší a
trošku hůř se vtom člověk sám sebe oběsí
protože nemusíte použít za ptal
tak pojď ty jaké můžete používat chcete jestli vy nemusíte
dynamického chovat paměť
většinou se nestačíte
se dočetl s proměnýma ve funkcích nebo se stane je staveným a kontejnerama jako sou
vektory
takže dyž čověk píše tom se plus plusku oproti céčku
tak uši nemusí tolik se vás toho že tam je něco zapomněl řekni mu to
spadne protože přistupuje k a kam neměl něco co už
nalakoval nebo ne nalakoval nebo i je zase nebude zrovna na dálku a
a co se výkon týče já jsem se mysim bavil s nějakým člověkem tyto
dělalo a
on říkal že na nějaký testy
a že to je rychlejší my statickej ne
a
proč tak můžeme vy si je za a že všechno se to zkontroluje no ty
knihovny
a jedna z věcí toho to umí je že to umí koupil vy statickej obsah
to znamená je ta jak se dá zkontrolovat a případně ty knihovny a bude součástí
tý knihovny java script taktech
a všechno že tam před chystaný a když přestoupíte tom vepředu
tak už vám to akorát dá zpátky nemusí chodit na disk
nemusí dekódovat ten že p nebo
zjišťovat co to je zač všechno už tam je to s dělat je zase nanic
načte všechna dva roky
spíš se to a dvě
tak že ne tím se spousta věcí řeší na věc je že nemusim je že
žádný jiný nepsal to samo o sobě umí web server
za to je ssl certifikáty
ty konfiguraci se dá nastavit omezení na počest jedu ná
a myslím že na počet nějakejch requestu
a dá se to jako mezi se si ušetřil nějakýho toho a pláče není že
jim s a takovýdle
jo
eště je to velká se to stalo my lidi co je s na tebe holky
tak ulice uvidím
ty
vy vlastně jste šel jsem ale ve tu chytrého sem
a vás rychlosti třeba já a jestli request to tady co tady ty data nějakých
tisíc request statickej ve slavné nějaký s nacisty requestu voni si dělá co chce to
pásek vyfiltrovat dvacet tisíc takže to
rychlejší
ale problém je právě to přeportování těch kdo
když jsem se díval že tam jsou třeba ty pravidla jo proto tak si pracovat
místo toho bude potřeba zvědavá
jakým způsobem to řešení třeba tam těch jak ve vztahu s je fakt jako holka
mladá tak to jako přeskakuje s těch requestu dál a dál čekal smysl nejsem
ješte požadavek
a
jak je tam ten ji dali
jak je to udělaný vevnitř nevim
a to jsem jako se načítá jenom při startu to vepředu
a případně dá se tam když se čili a to statickou nějakou tak se tam
teda ty věci ne nastrkat já osobně bych očekával nemíříme nějaká
hash mapa nebo něco takovýho
a dál
funguje to dokuď první dokuď první ten k ty meče nevrátí něco jinýho než deklaran
tam a na konci botě defaultně když a napíšete interface z pece pod a nebo
je tam jedině řádek teďko jo kouknu
tak se vrátí na co to pro oukej
což znamená takovýto městě nebo kolik to je
a když tam explicitně dáte je to bude koalice kůže další pravidlo
takže ve výchozím stavu to používá jenom jednu ztrácí svou ale ne se s tím
měla pomoci tolika jen takovýdle kouzla a přiznám se jsem nezkoušel jak moc to zpomaluje
když tam může být sekundu
já jsem chtěl ukázat že
se teda že stáhne na použít a osobně jsem to
sobě mi to strašně ulehčilo práci a strašně se mi to líbilo strašně se mi
to hodilo
a jak
já jsem vám také
a máme čas
který nám říká konec rozhodně doporučuju pokud máte nějaký dotaz tak po setkání mluvte michala
a vyždímejte z něho co můžete
a
já nevím jak máme místa přednáška líbila zjistil jsem že pokud se někdo bude cítit
skenerem
nebo prosím dostatečně dlouho
pak
takže
co se týče céčka tak má taky můj názor na tričko defakto mainstreamu proti zvýšených
rukou
avšak zase pokud využíváte céčko tak se dostatek zajímavým věcem nic jiného vám taky nezbývá
aspoň todleto a za další michal to je takový ten typ člověka určitě jste to
zažili byste na něčem přemýšlel něco ste řešili a intra jste se na s tím
říkala jste brečel ste a potom příde hele vyzkoušej tohle jako a namísto dvanácti a
čtyřkou výhod textu tak to máte na pár řádků jako takže
pojď já jsem přednáška michala
slyšíš marcela