Závislosti, injekce a vůbec

3,995 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,995
On SlideShare
0
From Embeds
0
Number of Embeds
1,104
Actions
Shares
0
Downloads
13
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Závislosti, injekce a vůbec

  1. 1. Závislosti, injekce a vůbec @DavidGrudl WebExpo 2012
  2. 2. Do přejmenování pársouborů se pustíme ručně.
  3. 3. Ale co když jich budoustovky? Uděláme si skript.
  4. 4. Automatizace Automatizací šetříme čas. Uděláme méně chyb. Nemusíme tolik přemýšlet. (A nevymyslíme nějakou blbost.)
  5. 5. Někdy činnost opakujeme1000×, než nám dojde, že jimáme automatizovat.
  6. 6. Nestahujte PHP knihovnyručně, použijte Composer.http://doc.nette.org/cs/composer
  7. 7. Jedním příkazem stáhnetetřeba Nette Framework.
  8. 8. A jedním příkazem hokdykoliv zaktualizujete.
  9. 9. Přes Composer můžeteinstalovat i PHPUnit.(Nebo NetteTester.)
  10. 10. http://github.com/dg/ftp-deployment Nahráváte soubory na FTP ručně? Zautomatizujte to! (Nebo zkuste chytřejší deployment.)
  11. 11. Design PatternsNávrhové vzory Automatizovat lze i duševní práci. Třeba návrh programu. Pomáhají s tím vzory.
  12. 12. DependencyInjectionZjevné před{v{nízávislostí. Jedním z nich je DI.
  13. 13. Srozumitelnost V nesrozumitelném a nepředvídatelném kódu se ztratíte, i když jste autorem.
  14. 14. WTF!?! A vůbec nejhorší jsou skryté vazby, kdy si říkáte „k***a do*****e co to dělá?“
  15. 15. json_encode() Třeba funkce json_encode() se chová různě v závislosti na direktivě display_errors. WTF?
  16. 16. Napadlo by vás, že volání$a->hello() může mít nějakývliv na objekt $b?
  17. 17. Leda by byly zřejmýmzpůsobem propojené.
  18. 18. Pryč se skrytýmivazbami! Mějme vztahy mezi objekty pod kontrolou. Jinak nás kód přivede na pokraj šílenství.
  19. 19. Skrytá vazba, na kterou přijdeteleda při studiu kódu. Pryč s ní!
  20. 20. Závislosti si předáme zjevně asrozumitelně v konstruktoru…
  21. 21. …nebo jakoukolivjinou metodou.
  22. 22. Je to víc psaní! Píšete to jednou, milionkrát čtete. (Navíc je to rutinní psaní, u kterého nemusíte přemýšlet.)
  23. 23. A co si předávat jen jedenobjekt, který bude znátvšechny závislosti?(Service Locator)
  24. 24. Zjevnépřed{v{ní z{vislostí Pak to nebude zjevné. Víme, že závislosti má, ale nevíme jaké.
  25. 25. A co když bude třídapracovat s více objekty…
  26. 26. …a závislosti se námzačnou hromadit?
  27. 27. Nepředávejte si závislostijiných objektů, ale jen ty své.
  28. 28. Nebo si předejte továrničku,která už objekt vyrobí.
  29. 29. Zapomeňtena static.
  30. 30. @davidgrudl @geekovohttp://phpfashion.com/co-je-dependency-injection

×