CinJUG: "How Should Java Developers Build Front-Ends for Web, Mobile, and Desktop Today?"
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 toolkits combine advantages from both approaches. Examples are Facebook’s React Native, Google’s Flutter, Microsoft’s Xamarin, and JavaFX. I will look at these toolkits from the perspective of a Java developer. My talk will suggest which toolkits to use, what their sweet spots are, and when you should avoid them.
In 2019, I developed a mobile app prototype with Flutter and a progressive web application. I then decided to use Flutter for native mobile apps in my current project. I’ll demo these apps and select development tools in the talk. Finally, I will highlight typical issues with Flutter and how to solve them.
Here are the slides as PDF. They are 7 MB:
You can also get the slides in their original Keynote format. “Keynote” is Apple’s presentation application. Why would you do that? I animated the slides so they are more pleasant to watch. Or maybe you want to peek under the hood to see how I achieved specific effects. These slides include two videos and are 40 MB in size!
The slides use the following images:
- One Finger Touch by Felix Westphal from the Noun Project
- Sceptic Emoticon from Wikimedia Commons
- Apple Watch from Wikimedia Commons
- Samsung Galaxy Watch from Wikimedia Commons
- Apple TV from Wikimedia Commons
- Google Chromecast Ultra from Wikimedia Commons
- HTML 5 logo from Pixabay
My talk mentions a Flutter prototype I built in the summer of 2019. Here it is:
My talks also mentions a Progressive Web App prototype I built at the end of 2019. Here you go:
Flutter & Dart
Here are the instructions, straight from the Flutter website:
Here’s a selection of Flutter tutorials and courses:
- Google has a number of free tutorials for Flutter.
- freeCodeCamp has at least two free Flutter courses:
- Code with Andreas has two paid courses:
- Finally, academind has a 41-hour Flutter course. I used the 2019 version to learn Flutter and can highly recommend it!
Part 8 of 13
in the Talks
« LJC Community Talk: "How Should Java Developers Build Front-Ends for Web, Mobile & Desktop Today?" | CinJUG: "Pick Technologies & Tools Faster by Coding with JHipster" » | Start: LJC Lightning Talk: Eclipse OpenJ9: Memory Diet for Your JVM Applications
What will be in Java 21, IntelliJ will look like Visual Studio Code which doesn't replace IntelliJ, all Java frameworks have major releases, and surge of React & React Native in job ad mentions over.
Read my newsletter