0
Už dlouho to viselo ve vzduchu…
11. 5. 2014
A pak se to stalo. Nette Framework byl rozdělen na malé části.
Nette Framework byla vždy rodina spolupracujících členů.
Laděnka
Asi nejstarší je Nette Debugger, nebo-li Laděnka.
Protože cizinci neumí říkat ď, přejmenovali jsme jí na Tracy.
Tr...
Tracy má dva klíčové úkoly:
1) POHODLÍ: zpřehlednit málo čitelné chybové hlášky PHP…
…do této podoby (kdo dnes tuhle obrazovku neznal?)
2) BEZPEČNOST: zabránit probublání chybových hlášek v produkčním
režimu, protože mohou obsahovat citlivé údaje, včetně hes...
Jakmile totiž vaše aplikace vypíše něco podobného,
bude v bezpečnostním auditu ohodnocena nula špačky z pěti.
Latte
Toto je pán, co pije Latte.
A Latte, stejně jako Tracy, myslí na pohodlí a bezpečnost. Příklad?
Většina programátorů neví, jakou escapovací funkci použít v uvedených
případech. A ti co ví, se mohou splést, nebo na esca...
Latte tohle řeší automaticky. Navíc brání vzniku XSS třeba i kontrolou
vypisovaných URL. Psát šablony v Latte je velmi poh...
Tracy a Latte (nebo další členy Nette rodiny) lze a dokonce je záhodno
použít prakticky na jakémkoliv webu. Jenže to zname...
ZendoviAle je to problém mentální. Pokud chci randit s Tracy, nechci k sobě
stěhovat celou její rodinu. Zejména, když už j...
Rozhodli jsme se vyjít programátorům vstříc a rozdělit
členy Nette rodiny do samostatně použitelných jednotek.
Nette
TesterPrvní osamostatněný byl Tester, nástroj pro testování Nette. Což bylo
snadné, protože záměrně nikdy neměl s Ne...
Nette Tester je dnes plnohodnotný testovací nástroj,
který mimo jiné spouští testy paralelně, a hlavně má hezké logo :-)
Je integrován taky do poslední verze NetBeans.
Nette
Object
Další dělení však představovalo obrovský technický problém. Příklad za
všechny: třídy v Nette dědí od společn...
Primárním posláním NetteObject je zamezit překlepům,
které PHP jinak zamlčí a dají se odhalit jen statickou analýzou.
Nebo pomocí NetteObject, které vás za každý překlep zpraží pohledem.
Jenže jak mít stejnou třídu v každé samostatné jednot...
Rozdělení Nette bylo proveditelné teprve ve chvíli, kdy se
v PHP (konečně) objevil široce respektovaný balíčkovací nástroj.
COMP-
OSERStal se jím Composer.
Asi nejdůležitější počin posledních let. Seznamte se s ním!
nette/application
nette/bootstrap
nette/caching
nette/component-model
nette/database
nette/di
nette/finder
nette/forms
net...
nette/application
nette/bootstrap
nette/caching
nette/component-model
nette/database
nette/di
nette/finder
nette/forms
net...
composer require tracy/tracy
Instalace nebo aktualizace Tracy je díky Composeru
otázkou jednoho příkazu. (Tracy ale můžete...
A co se mění pro spokojené uživatele celé Nette family, kteří ji chtějí
používat v celku jako dosud? Pro ty mám dobrou zpr...
Nadále můžete celý balík stáhnout na webu.
Jen jsme začali vynechávat z názvu slovo framework.
composer require nette/nette
Stejně tak ho můžete instalovat pomocí Composeru.
11. 5. 2014
Pro tyhle uživatele bylo 11. 5. 2014 normálním dnem v roce :-)
Ale pokud udržujete starší projekt v čistém PHP...
<?php
TracyDebugger::enable();
…nebo pokud používáte Zend Framework či programuje pro WordPress,
můžete teď hned udělat ně...
Děkuji za pozornost.
@geekovo – @davidgrudl – @netteframework – #nettefw
Upcoming SlideShare
Loading in...5
×

Nette: jak rozbít atom?

3,982

Published on

Published in: Software
0 Comments
7 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,982
On Slideshare
0
From Embeds
0
Number of Embeds
16
Actions
Shares
0
Downloads
5
Comments
0
Likes
7
Embeds 0
No embeds

No notes for slide

Transcript of "Nette: jak rozbít atom?"

  1. 1. Už dlouho to viselo ve vzduchu…
  2. 2. 11. 5. 2014 A pak se to stalo. Nette Framework byl rozdělen na malé části.
  3. 3. Nette Framework byla vždy rodina spolupracujících členů.
  4. 4. Laděnka Asi nejstarší je Nette Debugger, nebo-li Laděnka. Protože cizinci neumí říkat ď, přejmenovali jsme jí na Tracy. Tracy
  5. 5. Tracy má dva klíčové úkoly: 1) POHODLÍ: zpřehlednit málo čitelné chybové hlášky PHP…
  6. 6. …do této podoby (kdo dnes tuhle obrazovku neznal?)
  7. 7. 2) BEZPEČNOST: zabránit probublání chybových hlášek v produkčním režimu, protože mohou obsahovat citlivé údaje, včetně hesel.
  8. 8. Jakmile totiž vaše aplikace vypíše něco podobného, bude v bezpečnostním auditu ohodnocena nula špačky z pěti.
  9. 9. Latte Toto je pán, co pije Latte. A Latte, stejně jako Tracy, myslí na pohodlí a bezpečnost. Příklad?
  10. 10. Většina programátorů neví, jakou escapovací funkci použít v uvedených případech. A ti co ví, se mohou splést, nebo na escapování zapomenout. XSS
  11. 11. Latte tohle řeší automaticky. Navíc brání vzniku XSS třeba i kontrolou vypisovaných URL. Psát šablony v Latte je velmi pohodlné.
  12. 12. Tracy a Latte (nebo další členy Nette rodiny) lze a dokonce je záhodno použít prakticky na jakémkoliv webu. Jenže to znamenalo připojit celý framework. Což technicky není problém, nepoužívané části nepřekážejí, web nezpomalují a Nette existuje i v jednosouborové verzi.
  13. 13. ZendoviAle je to problém mentální. Pokud chci randit s Tracy, nechci k sobě stěhovat celou její rodinu. Zejména, když už jednu rodinu mám.
  14. 14. Rozhodli jsme se vyjít programátorům vstříc a rozdělit členy Nette rodiny do samostatně použitelných jednotek.
  15. 15. Nette TesterPrvní osamostatněný byl Tester, nástroj pro testování Nette. Což bylo snadné, protože záměrně nikdy neměl s Nette žádnou třídu společnou.
  16. 16. Nette Tester je dnes plnohodnotný testovací nástroj, který mimo jiné spouští testy paralelně, a hlavně má hezké logo :-)
  17. 17. Je integrován taky do poslední verze NetBeans.
  18. 18. Nette Object Další dělení však představovalo obrovský technický problém. Příklad za všechny: třídy v Nette dědí od společného předka, třídy NetteObject.
  19. 19. Primárním posláním NetteObject je zamezit překlepům, které PHP jinak zamlčí a dají se odhalit jen statickou analýzou.
  20. 20. Nebo pomocí NetteObject, které vás za každý překlep zpraží pohledem. Jenže jak mít stejnou třídu v každé samostatné jednotce? Přičemž luxusu, který dopřává, se vzdát nechcete. Co s tím?
  21. 21. Rozdělení Nette bylo proveditelné teprve ve chvíli, kdy se v PHP (konečně) objevil široce respektovaný balíčkovací nástroj.
  22. 22. COMP- OSERStal se jím Composer. Asi nejdůležitější počin posledních let. Seznamte se s ním!
  23. 23. nette/application nette/bootstrap nette/caching nette/component-model nette/database nette/di nette/finder nette/forms nette/http nette/latte nette/mail nette/neon nette/php-generator nette/reflection nette/robot-loader nette/safe-stream nette/security nette/tester nette/tokenizer nette/tracy nette/utils Každá část Nette dostala samostatný repozitář (se zachováním historie), vlastní issue tracker, atd. Jen rozdělení repozitáře trvalo stovky hodin.
  24. 24. nette/application nette/bootstrap nette/caching nette/component-model nette/database nette/di nette/finder nette/forms nette/http nette/latte nette/mail nette/neon nette/php-generator nette/reflection nette/robot-loader nette/safe-stream nette/security nette/tester nette/tokenizer nette/tracy nette/utils Některé části mají závislosti na jiných částech, obvykle na nette/utils, které obsahuje třeba zmíněnou třídu NetteObject.
  25. 25. composer require tracy/tracy Instalace nebo aktualizace Tracy je díky Composeru otázkou jednoho příkazu. (Tracy ale můžete stáhnout i jako PHAR).
  26. 26. A co se mění pro spokojené uživatele celé Nette family, kteří ji chtějí používat v celku jako dosud? Pro ty mám dobrou zprávu: vůbec nic.
  27. 27. Nadále můžete celý balík stáhnout na webu. Jen jsme začali vynechávat z názvu slovo framework.
  28. 28. composer require nette/nette Stejně tak ho můžete instalovat pomocí Composeru.
  29. 29. 11. 5. 2014 Pro tyhle uživatele bylo 11. 5. 2014 normálním dnem v roce :-) Ale pokud udržujete starší projekt v čistém PHP …
  30. 30. <?php TracyDebugger::enable(); …nebo pokud používáte Zend Framework či programuje pro WordPress, můžete teď hned udělat něco pro své pohodlí a bezpečnost, a nasadit třeba Tracy. Je to úplně snadné.
  31. 31. Děkuji za pozornost. @geekovo – @davidgrudl – @netteframework – #nettefw
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×