Enterprise ready GUI
                framework



Tomislav Pokrajčić
Binaria d.o.o.
Intro

 Binaria d.o.o.
   Building for business, marketing,
    entertainment and industry since 2007
   Flash/AIR/Flex, Java, PHP, HTML5
 Zagreb Flex User Group (www.zgflex.org)
   2008
 FlasHR (www.flashr.org)
   2011
What is Flex?


 Open source GUI framework
 Easy to build new components &
  complex interactivity
 Fancy performance
 Superpowers show up on projects that
  require GUI beyond standard
  components
Brief history

 2004 - Macromedia Flex Server 1.0 i 1.5
 2006 - Adobe Flex 2
 2007 - Adobe Flex 3 (MPL)
 2009 - Adobe Flex 3.5
 2010 - Adobe Flex 4
 2011 - Adobe Flex 4.5
 2011 - Adobe Flex 4.6
 2012 - Apache Flex 4.8 (4.6 parity release)
Runtimes

 Flash Player browser plugin
   (desktop, mobile)
 AIR desktop
  (Windows, Mac, Linux)
 AIR mobile
  (iOS, Android, Blackberry tablet OS,
   TV)
Languages


ActionScript3
Languages


 MXML
Languages


            FXG
Web/deskop components
Mobile components
Out of the box      Easy and powerful skinning
Examples
Examples
Examples
Examples
Framework features



 Mature and well documented
 i18n and L10n support
 Dev process shielded from 99% of the
 browser issues
Development

 Strong typing
 Namespaces support
 Compile time testing
 Easy refactoring
 Code obfuscation
 Unit testable (FlexUnit)
Framework features


 Powerful internal component lifecycle
     Invalidation
   Events
   Easy drag n’ drop support
   Easy data binding
   Validators, formatters, transitions,
    effects
Connectivity

 AMF remoting, WebServices, JSON, ...


 Java ORB: BlazeDS, GraniteDS, ...


 AS3 Object <-> Java object
 RPC


 HTTP, polling, long polling, streaming
Flex Ecosystem

 350.000 <= Flex developers <= 500.000
 Many good IoC / MVC frameworks
  (Swiz,Parsley,Mate,RobotLegs,...)
 Lots of other open source code (maps,
  graphics, charts, …)
 Many commercial components
 Active community
Cons




 Printing issues from browser
 Doesn’t work on mobile browsers
 Flex mobile apps performance not blazing
  fast as native
 “Well, hello, it’s Flash!”
Current state


 Fresh blood / more developers on project
 Full open source life
 Framework detached from corporate
  strategy
 Tools in bloom from other vendors (Jetbrains,
  FDT...)
 Awaiting new compilers (Falcon, FalconJS)
More


   http://incubator.apache.org/flex
   flex-dev-subscribe@incubator.apache.org
   www.zgflex.org
   www.flashr.org



 tomislav.pokrajcic@binaria.hr

Apache Flex - Enterprise ready GUI framework

  • 1.
    Enterprise ready GUI framework Tomislav Pokrajčić Binaria d.o.o.
  • 2.
    Intro  Binaria d.o.o.  Building for business, marketing, entertainment and industry since 2007  Flash/AIR/Flex, Java, PHP, HTML5  Zagreb Flex User Group (www.zgflex.org)  2008  FlasHR (www.flashr.org)  2011
  • 3.
    What is Flex? Open source GUI framework  Easy to build new components & complex interactivity  Fancy performance  Superpowers show up on projects that require GUI beyond standard components
  • 4.
    Brief history  2004- Macromedia Flex Server 1.0 i 1.5  2006 - Adobe Flex 2  2007 - Adobe Flex 3 (MPL)  2009 - Adobe Flex 3.5  2010 - Adobe Flex 4  2011 - Adobe Flex 4.5  2011 - Adobe Flex 4.6  2012 - Apache Flex 4.8 (4.6 parity release)
  • 5.
    Runtimes  Flash Playerbrowser plugin  (desktop, mobile)  AIR desktop  (Windows, Mac, Linux)  AIR mobile  (iOS, Android, Blackberry tablet OS, TV)
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
    Mobile components Out ofthe box Easy and powerful skinning
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
    Framework features  Matureand well documented  i18n and L10n support  Dev process shielded from 99% of the browser issues
  • 16.
    Development  Strong typing Namespaces support  Compile time testing  Easy refactoring  Code obfuscation  Unit testable (FlexUnit)
  • 17.
    Framework features  Powerfulinternal component lifecycle  Invalidation  Events  Easy drag n’ drop support  Easy data binding  Validators, formatters, transitions, effects
  • 18.
    Connectivity  AMF remoting,WebServices, JSON, ...  Java ORB: BlazeDS, GraniteDS, ...  AS3 Object <-> Java object  RPC  HTTP, polling, long polling, streaming
  • 19.
    Flex Ecosystem  350.000<= Flex developers <= 500.000  Many good IoC / MVC frameworks (Swiz,Parsley,Mate,RobotLegs,...)  Lots of other open source code (maps, graphics, charts, …)  Many commercial components  Active community
  • 20.
    Cons  Printing issuesfrom browser  Doesn’t work on mobile browsers  Flex mobile apps performance not blazing fast as native  “Well, hello, it’s Flash!”
  • 21.
    Current state  Freshblood / more developers on project  Full open source life  Framework detached from corporate strategy  Tools in bloom from other vendors (Jetbrains, FDT...)  Awaiting new compilers (Falcon, FalconJS)
  • 22.
    More  http://incubator.apache.org/flex  flex-dev-subscribe@incubator.apache.org  www.zgflex.org  www.flashr.org  tomislav.pokrajcic@binaria.hr