'. '

JavaOne2014

From APIDesign

(Difference between revisions)
Jump to: navigation, search
(Gateway to All Screens of Your Life)
(Checklist of Good API Design)
Line 15: Line 15:
Let us show you how to develop services ready for the [[wikipedia:Internet_of_things|IoT]] age with the help of [[OSGi]] services. Let use present them and control them in a unified way on your desktop, [[Android]], [[iOS]], in a browser or a device dedicated LCD screen with the help of [[DukeScript]]. Let us show you how to package your applications to be ready for ''store''-like distributions.
Let us show you how to develop services ready for the [[wikipedia:Internet_of_things|IoT]] age with the help of [[OSGi]] services. Let use present them and control them in a unified way on your desktop, [[Android]], [[iOS]], in a browser or a device dedicated LCD screen with the help of [[DukeScript]]. Let us show you how to package your applications to be ready for ''store''-like distributions.
-
== Checklist of [[Good]] API Design ==
+
== API Design Checklist ==
[[Good]] design skills are essential for easier acceptance of your [[API]] and through its perspective also your products. [[Java]] has been perceived as a verbose language, where one has to type more to perform similar functionality as in other, typically scripting languages.
[[Good]] design skills are essential for easier acceptance of your [[API]] and through its perspective also your products. [[Java]] has been perceived as a verbose language, where one has to type more to perform similar functionality as in other, typically scripting languages.

Revision as of 08:10, 15 April 2014

Time for another JavaOne proposals. I am not sure I really want to travel across the Ocean, but my friends encourage me to submit some talks, so let's try it.

Contents

Java & iOS Panel

I was invited by Shai to join panel about various strategies to get Java on to iOS. Originally I was supposed to talk about Bck2Brwsr VM, but then we agreed, it will be better to focus on DukeScript. Either me or somebody else from the DukeScript community will join the panel.

Gateway to All Screens of Your Life

The World Wide Web celebrated its 25th birthday in March (illustration photo). However the Web is no longer the same as it used to be at the beginning. Instead of browsers that connect to static HTML pages served by simple Apache servers out there, we have dynamic ecosystem of small devices running all over the globe and talking to each other in ways unimaginable back then.

Also the presentation changed. Rather than using browser for everything the user interface consumers are getting more and more used to dedicated applications installed from various stores. Linux distributions were using such application repositories for ages and now, when phones and tablets popularized this style among regular users, each OS is coming up with its own store.

Developing applications for such heterogeneous environment is however bringing its own challenges - unless we harness the power of Java and boost its ability to Write Once, Run Anywhere to new dimensions!

Let us show you how to develop services ready for the IoT age with the help of OSGi services. Let use present them and control them in a unified way on your desktop, Android, iOS, in a browser or a device dedicated LCD screen with the help of DukeScript. Let us show you how to package your applications to be ready for store-like distributions.

API Design Checklist

Good design skills are essential for easier acceptance of your API and through its perspective also your products. Java has been perceived as a verbose language, where one has to type more to perform similar functionality as in other, typically scripting languages.

Such verbosity is common, but not necessary. There are advanced design techniques that allow our users to focus only on their business logic, express it with few lines and auto-generate the boiler plate code on the background, all using standard Java libraries!

Let us walk you through the basics of the JavaC plugin infrastructure and give with its help design an API which allows us to be more effective, compact (while not loosing type safety) than similar JavaScript version. Let us show how good IDE support one can get when using such API!

Let us demonstrate the importance of a proper API usability study and demonstrate how it can improve the overall easiness of ones API!

Java & JavaScript Synergy. Together at Last!

While Java and JavaScript languages share the same prefix and while the latter was marketed as a scripting language for the first one, it comes with no surprise that these languages are completely different. For many years the JavaScript was a laughed out younger brother of Java, never treated seriously.

However things has changed. JavaScript made significant leaps forward while Java took a long, deep breath. JavaScript increasing popularity is built on its instant availability in every browser, yet JavaScript is also driving innovation: frameworks like AngularJS or Knockout.js are reshaping the way we think about MVC and how we allow developer/designer interaction. Progress is however not restricted to client side: V8 is solid enough VM to run server side applications and NodeJS programming model brought reactive based programming to masses. More and more developers have to ask what part of their application should be in Java and what in JavaScript? What tools to use to develop and debug each of such parts? How do I make those parts naturally work together? Wouldn't it be easier to give up on Java completely? Of course not, especially when you are at JavaOne.

Rather than finding the differences, let us seek similarities. Let us bring Java and JavaScript closer and demonstrate how one can mix code in these languages without any barrier. Pass objects between those systems without any barrier, call JavaScript from Java Step by step analyse what is happening,

Personal tools
buy