Upgrade to Pro — share decks privately, control downloads, hide ads and more …

@ntaoo

Avatar for naotohc naotohc
February 22, 2014

 @ntaoo

#dartja Dart Flight Schoool Tokyo

Avatar for naotohc

naotohc

February 22, 2014
Tweet

More Decks by naotohc

Other Decks in Programming

Transcript

  1. Trying to make Markdown Editor by NgComponent Can I use

    Dart in Production? by @ntaoo (+naotohc)
  2. Who? • @ntaoo (Twitter) • +naotohc (Google+) • Developing new

    WebApp by AngularJS/CoffeeScript • SPA and Pjax (html5Mode = true) • 開発の遅れのだいたい30%はAngularJSのせい。 • OfflineWebApp対応 -> 頓挫(まだ早すぎた)
  3. Dart :) • Optional typing, Dynamic language • Class Based

    OOP with Functional Features • Lazy Iterable • Future and Stream • Isolate • dart:html, dart:io • DartVM, dart2js, dart:js, Pub • Much more features
  4. NgComponent in AngularDart • is a Lightweight WebComponent Implementation. •

    looks Independent of Polymer (Maybe?). • can live with PolymerDart. http://blog.sethladd.com/2014/02/angular-and- polymer-data-binding.html • would gradually merge into Polymer?
  5. Markdown editor by NgComponent nvDart https://github.com/ntaoo/nv_dart • 15 hours to

    study AngularDart • 5 hours to implement nvDart • Encapsulation • Messaging between components
  6. dart:js Interoperation between Dart and JS You can use JS

    libraries like Twitter Oauth, Markdown parser via dart:js.
  7. You don’t probably need to use... • jQuery -> Use

    dart:html. • Underscore, requireJS, Jasmine, etc... -> Use Dart standard libraries. • Frameworks like BackboneJS, EmberJS -> Use AngularDart and others.
  8. But... • UI libraries like jQueryUI, AngularUI -> Dart still

    lacks UI libraries. (There were UI libs on WebUI...) We need porting work.
  9. O.K. can I use… in Production now? • Dart :

    Still young but already stable • AngularDart : Waiting for first stable release • Supported Browsers and Compiled JS Size For my current project…(IMHO) CoffeeScript + AngularJS + JS UI libraries + Grunt tasks >> Dart + AngularDart(unstable) || PolymerDart(unstable) || WebUI(deprecated)
  10. Dart : Let’s give it a try • In small

    project • With modern structure • Then make a contribution • And join Dartisans community