Karsten Silz has worked as a full-stack Java developer for 22 years in Europe and the US. In 2004, he co-founded a software product start-up in the U.S. Karsten led product development for 13 years and left after the company was sold successfully. Since 2017, he has been a contractor in Germany and the UK (Spring Boot, Angular, Flutter). He co-founded the SaaS start-up "Your Home in Good Hands" as CTO in 2020.
Users access applications on PCs and mobile devices today. There are two obvious ways to build front-ends for these devices: Web applications and native applications. Cross-platform UI frameworks combine advantages from both approaches. Examples are Google’s Flutter, JavaFX, Facebook’s React Native, and Microsoft's Xamarin. Important web application frameworks are Google's Angular, Facebook's React, and Vue.js. I will look at all these toolkits from the perspective of a Java developer and suggest which one to use in three common scenarios: New web application, new native iOS & Android apps, and what to do on the desktop when we have a web application.
In 2019, I developed a mobile app prototype with Flutter and a progressive web application prototype. I then decided to use Flutter for native mobile apps in my SaaS start-up. Based on my experiences, I will highlight what's good about Flutter and what's not.