Today, we released the first public Beta of IntelliJ integration for Xtext. In this post you'll learn about our progress so far, the hurdles we have faced and how you can take a look yourself. What have we achieved so far? We have primarily focused on integrating traditional Xtext languages (i.e. without Xbase) into IntelliJ. This already proved to be a sizable task. There are fundamental architectural differences between how Xtext, EMF and Eclipse work and how IntelliJ goes about its job. [...]
Relational Databases seem to be the universal hammer in the toolbox of every developer. There is the notion that you can solve every problem with it – you just have to smash hard enough. However, if you use relational databases out of habit, you can easily run into troubles when it comes to schema evolution, scalability, […] The post Why Relational Databases are not the Cure-All. Strength and Weaknesses. appeared first on Philipp Hauer's Blog.
Microservices are an interesting approach for achieving modularization of an application. An application is built as a set of services. These services can be independently developed, tested, built, deployed and scaled. However, microservices are not suitable for every use case. This post discusses the benefits and drawbacks of microservices. Microservice Architecture Applying microservices means to compose an application […] The post Microservices in a Nutshell. Pros and Cons. appeared first [...]
In a previous post I introduced the KIELER Lightweight Diagrams (KLighD) tool for generating unmodifiable graphical views. Here I present different approaches to control the generation of diagrams, either through a sidebar shown in the UI or through declarations in the source file. The code examples are available on GitHub and build on the Domain-Model DSL shipped with the Xtext examples. Adding Parameters to the UI KLighD allows to indirectly manipulate the synthesized diagrams by setting parameters. [...]
Java has checked exceptions and is out on a limb. Is there a reason, why other languages like C++, Objective-C, C#, Scala, Xtend don’t support this concept? What is the problem about checked exceptions and what can we do instead? And most important: What do water wings and checked exceptions have in common? This article gives […] The post Checked Exceptions are Evil appeared first on Philipp Hauer's Blog.