Eclipse Orion: The IDE in the Clouds (JavaOne 2013)
-
Upload
murat-yener -
Category
Technology
-
view
1.101 -
download
0
Transcript of Eclipse Orion: The IDE in the Clouds (JavaOne 2013)
Eclipse Orion: The IDE in the Clouds
Murat Yener@yenerm
Wednesday, October 9, 13
who am i??
• Java, Flex, GWT, iOS, Android developer
• Principle Mentor at Eteration
• Eclipse Committer
• GDG (GTUG) Istanbul Organizer
• Conference Speaker
Wednesday, October 9, 13
who am i??
• Java, Flex, GWT, iOS, Android developer
• Principle Mentor at Eteration
• Eclipse Committer
• GDG (GTUG) Istanbul Organizer
• Conference Speaker
Wednesday, October 9, 13
who am i??
• Java, Flex, GWT, iOS, Android developer
• Principle Mentor at Eteration
• Eclipse Committer
• GDG (GTUG) Istanbul Organizer
• Conference Speaker
Mobile App Developer at Intel
Wednesday, October 9, 13
who am i??
• Java, Flex, GWT, iOS, Android developer
• Principle Mentor at Eteration
• Eclipse Committer
• GDG (GTUG) Istanbul Organizer
• Conference Speaker
Mobile App Developer at Intel
Wednesday, October 9, 13
What is Orion?
• Software development in browser
• Initial focus was html, javascript and css
• IBM Ottowa, demo at EclipseCon 2011
Wednesday, October 9, 13
in a browser?!?
• repositories (google code, github)
• debuggers (chrome dev tools, firebug)
• code review, issue/bug tracker (bugzilla, jira, gerrit)
• documentation (javadocs, wikis, apache sites)
Wednesday, October 9, 13
in a browser?!?
• repositories (google code, github)
• debuggers (chrome dev tools, firebug)
• code review, issue/bug tracker (bugzilla, jira, gerrit)
• documentation (javadocs, wikis, apache sites)
then w
hy not c
oding?!?
Wednesday, October 9, 13
what we need is...
• code editing
• compile(?) interpret
• projects
• search capabilities
• committing to repositories
Wednesday, October 9, 13
meet Eclipse Orion
• browser based open tool integration platform for developing for the web
• written in javascript and runs in a browser
• is not an IDE in single tab, instead runs each file in a new tab
• up and running on OrionHub (public test)
• and.... plugins!!
Wednesday, October 9, 13
but still why?!?
• zero install on the client
• lower cost of ownership
• scalable computing power
• simple control and sharing via links
• powerful engine, the browsers
• and well cloud and web is fancy :)
Wednesday, October 9, 13
powered by..
• server: java with equinox, jetty, jgit
• client: html5, js, css
• experimental server with node.js!!
Wednesday, October 9, 13
cool, where to get started?!?
• on OrionHub, nothing to download or install
• on local, download and launch the orion server (30-40mb)
Wednesday, October 9, 13
logging
• create an account or login
*from Orion website
Wednesday, October 9, 13
creating your project
Wednesday, October 9, 13
creating your project
Wednesday, October 9, 13
using the tools
Wednesday, October 9, 13
using the tools
Wednesday, October 9, 13
actions
Wednesday, October 9, 13
importingalso Drag’n Dropimport
..and export
Wednesday, October 9, 13
javascript development
uses JSLint
markers
Wednesday, October 9, 13
css development
Wednesday, October 9, 13
html development
Wednesday, October 9, 13
loading plugins
JSBeautifier http://mamacdon.github.com/0.5/plugins/beautify/jsbeautify.html
Wednesday, October 9, 13
searching
Wednesday, October 9, 13
searching (cont.)
search files
search within files
Wednesday, October 9, 13
searching (cont.)
search files
search within files
Wednesday, October 9, 13
working with git
Wednesday, October 9, 13
working with git
Wednesday, October 9, 13
git status
Wednesday, October 9, 13
launching
Wednesday, October 9, 13
running local
download
unzip
launch
Linux: Run eclipse/orion.Mac OS X: Double-click eclipse/orion.
Windows: Double-click eclipse\orion.exe.
Wednesday, October 9, 13
plugins
Wednesday, October 9, 13
developing plugins
• create an html page
• import plugin.js
• write your service
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <!-- Dependencies --> <script type="text/javascript" src="../orion/plugin.js"></script> <script> window.onload = function() { <!-- Service declarations go here --> }; </script> </head> <body> </body> </html>
Wednesday, October 9, 13
hey what, service??
• service registry to access libraries
function Explorer(serviceRegistry, ...) { this.registry = serviceRegistry; ... } ... deleteFile: function(itemId) { var item = this.myTree.getItem(itemId); var service = registry.getService("orion.page.dialog"); var message = "Are you sure you want to delete '" + item.Name + "'?"; service.confirm(message, function(doit) { /* perform deletion */}); }
Wednesday, October 9, 13
service definitions var provider = new orion.PluginProvider(); var serviceImpl = { run : function(text) { return text.toUpperCase(); } }; var serviceProps = { name : "UPPERCASE", img : "/images/gear.gif", key : [ "u", true ] }; provider.registerService("orion.edit.command", serviceImpl, serviceProps); provider.connect();
Wednesday, October 9, 13
demodeveloping a plugin
Wednesday, October 9, 13
</slides>
[email protected]@yenerm
devchronicles.com
Mobile Java with MGWT: Still “Write Once, Run Everywhere” [BOF2042]Monday 7:30pm, Hilton Continental Ballroom 5
The Zodiac of OSGi: Meet Eclipse Libra, Virgo, and Gemini [CON1749]Tuesday 8:30am, Hilton Continental Ballroom 4
Eclipse Orion: The IDE in the Clouds [CON4107], [BOF3999]Tuesday 5:30pm, Hilton Continental Ballroom 4
Wednesday 3:00pm, Hilton Continental Ballroom 7/8/9
Wednesday, October 9, 13