Your SlideShare is downloading. ×
0
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
TYPO3 Flow - PHP Framework for Developer Happiness
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

TYPO3 Flow - PHP Framework for Developer Happiness

3,921

Published on

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

No Downloads
Views
Total Views
3,921
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
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. PHP Framework For Developer HappinessTYPO3 FlowDienstag, 28. Mai 13
  • 2. Not Safe ForCode AllergicDienstag, 28. Mai 13
  • 3. ...but probablyunderstandableDienstag, 28. Mai 13
  • 4. PHP ApplicationFrameworkDienstag, 28. Mai 13
  • 5. PHP ApplicationFrameworkWebDienstag, 28. Mai 13
  • 6. Flow is an optimal state in whichyou feel totally engaged in anactivity.Mihaly CsikszentmihalyiDienstag, 28. Mai 13
  • 7. Main Concerns‣ Developer Happiness‣ Code Quality‣ Domain Driven Design‣ Convention Over ConfigurationDienstag, 28. Mai 13
  • 8. LaravelZendFrameworkCodeIgniterSymfony2Dienstag, 28. Mai 13
  • 9. Why anotherframework?Dienstag, 28. Mai 13
  • 10. How it beganDienstag, 28. Mai 13
  • 11. How it began‣ 2005 - Rewrite TYPO3 CMS CoreDienstag, 28. Mai 13
  • 12. How it began‣ 2005 - Rewrite TYPO3 CMS Core‣ 2006 - Start from scratchNo Framework provided everythingDienstag, 28. Mai 13
  • 13. How it began‣ 2005 - Rewrite TYPO3 CMS Core‣ 2006 - Start from scratchNo Framework provided everything‣ ... continuous team growthDienstag, 28. Mai 13
  • 14. How it began‣ 2005 - Rewrite TYPO3 CMS Core‣ 2006 - Start from scratchNo Framework provided everything‣ ... continuous team growth‣ 2011 - Release of Flow 1.0Dienstag, 28. Mai 13
  • 15. PHP Good PointsDienstag, 28. Mai 13
  • 16. Most Used WebLanguageDienstag, 28. Mai 13
  • 17. Easy To LearnDienstag, 28. Mai 13
  • 18. Available On ManyServersDienstag, 28. Mai 13
  • 19. PHP DrawbacksDienstag, 28. Mai 13
  • 20. Bad ReputationMany “spaghetti code” projectsDienstag, 28. Mai 13
  • 21. Considered UglyDienstag, 28. Mai 13
  • 22. Language FeaturesDienstag, 28. Mai 13
  • 23. Dienstag, 28. Mai 13
  • 24. Patterns &PhilosophyDienstag, 28. Mai 13
  • 25. We are biased!Dienstag, 28. Mai 13
  • 26. Domain DrivenDesignas explained by Eric EvansDienstag, 28. Mai 13
  • 27. DDD in a nutshellDienstag, 28. Mai 13
  • 28. DDD in a nutshell‣ DomainDienstag, 28. Mai 13
  • 29. DDD in a nutshell‣ Domain‣ Ubiquitous LanguageDienstag, 28. Mai 13
  • 30. DDD in a nutshell‣ Domain‣ Ubiquitous Language‣ ModelDienstag, 28. Mai 13
  • 31. DDD in a nutshell‣ Domain‣ Ubiquitous Language‣ Model‣ Aggregate Root and RepositoriesDienstag, 28. Mai 13
  • 32. (Web) MVCModel-View-ControllerDienstag, 28. Mai 13
  • 33. ModelControllerView(HTTP) Request(HTTP) ResponseDienstag, 28. Mai 13
  • 34. Convention OverConfigurationDienstag, 28. Mai 13
  • 35. Typical file structureVendor.PackageNameClasses...ControllerDomainModelRepositoryConfigurationDocumentationMigrationsResourcesPrivatePublicTestsDienstag, 28. Mai 13
  • 36. DependencyInjectionDienstag, 28. Mai 13
  • 37. DI made simpleclass ActionController extends AbstractController {/*** @FlowInject* @var TYPO3FlowObjectObjectManagerInterface*/protected $objectManager;/*** @FlowInject* @var TYPO3FlowReflectionReflectionService*/protected $reflectionService;Dienstag, 28. Mai 13
  • 38. Signal / SlotAlso called Observer PatternDienstag, 28. Mai 13
  • 39. Emit / ConnectDienstag, 28. Mai 13
  • 40. Aspect OrientedProgrammingDienstag, 28. Mai 13
  • 41. Separation Of ConcernsDienstag, 28. Mai 13
  • 42. Proxy ClassesDienstag, 28. Mai 13
  • 43. Making PHPCode BeautifulDienstag, 28. Mai 13
  • 44. Property MappingDienstag, 28. Mai 13
  • 45. Get useful arguments/*** Action for creating a temporary account** @param TYPO3TestDomainModelRegistration $reg* @return void*/public function accountAction( ↵TYPO3TestDomainModelRegistration $reg) {$accountIdentifier = $reg->getUsername();Dienstag, 28. Mai 13
  • 46. DoctrineDienstag, 28. Mai 13
  • 47. ORMObject Relational MappingDienstag, 28. Mai 13
  • 48. Database AbstractionDienstag, 28. Mai 13
  • 49. MigrationsDienstag, 28. Mai 13
  • 50. SecurityDienstag, 28. Mai 13
  • 51. AuthenticationWho are you?Dienstag, 28. Mai 13
  • 52. AuthorizationWhat are you allowed to do?Dienstag, 28. Mai 13
  • 53. Content SecurityQuery RewritingDienstag, 28. Mai 13
  • 54. Touchless Securityresources:methods:BackendController: ↵method(FullNameSpaceBackendController->.*Action())AdminController: ↵method(FullNameSpaceAdminController->.*Action())roles:Editor: [TYPO3.TYPO3CR:Administrator]Administrator: [ Editor ]acls:Administrator:methods:AdminController: GRANTEditor:methods:BackendController: GRANTDienstag, 28. Mai 13
  • 55. Application FirewallStop RequestsDienstag, 28. Mai 13
  • 56. Command LineDienstag, 28. Mai 13
  • 57. Framework commandsDienstag, 28. Mai 13
  • 58. Add your own commandsDienstag, 28. Mai 13
  • 59. FluidDienstag, 28. Mai 13
  • 60. XML ConformTemplatesDienstag, 28. Mai 13
  • 61. Basic stringspublic function simpleAction() {$name = ‘Christian’;$this->view->assign(‘name’, $name);}Dienstag, 28. Mai 13
  • 62. Basic strings<html><head></head><body><p>Hello World, I am {name}!</p></body></html>Dienstag, 28. Mai 13
  • 63. Objectspublic function simpleAction() {$accounts = $this->accountRepository->findAll();$this->view->assign(‘accounts’, $accounts);}Dienstag, 28. Mai 13
  • 64. Objects / Iteration<html><head></head><body><ul><f:for each=”{accounts}” as=”account”><li>{account.identifier}</li></f:for></ul></body></html>Dienstag, 28. Mai 13
  • 65. SessionsDienstag, 28. Mai 13
  • 66. Session Scope/**** @FlowScope("session")*/class Basket {/**** @var array*/protected $items;/*** @return array*/public function getItems() {return $this->items;}Dienstag, 28. Mai 13
  • 67. Using the Session Objectclass MyController {/**** @FlowInject* @var TYPO3FlowSessionSessionInterface*/protected $sessionpublic function storeDataAction($data) {$this->session->putData(‘myDataKey’, $data);}public function getDataAction() {$data = $this->session->getData(‘myDataKey’);$this->view->assign(‘sessionData’, $data);}}Dienstag, 28. Mai 13
  • 68. Dienstag, 28. Mai 13
  • 69. StandardsDienstag, 28. Mai 13
  • 70. PHP-FIGFramework Interoperability GroupDienstag, 28. Mai 13
  • 71. PSR-0AutoloadingDienstag, 28. Mai 13
  • 72. PSR-1Coding StandardsDienstag, 28. Mai 13
  • 73. ComposerDienstag, 28. Mai 13
  • 74. Test DrivenDevelopmentDienstag, 28. Mai 13
  • 75. More To DiscoverDienstag, 28. Mai 13
  • 76. No time in this talk had...‣ Internationalization‣ Caching‣ Resource Handling‣ Validation‣ Routing‣ ...Dienstag, 28. Mai 13
  • 77. Existing ProjectsDienstag, 28. Mai 13
  • 78. Dienstag, 28. Mai 13
  • 79. Dienstag, 28. Mai 13
  • 80. Dienstag, 28. Mai 13
  • 81. Dienstag, 28. Mai 13
  • 82. And a lot more...Dienstag, 28. Mai 13
  • 83. @daskitsunet‣ like Books, Music, Tea and more‣ Flow and Neos Community Contact‣ Freelance Trainer / Developer‣ plays the piano‣ christian@kitsunet.deDienstag, 28. Mai 13
  • 84. Thank you!Dienstag, 28. Mai 13

×