Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

From Realtime to Isomorphic Dart

1,503 views

Published on

A presentation I did on Brussels DevFest 2014 about my dart applications and packages that I created from one year at the dartlang community.

Published in: Internet
  • Be the first to comment

From Realtime to Isomorphic Dart

  1. 1. @usethedartforce#DevFest14 #DartForce From Realtime to isomorphic dart Joris Hermans Truvo (goldenpages.be)
  2. 2. @usethedartforce#DevFest14 #DartForce Schedule 1. History 2. Force MVC & Wired 3. Realtime dart with Dart Force 4. Isomorphic 5. Conclusion
  3. 3. @usethedartforce#DevFest14 #DartForce At the end of 2013
  4. 4. @usethedartforce#DevFest14 #DartForce So I started with … Xmlstream (SAX parser) RSS
  5. 5. @usethedartforce#DevFest14 #DartForce But maybe… Not possible
  6. 6. @usethedartforce#DevFest14 #DartForce So I started … Dart Force Realtime web framework
  7. 7. @usethedartforce#DevFest14 #DartForce In need of … Not possible to use websockets in IE & Android Browser So I need to build a polling server … No big web server frameworks
  8. 8. @usethedartforce#DevFest14 #DartForce Familiar with … Java spring mvc Force MVC
  9. 9. @usethedartforce#DevFest14 #DartForce Schedule 1. History 2. Force MVC & Wired 3. Realtime dart with Dart Force 4. Isomorphic 5. Conclusion
  10. 10. @usethedartforce#DevFest14 #DartForce Force MVC Used to familiar annotations @Controller, @RequestMapping, @RequestParam, @PathVariable
  11. 11. @usethedartforce#DevFest14 #DartForce Force MVC Used to familiar annotations @ControllerAdvice, @ModelAttribute, @ExceptionHandler
  12. 12. @usethedartforce#DevFest14 #DartForce Wired @Config, @Bean, @Autowired, @Qualifier
  13. 13. @usethedartforce#DevFest14 #DartForce Wired @Qualifier
  14. 14. @usethedartforce#DevFest14 #DartForce Wired & Force MVC Used to familiar annotations @Value properties out of .yaml files
  15. 15. @usethedartforce#DevFest14 #DartForce SMALL DEMO
  16. 16. @usethedartforce#DevFest14 #DartForce What are people saying? If you were using Spring MVC on Java you ‘ll feel at home!
  17. 17. @usethedartforce#DevFest14 #DartForce Recap Dart ForceMVC -> Web Application framework, standard http requests Wired -> Dependency Injection Dart Force -> Realtime web framework
  18. 18. @usethedartforce#DevFest14 #DartForce Recap – Setup dart project Bin folder -> serverside code Web folder -> clientside code
  19. 19. @usethedartforce#DevFest14 #DartForce Tip – Setup dart project pub serve web --port 7777 export DART_PUB_SERVE="http://localhost:7777" pub run bin/server.dart Instead of pub build everytime …
  20. 20. @usethedartforce#DevFest14 #DartForce Schedule 1. History 2. Force MVC & Wired 3. Realtime dart with Dart Force 4. Isomorphic 5. Conclusion
  21. 21. @usethedartforce#DevFest14 #DartForce Realtime Dart with Dart Force
  22. 22. @usethedartforce#DevFest14 #DartForce Realtime Dart with Dart Force inspired
  23. 23. @usethedartforce#DevFest14 #DartForce Realtime Dart with Dart Force inspired
  24. 24. @usethedartforce#DevFest14 #DartForce Communication types Send data to all Broadcast data directly to all the clients
  25. 25. @usethedartforce#DevFest14 #DartForce Communication types Send data to one specific Websocket, by his Id Sending info to profiles
  26. 26. @usethedartforce#DevFest14 #DartForce Profile Management Send information to a specific group of clients Examples apps : - Rooms (facebook) - Group messaging apps
  27. 27. @usethedartforce#DevFest14 #DartForce Profile Management Clientside Attach a profile to your communication flow Send info to a specific profile
  28. 28. @usethedartforce#DevFest14 #DartForce Authentication Secure your messages Add a securityStrategy to ForceServer
  29. 29. @usethedartforce#DevFest14 #DartForce Annotations You can use annotations with Dart Force
  30. 30. @usethedartforce#DevFest14 #DartForce Dart Force – server to server
  31. 31. @usethedartforce#DevFest14 #DartForce Dart Force – Internet Of Things
  32. 32. @usethedartforce#DevFest14 #DartForce Server to Server communication Add a ServerSocket connector to ForceServer ForceClient in a dart:io environment
  33. 33. @usethedartforce#DevFest14 #DartForce Dart Force Realtime demo time
  34. 34. @usethedartforce#DevFest14 #DartForce Schedule 1. History 2. Force MVC & Wired 3. Realtime dart with Dart Force 4. Isomorphic
  35. 35. @usethedartforce#DevFest14 #DartForce Isomorphic Dart Wat is Isomorphic?
  36. 36. @usethedartforce#DevFest14 #DartForce Isomorphic Dart ABSTRACTION ABSTRACTION ABSTRACTION Run your code everywhere
  37. 37. @usethedartforce#DevFest14 #DartForce Isomorphic Dart WHERE? On the server, in the browser
  38. 38. @usethedartforce#DevFest14 #DartForce Isomorphic Dart R2D2 handling device detection The same logic only an other way to get useragent
  39. 39. @usethedartforce#DevFest14 #DartForce Isomorphic Dart Yeah but what if I want to run my code against MONGODB and later on against REDIS or MEMCACHE? ABSTRACTION ABSTRACTION …
  40. 40. @usethedartforce#DevFest14 #DartForce Isomorphic Dart Cargo is a great example! Key – value storage everywhere 
  41. 41. @usethedartforce#DevFest14 #DartForce Isomorphic Dart Drawing of the cargo space!
  42. 42. @usethedartforce#DevFest14 #DartForce Isomorphic Dart BountyHunter Reversed Index (full text search) Deployable on every possible environment with X persistent possibilities
  43. 43. @usethedartforce#DevFest14 #DartForce Isomorphic Dart ClientHunter … Bountyhunter in the browser MongoHunter … Bountyhunter with mongoDB
  44. 44. @usethedartforce#DevFest14 #DartForce Isomorphic Dart ClientHunter … Bountyhunter in the browser MongoHunter … Bountyhunter with mongoDB
  45. 45. @usethedartforce#DevFest14 #DartForce Schedule 1. History 2. Force MVC & Wired 3. Realtime dart with Dart Force 4. Isomorphic 5. Conclusion
  46. 46. @usethedartforce#DevFest14 #DartForce Ultimate goal Combine Dart Force and Cargo more + + like
  47. 47. @usethedartforce#DevFest14 #DartForce Upcoming features – first steps
  48. 48. @usethedartforce#DevFest14 #DartForce Youtube channel
  49. 49. @usethedartforce#DevFest14 #DartForce More on … ForceUniverse http://github.com/forceuniverse
  50. 50. @usethedartforce#DevFest14 #DartForce Q & A http://github.com/forceuniverse

×