Your SlideShare is downloading. ×
0
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
MTM - Flow3
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

MTM - Flow3

937

Published on

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

  • Be the first to like this

No Downloads
Views
Total Views
937
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
1
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. FLOW3PHP framework podporujúci pokročilé konceptyakými sú dependency injection, aspektovoorientované programovanie Ing. Ondrej Hatala Monogram Technologies
  • 2. Čo nás dnes čaká? Inštalácia FLOW3 MVC po prvé Routing Dependency Injection Persistence framework Aspektovo orientované programovanie Cache skompilovaných súborov Blog example
  • 3. Inštalácia FLOW3 git.typo3.org Settings.yaml flow3.bat Štruktúra adresárov ◦ Configuration ◦ Data ◦ Packages ◦ Web
  • 4. Prvý controller flow3.bat kickstart:package Monogram.Test StandardController, indexAction Fluid Flow3.bat kickstart:actioncontroller Monogram.Test Shop
  • 5. Routing Routes.yaml Čiastočne podobné mod_rewrite Princíp matchovania patternov Cesta od browseru k controlleru a naspäť Vlastné handlery uriPattern ◦ Static - test ◦ Dynamic – test/{@action} ◦ Object – defaultne uid, @FLOW3Identity
  • 6. Dependency Injection Inversion of Control (http://martinfowler.com/bliki/Inversion OfControl.html) Hollywood principle - „Don‘t call us, we will call you“ Namiesto hlavného programu ktorý postupne spúšťa podprogramy máme priamo podprogram ktorý dostane všetko čo potrebuje
  • 7. Dependency Injection Vzťahuje sa na parametre konštruktoru, injectory, settery a properties objektu @FLOW3Inject Autowiring – priame nastavenie / preťaženie @FLOW3 konfigurácie objektu, vhodné pri viacerých implementáciách jedného interface
  • 8. Persistence Doctrine 2 (http://www.doctrine- project.org/) Kickstarter spraví základné triedy @FLOW3Entity – toto znamená že je to „ukladateľné“ Model aj Repository vygenerujeme cez CLI kickstarter
  • 9. Persistence Pomocou anotácií sa dajú nastaviť validačné pravidlá Pomocou ORM anotácií sa dajú nastaviť DB columns Skúsime vytvoriť nový produkt Potrebujeme databázové tabuľky – bude to problém?
  • 10. Persistence flow3.bat doctrine:create Teraz už môžeme ukladať aj načítavať dáta
  • 11. Aspektové Programovanie Dopĺňa objektové programovanie Umožňuje osamostatnenie jednotlivých aspektov ktoré zasahujú do suverenity iných objektov Typický príklad je napríklad logovanie, security @FLOW3Aspect
  • 12. Cache skompilovanýchsúborov FLOW3 kompiluje php súbory DataTemporary V skompilovaných súboroch sa rieši dependency injection, lazy loading, aspekty atď
  • 13. Blog example Príklad routes.xml Tvorba url v šablóne Security policy pravidlá – policy.yaml Validácia formulárov Chybové hlášky
  • 14. Záver Ďakujem za pozornosť Čas na otázky a komentáre!

×