Martin Zlámal [BLOG]

Základní informace o zdroji

Podtitulek Nejnovější články na blogu.
Domovská stránka http://zlml.cz/
RSS export http://www.zeminem.cz/rss

Systémové informace o zdroji

ID 455
Jmenné ID martin-zlamal
Články ručně přidává správce systému NE
Články jsou schvalovány správcem NE
Titulek zdroje stahován z RSS exportu ANO
Kontrola aktuálnosti proběhla 28. března 2017 06:15
Návratový kód HTTP 200
RSS export naposledy zpracován 28. března 2017 06:15
Kontrola aktuálnosti naplánována na 28. března 2017 06:45

React + Redux - Apollo = FapFap

Na konci minulého roku jsem začal něco jako virtuální seriál o React vs. PHP aplikaci. Včera jsem na Poslední sobotě byl upozorněn na to, že už asi nepokračuju. To není pravda – pouze jsem je přestal číslovat… :) Po GraphQL, vyřešení N+1 problému,…

Martin Zlámal [BLOG] | 26. 3. 2017 16:25 | # Nové 

Jak na lokální CSS pro React

Když jsem opouštěl koncept webových komponent a přecházel jsem k Reactu, tak mě nejvíce mrzelo, že přijdu o všechny zajímavé vlastnosti shadow DOMu. Ve webových komponentách se to má tak, že jak JS tak CSS jsou součástí jedné šablony a neovlivňují…

Martin Zlámal [BLOG] | 27. 2. 2017 11:10 | #

4 způsoby práce s formulářem v šabloně

Velká část článků na tomto blogu jsou reakcí na nějaký reálný problém. Nehledě na to, kde jsem (třeba na včerejším React workshopu), tak odpovídám na dotazy ohledně Nette. Je to v pořádku, rád pomůžu. Jsou však dotazy, které se neustále opakují. Toto je…

Martin Zlámal [BLOG] | 26. 2. 2017 12:50 | #

Hexagonální architektura

Struktura webových aplikací je něco, co se neustále mění a stejně s programátorem i zdokonaluje. Před více než rokem jsem se o jedné z možných struktur PHP aplikace trošku rozepsal. A teď si ukážeme další alternativu, která je k proklikání zde. Nejedná…

Martin Zlámal [BLOG] | 17. 2. 2017 10:25 | #

Řešení N+1 problému v GraphQL

Na 85. Poslední sobotě v Praze jsem měl workshop a přednášku o GraphQL. Na konci přednášky padl velmi dobrý dotaz ohledně toho, jestli náhodou netrpí GraphQL v určitých situacích N+1 problémem. Načež jsem odvětil, že to není problém GraphQL, ale že ano…

Martin Zlámal [BLOG] | 1. 2. 2017 17:51 | #

Vy ještě nemáte svůj superprojekt?!

Nenechte se ošálit. Superprojekt je skutečně oficiální název pro Git projekty, které virtuálně obsahují další podprojekty (tzv. submoduly). Jedná se o skvělý způsob jak vytvořit jeden velký repozitář a spravovat v něm mnoho knihoven. Následující text…

Martin Zlámal [BLOG] | 20. 1. 2017 11:10 | #

GraphQL

Z minulého dílu by mělo být všem jasné, jak jsem se dostal až sem. Od PHP komponent k webovým komponentám, které vlastně nejsou skutečné webové komponenty, ale jen kus JS kódu, který implementuje vlastní způsob webových komponent – React. Jsem…

Martin Zlámal [BLOG] | 31. 12. 2016 12:35 | #

Muskulaturní rozšíření DIC

K čemu je DI rozšíření v Nette a jak se takové rozšíření píše už víme. Teď se podíváme na způsob, jak pracovat s takovým rozšířením na úplně nové úrovni. Tento článek velké spoustě lidí změní způsob práce a aplikace budou najednou o level výš. Jak řekl…

Martin Zlámal [BLOG] | 23. 12. 2016 15:10 | #

Od komponent zpět ke komponentám

On: A budeš o tom psát nějaké články? Já: No tak jako mohl bych… :) …a tak tedy začínám krátký seriál a uvidím kam se za těch pár dílů dostanu. Jednou z bezesporu nejzajímavějších vlastností Nette Frameworku jsou komponenty (myslím potomky…

Martin Zlámal [BLOG] | 16. 12. 2016 19:25 | #

Testování korelací v MATLABu

Čím více mi proteklo kódu pod prsty, tím více mě testování baví. Nebaví mě psát super skvělé testy, ale baví mě brát testy jako součást vývoje. Mnohdy je to dokonce nejpohodlnější způsob. Na následujících řádcích ukážu jak se dá napsat algoritmus pro…

Martin Zlámal [BLOG] | 3. 12. 2016 15:20 | #

Tester: vlastní Output Handler

Output Handler umožňuje změnit finální podobu výstupu z Nette Testeru. Výstup může vypadat například takto. Osobně se mi tento výstup líbí víc, protože místo teček rovnou vidím co se skutečně spouští. Může se to hodit a sám jsem se přistil, že občas…

Martin Zlámal [BLOG] | 6. 11. 2016 19:10 | #

Automatický render prvků při manuálním vykreslování formuláře

Je čas na nějakou tu Nette divočinu. Podívejme se pod drobnohledem na to, jak funguje vykreslování prvků formuláře. Nejprve si vytvoříme úplně jednoduchý formulář, který bude obsahovat jeden prvek: protected function createComponentContactForm() { $form…

Martin Zlámal [BLOG] | 8. 10. 2016 13:40 | #

Shhhh - vysílá se speaker

Takové bylo téma celého Webexpa 2016 – shhhh. Nebo alespoň páteční části. Pro ty nejlepší a nejzajímavější řečníky byl totiž připraven velký sál, kam se podle cedulek na dveřích vejde až 2500 lidí. A nápad to byl zcela zajisté skvělý. Ovšem jen do…

Martin Zlámal [BLOG] | 26. 9. 2016 12:25 | #

10 obsesí na WebExpu 2016

Obsese ž. kniž. chorobně utkvělá představa, myšlenka; med. nutkavé jevy, nejčastěji myšlenky, popudy k jednání apod., jež jsou nesmyslné a bezdůvodně ovládají mysl nemocného, ačkoliv se je snaží potlačit Obsession it's kind of like a passion for…

Martin Zlámal [BLOG] | 22. 8. 2016 12:10 | #

More awesome Monolog for #nettefw

Nedávno mi přišel požadavek na vytvoření takového jednoduchého způsobu, jak logovat uživatelské akce – konkrétně zatím jen přihlášení uživatele (do databáze). Mohl jsem to udělat jednoduše a prostě to někam do kódu nahákovat. A nebo jsem to mohl udělat…

Martin Zlámal [BLOG] | 8. 8. 2016 12:20 | #

Dva šablonovací systémy zároveň

Možná pracujete na nějakém projektu, který používá jiný šablonovací systém než je Latte, ale Latte se vám natolik líbí, že ho chcete používat také. Nebo naopak používáte Latte, ale [doplň název šablonovacího systému] se vám natolik líbí, že ho chcete…

Martin Zlámal [BLOG] | 31. 7. 2016 9:45 | #

Testbench 2.3 is out (finally)

Yeah, you heard that correctly. Testbench 2.3 has been released and it brings a lot of new features. I don't want to write about small bugfixes but about real improvements in testing environment. There was always one important mission in Testbench – to…

Martin Zlámal [BLOG] | 24. 7. 2016 15:00 | #

Fix compatibility with Nette 2.4

Právě v těchto dnech přichází další významná minor verze Nette balíčků do vašich vendorů. Událo se velké množství změn a to zejména pod kapotou. To si však s sebou nese určitou daň a tou je potřeba učinit pár úprav v kódu, které zajistí kompatibilitu…

Martin Zlámal [BLOG] | 19. 6. 2016 15:35 | #

PSR-4 autoloader aplikace

Nikdy jsem moc nelpěl na PSR-FIG pravidlech. Částečně možná proto, že jsem je nikdy moc nechápal, částečně možná proto, že nemám rád, když mi někdo něco nutí. Nekterá pravidla jsou ale docela fajn (i když se vždy něco najde). Jedním z jich je PSR-4:…

Martin Zlámal [BLOG] | 17. 4. 2016 13:36 | #

Magie zvaná mapping presenterů

Ona to vlastně ani není taková magie jako to není nikde pořádně popsané. Než se pustím to obludných složitostí, bylo by vhodné zmínit se co to vlastně mapping presenterů je. Viděli jste někde toto v konfiguraci? application: mapping: *:…

Martin Zlámal [BLOG] | 3. 4. 2016 8:20 | #

Rozšíření pro DIC

Jednu z věcí, které jsem zde na blogu moc nepopsal jsou rozšíření pro DIC (Dependency Injection Container, potomek Nette\DI\Container). A protože se chci vrátit jednodušším článkům, zaměřím se na úplně základy. Jaká je motivace k psaní rozšíření DIC a…

Martin Zlámal [BLOG] | 12. 3. 2016 16:45 | #

Jednoduché testování pro úplně každého

Konec slibů, článek je tu. Tentokrát se rozepíšu o nástroji Testbench. Testbench by měl pomoci s rychlým testováním Nette aplikace. Je zaměřen spíše integračně a vhodně doplňuje Nette\Tester, který je zaměřen spíše jednotkově. Myšlenka, která stála za…

Martin Zlámal [BLOG] | 6. 2. 2016 20:50 | #

ZČU - Nette je fajn, ale máme raději Javu

Dnes jsem měl opět tu čest přednášet studentům předmětu KIV/WEB na fakultě aplikovaných věd (ZČU) o tom, jak se dají dělat webové aplikace pomocí webového frameworku. Je to vždy skvělý zážitek. Jako vždy sedělo v publiku (doslova) pár lidí, kteří už…

Martin Zlámal [BLOG] | 9. 12. 2015 18:51 | #

Znovupoužitelné části formuláře

Před nějakým časem jsem psal o tom, jak vytvořit znovupoužitený formulář. Nejedná se o nic jiného, než o správné navržení a následné použití komponent, tedy potomků UI\Control. Pokud bych měl být upřímný, nemyslím si, že se formuláře nějak často na webu…

Martin Zlámal [BLOG] | 24. 11. 2015 23:50 | #

Od indexu až po presenter

Když jsem se učil pracovat s Nette Frameworkem, musel jsem v začátcích hodně přivírat oči a říkat si „prostě to tak je“. Hodně věcí bylo zahaleno do tmy. Teď už to tak naštěstí není, ale stále se stává, že mi někdo napíše a děkuje za poodhalení a…

Martin Zlámal [BLOG] | 15. 11. 2015 19:50 | #

Ještě lepší struktura Nette aplikace

Každý, kdo postavil pár aplikací, musel vždy řešit ten samý problém. Jakou strukturu by měla aplikace mít? A co když se začne projekt rozrůstat? Měl bych se držet toho jak to dělá sandbox (resp. web-project)? Postupem času jsem dokonvergoval k relativně…

Martin Zlámal [BLOG] | 11. 10. 2015 16:50 | #

Crazy JavaScript PDF generator

Kdysi mi někdo řekl, že správný programátor by měl být tak trošku děvka pro všechno. Nestačí jen umět PHP. Nestačí jen umět JavaScript. S tímto názorem jsem od samého začátku souhlasil. Ostatně je to jeden z důvodů, proč se občas zajímám i o věci, které…

Martin Zlámal [BLOG] | 3. 10. 2015 12:55 | #

Návrhový vzor Legacy code

Asi každý se k tomuto návrovému vzoru jednou dostane. Zatím jsem vždy takovou práci striktně odmítal, ale tentokrát šlo o jinou situaci a svolil jsem k poklesu od OOP frameworku ke špagetě. Ačkoliv má pojem „legacy code“ celou řadu definic, já osobně…

Martin Zlámal [BLOG] | 30. 8. 2015 15:20 | #

Hierarchický router

Tento článek volně navazuje na předchozí. Zde jsem ukázal, jak vytvořit routy tak, aby bylo možné mít zcela libovolnou adresu a routovat ji na jakoukoliv akci v aplikaci. Dnes to trošku vylepšíme. Přidáme totiž další dva požadavky s tím, že první je ten…

Martin Zlámal [BLOG] | 11. 7. 2015 14:40 | #

Dynamické routování URL adres

A když říkám dynamické, tak tím myslím opravdu kompletně. Jinými slovy to znamená, že chceme jakoukoliv cestu za doménou přeložit na jakýkoliv interní požadavek (Application\Re­quest). Kousek routovací tabulky tedy může vypadat následovně: / =>…

Martin Zlámal [BLOG] | 5. 7. 2015 14:55 | #

Při poskytování služeb nám pomáhají cookies. Používáním webu s tím vyjadřujete souhlas.