Java SE 9 has just been announced with it's major feature of modularity, also known as Jigsaw. If you listen to Oracle, you would think that moving to this totally different JDK and JRE is as simple as writing your first "Hello World!" program. Depending on your application's needs, it may turn out to be this straight-forward. But, as we continue to experiment with this new Java SE 9 paradigm, we are discovering several hiccups, hurdles, and surprises.
Standard [35 minutes]
Are you tired of null pointer exceptions, unwanted side effects, SQL injections, broken regular expressions, concurrency errors, mistaken equality tests, and other runtime errors that appear during testing or in the field? Do you wonder why every production code base needs its own implementation of money and currency types, physical units, or string processing? Aren’t all these simply indicators for missing features in Java’s typesystem? Turns out they are. And even better: Annotation processing to the rescue - there is a standardized way to fix it!
Code formatting is an opinionated beast. It always has been a matter of taste, and it always will be a matter of taste. This is the reason, why professional formatting tools, such as Eclipse JDT, offer a gazillion number of options. Which is still not sufficient enough. After all, you can override them inline with tag-comments to make the formatter shut up. Can't we do better than that? What if we could use machine learning techniques to detect the preferred code style that was use in a codebase so far? Turns out, we can.
The JDT team is dedicated to delivering full support for Java™ 9 right when the new version is released, just as we did for every version. In this session we will share some of the things we learned while working from an evolving specification. We will also discuss the impact of this new version specifically on tool-smithing for Java.
The modeling community is among the most active and diverse in Eclipse's ecosystem. The modeling symposium aims to provide a forum for community members to present a brief overview of their work. We will encourage 10-minute lightning talks to facilitate a broad range of speakers. The primary goal is to introduce new and interesting technology features. We will open up an informal call for submissions from the community. Depending on the number, we will select submissions that will create a diverse slate of talks.
This talk is about the solution that building a domain specific language (DSL) can bring. The problem that many companies are facing right now is not being able to communicate with their system efficiently.
Using the language workbench JetBrains MPS, you can create powerful DSLs. I will show how the development of a software product is done today and examples of DSLs improving the whole process. We will analyze the situations when building a DSL add value and when not.
While creating languages and IDEs with Xtext is a breeze, it may become a little bumpy when you want to provide headless tools. Even though there exists decent support to generate and compile Java code from DSLs with Gradle or Maven, build systems for other target languages are still uncharted waters. Navigating through them depends a lot on your own technological decisions and of course on the target language of your choice.
In this talk Markus will share hands-on project experience for building and maintaining CI processes applicable in small and large enterprises projects.
After a short introduction to the project context Markus will focus on best practices, lessons learned and tools used within automated deployment chains based on state-of-the-art Jenkins pipelines.
Smart home setups are as heterogenous as their users, whose desires, expectations and habits are highly individual. Eclipse SmartHome addresses this situation at various levels. It is a very flexible framework to build tailored smart home solutions that are easily extensible and customizable. End users of such solutions have the possibility to set up personal automation logic to cover their specific use cases.
In this talk we will demonstrate how ThyssenKrupp Steel’s Manufacturing Execution System, which targets the production planning and control of steel plants, incorporates GEF-based views in its Eclipse-based development environment. We will start with a short introduction to the application domain, then demonstrate the relevant parts of the development environment’s user interface, focussing on the diagrammatic views that integrate automatic layout, image export, as well as JSON-based persistence.