Eclipsist2009 Rich Client Roundup


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Eclipsist2009 Rich Client Roundup

  1. 1. Rich Internet Application Platforms Roundup
  2. 2. Internet is changing... so do the clients <ul><li>Internet Connection getting faster and stable. </li></ul><ul><li>Client computers getting more advanced. </li></ul><ul><li>Expectations getting more in terms of interactions, design and usability </li></ul><ul><li>Ajax was a great start but can not drive the change. </li></ul><ul><li>Cross Browser and Cross OS compability getting more important </li></ul><ul><li>Ruby and scripting platforms encourage fast and agile development </li></ul>
  3. 3. Ajax&HTML is not the only alternative <ul><li>Adobe's Flex became very mature, version 4 is in development stage. </li></ul><ul><li>Microsoft's Silverlight is catching up with version 2. </li></ul><ul><li>JavaFx is still in early phase but very promising. </li></ul><ul><li>Eclipse became the development platform for all. </li></ul><ul><li>Even Microsoft is moving to eclipse. </li></ul>
  4. 4. Adobe's Flex <ul><li>Flex had been on eclipse since version 2 just after the acquisition of Macromedia by Adobe. </li></ul><ul><li>Flex SDK is open source since version 3. (not including the eclipse plugin) </li></ul><ul><li>A subset of Flex Live Services is also open sourced and available for free under name of BlazeDS </li></ul><ul><li>Flex SDK and Builder version 4 is in pre release stage. </li></ul><ul><li>Flex is much more stable than all competitors, thanks to flash runtime and previous versions. </li></ul><ul><li>Learning curve of ActionScript is easy for Java Developers. </li></ul><ul><li>Data services offer Remoting capabilities with Java and very fast. </li></ul><ul><li>Wide variety of commercial and open source libraries (including Google's flexlib and Yahoo's astra) and design templates are available. </li></ul><ul><li>Great integration with Flash. </li></ul><ul><li>Ease of Design with Flash Catalyst (formerly called Thermo) </li></ul>
  5. 5. Flex Code Example
  6. 6. What's new with Flex4 <ul><li>Design in Mind: provide a framework meant for continuous collaboration between designer and developer. </li></ul><ul><li>Developer Productivity: improve compiler performance and add productivity enhancements to language features like data binding </li></ul><ul><li>Framework Evolution: take advantage of new Flash Player capabilities and add features required by common use-cases </li></ul>
  7. 7. FXG 1.0 anXML-based graphics interchange format for the Flash Platform <ul><li>Fills the gap between Flash and Flex. </li></ul><ul><li>Graphic objects, Symbols, Raster Effects, Text and Fonts </li></ul><ul><li>Rendering, Painting, Clipping, Masking and Object Opacity </li></ul><ul><li>Basic Data Types; angle, length, percentage, coordinate </li></ul><ul><li>Document Structure </li></ul><ul><li>Coordinate Space Transformations </li></ul><ul><li>FXG Paths; moveto, lineto, curve </li></ul><ul><li>FXG Fills, Strokes, Visibility and Blend Modes </li></ul><ul><li> </li></ul>
  8. 8. Gumbo Skinning (including SkinnableComponent) <ul><li> </li></ul>
  9. 9. MXML 2009
  10. 10. Two-way Data Binding <ul><li> </li></ul>
  11. 11. Others... <ul><li>ASDoc in MXML </li></ul><ul><li>Gumbo DOM Tree API </li></ul><ul><li>CSS Advanced Selectors </li></ul><ul><li>Group </li></ul><ul><li>Layout </li></ul><ul><li>Viewport </li></ul><ul><li>Application </li></ul><ul><li>Scroller </li></ul><ul><li>Text Primitives (TextBox, TextGraphic, and TextView) </li></ul><ul><li>FxTextInput </li></ul><ul><li>FxTextArea </li></ul><ul><li>ScrollBar </li></ul><ul><li>Range </li></ul><ul><li>TrackBase </li></ul><ul><li>Slider </li></ul><ul><li>Spinner </li></ul><ul><li>NumericStepper </li></ul>
  12. 12. More Advanced... <ul><li>Pixel Bender Integration </li></ul><ul><li>Arbitrary Type Interpolation </li></ul><ul><li>New Effects for Components and Graphics </li></ul><ul><li>3D Effects Support </li></ul><ul><li>Effect Interruption and Reversal </li></ul><ul><li>Shader Based Bitmap Effects </li></ul><ul><li>Notes on Compiler Performance Improvements </li></ul><ul><li>Spark DropDownList (added 3/25/09) </li></ul><ul><li>Flex Component Kit for Flash (added 3/25/09) </li></ul><ul><li>Virtualization (added 3/30/09) </li></ul><ul><li>CSS Namespaces Support (added 4/01/09) </li></ul><ul><li> </li></ul>
  13. 13. Microsoft's Silverlight <ul><li>Silverlight 1.0 came with lack of components and a stable IDE. </li></ul><ul><li>Silverlight 1.0 did not hava own scripting language and was tightly coupled with JavaScript </li></ul><ul><li>As with version 2 Silverlight SDK has more components. </li></ul><ul><li>Again with version 2 C# scripts can be used in Silverlight. </li></ul><ul><li>Good interaction with .net projects. </li></ul><ul><li>Not open source. </li></ul><ul><li>Eclipse plugin is a good step but still need external editors such as Blend for animation and advanced design. </li></ul><ul><li>No Debugging </li></ul><ul><li>Code assist not complete yet. </li></ul><ul><li>Runtime is getting spread fast with windows </li></ul><ul><li>updates. </li></ul>
  14. 14. Silverlight Code Example
  15. 15. What's new with Silverlight 2 <ul><li>Version 2 lets you write VB.NET or C# code that will run in Internet Explorer, FireFox, and Safari which means you don't have to use JavaScript any longer </li></ul><ul><li>Controls; core form controls (TextBox, CheckBox, RadioButton, etc), built-in layout management panels (StackPanel, Grid, Panel, etc), common functionality controls (Slider, ScrollViewer, Calendar, DatePicker, etc), and data manipulation controls (DataGrid, ListBox, etc). PasswordBox, ComboBox (non-editable), MessageBox and ProgressBar. Updated look and feel for controls. </li></ul><ul><li>Support for popping up windows; HtmlPage.PopupWindow API </li></ul><ul><li>Resources; Color, FontFamily, TextAlignment... etc </li></ul>
  16. 16. More with version 2... <ul><li>Networking Support: support for calling REST, WS*/SOAP, POX, RSS, and standard HTTP services. It supports cross domain network access (enabling Silverlight clients to directly access resources and data from resources on the web). Also includes built-in sockets networking support. </li></ul><ul><li>Rich Base Class Library: collections, IO, generics, threading, globalization, XML, local storage, etc. Includes rich APIs that enable HTML DOM/JavaScript integration with .NET code. It also includes LINQ and LINQ to XML library support, as well as local data caching and storage support. </li></ul><ul><li>Silverlight 2 does not require the .NET Framework to be installed on a computer in order to run. The Silverlight setup download includes everything necessary to enable all the above features. Silverlight 2 is 4.3MB in size </li></ul>
  17. 17. Silverlight on Eclipse! <ul><li>The plug-in is being developed by Soyatec with funding, architectural guidance, and project management from Microsoft's Interoperability Team </li></ul><ul><li>Java Development Kit (JDK) 1.5.0-11 or higher </li></ul><ul><li>Eclipse Ganymede 3.4.1 </li></ul><ul><li>Microsoft .NET® Framework 3.5 </li></ul><ul><li>Silverlight 2 Runtime 2.0.31005.0 or higher </li></ul><ul><li>Silverlight 2 SDK </li></ul><ul><li>No debugger yet, but one is planned by summer. </li></ul><ul><li>Doesn't yet work on 64-bit or any OS other than windows. </li></ul>
  18. 18. JavaFX <ul><li>Did Sun get the lessons in applets or is it just Applets 2.0 </li></ul><ul><li>Consumer JRE is a great step for ease of JRE installment. </li></ul><ul><li>Applets and WebStart are mature tecnologies supporting JavaFx </li></ul><ul><li>Eclipse plugin is finally available. </li></ul><ul><li>The eclipse plugin is not very stable and functional yet </li></ul><ul><li>Lack of components when compared to Flex and Silverlight. </li></ul><ul><li>By use of wrappers all Java libraries available from Swing to RMI. </li></ul><ul><li>Java Developers feel safer to stay in the same environment. </li></ul><ul><li>Coding style differs from Flex and Silverlight. While competitors are built on XML, JavaFx code style looks like a CSS file. </li></ul><ul><li>Still version 1. Needs improvements. </li></ul><ul><li>Open sourcing the SDK may boost the evolution process. </li></ul>
  19. 19. JavaFX Code Sample
  20. 20. What JavaFx Offers <ul><li> A good site full of tutorials and sample applications. </li></ul><ul><li>Runs on widely accepted and stable JRE </li></ul><ul><li>Easy to install or update Runtime. </li></ul><ul><li>Production Suite; </li></ul><ul><ul><li>JavaFX Media Factory (SVG Importer/Transcoder) </li></ul></ul><ul><ul><li>JavaFX Plugin for Adobe Photoshop </li></ul></ul><ul><ul><li>JavaFX Plugin for Adobe Illustrator </li></ul></ul><ul><li>JavaFx Mobile with version 1.1 </li></ul><ul><li>Mostly open sourced </li></ul><ul><li>Good integration with Java </li></ul><ul><li>Whole JRE and Java libraries available to use (with wrappers); RMI, sockets, swing... etc </li></ul><ul><li>Different launch methods supported either as applet or WebStart </li></ul><ul><li>Eclipse Plugin available... </li></ul>
  21. 21. What JavaFx can't offer <ul><li>New platform, same Sun... Where is javafx.ui.* package... </li></ul><ul><li>Does not offer new shinny UI components. </li></ul><ul><li>Lack of components, development left to community. </li></ul><ul><li>Not as mature as Flex or even Silverlight. </li></ul><ul><li>Eclipse plugin does not offer code assist and debugging </li></ul>
  22. 22. Coding the Rich Client One Eclipse installiation to rule them all... Lets code..
  23. 23. Thank You.. Murat YENER [email_address] Yunus Bayraktar [email_address]
  24. 24. Resources <ul><li>http:// </li></ul><ul><li>http:// </li></ul><ul><li> </li></ul>