Eshiet Ekemini
Mar 9, 2022 ⋅ 7 min read

Kotlin vs. Flutter for Android development

Eshiet Ekemini A graduate of University of Uyo and a tech enthusiast, Ekemini has been building for mobile for two years, with a particular focus on Kotlin and Flutter.

Recent posts:

Implementing Infinite Scroll In Next Js With Server Actions

Implementing infinite scroll in Next.js with Server Actions

Infinite scrolling in Next.js no longer requires external libraries — Server Actions let us fetch initial data directly on the server.

Rahul Chhodde
Apr 19, 2024 ⋅ 10 min read
Integrating Django Templates With React For Dynamic Webpages

Integrating Django templates with React for dynamic webpages

Create a dynamic demo blog site using Django and React to demonstrate Django’s server-side functionalities and React’s interactive UI.

Kayode Adeniyi
Apr 18, 2024 ⋅ 7 min read
Using Aoi Js To Build A Bot For Discord

Using aoi.js to build a bot on Discord

Explore how the aoi.js library makes it easy to create Discord bots with useful functionalities for frontend applications.

Rahul Padalkar
Apr 17, 2024 ⋅ 9 min read
Web Components Adoption Guide: Overview, Examples, And Alternatives

Web Components adoption guide: Overview, examples, and alternatives

Evaluate Web Components, a set of standards that allow you to create custom HTML tags for more reusable, manageable code.

Elijah Asaolu
Apr 16, 2024 ⋅ 11 min read
View all posts

12 Replies to "Kotlin vs. Flutter for Android development"

  1. This popped up in my Google Now feed and caught my attention. Disclaimer: as a Sr Android (Kotlin) dev I’m indeed biased, but I’ll try to stick to the facts. In general, I think this is kinda strange to compare a framework and a language, but I guess this is just unfortunate wording.
    A couple of things to note: isn’t Instant Run the “hot reload” feature you talk about? It works fine with both Java and Kotlin.
    Also, I can’t agree with “Fewer third-party libraries” because basically every Java library will work with Kotlin, so you have access to the whole Java universe.
    As for the rest I can agree that Flutter might be a cheaper alternative due to it’s cross-platform nature, BUT: Kotlin is also still new to the market and it’s really hard to find experienced devs, at least in our market which is Germany (I interviewed many candidates for my team recently and must say most are still “thinking in Java”). Flutter is even newer, and what happens when demand is much higher than supply? Right, the salaries go through the roof. So the theory goes at least 😉


  2. “Kotlin is also free and open-source to use — although it only works for Android”
    Kotlin Mutiplatform: am I joke to you?

    And if talking seriously, after reading your title I laughed so hard I nearly pissed myself. Why the hell you compare framework and language? Let’s compare C++ and React then?

  3. I have played with Flutter/Dart and use Kotlin for new projects but still use Java for older apps. I am nervous about using Flutter for complex apps that have heavy dependency on hardware. I like Kotlin as it is a modern language like Swift. I am not as confident that the Dart/Flutter/Fuschia is the future if Android. I also still enjoy the syntax of mature languages like Java and C#. Considering the dependency that Kotlin and Flutter still have on Java, as well as Java’s popularity in other fields, I don’t believe Java is going anywhere any time soon. I tried converting one Java app to Kotlin and it significantly increased my .apk size as well. I believe Kotlin is the future of Android and if your looking for a framework that you can use cross platform there are many options Flutter is just one. Other options for app development like React Native or Unity for game development are just as apealling. Maybe I am just old school but these are my thoughts.

  4. kotlin is very confusing to me. I am used to PHP, so object oriented is not familiar and there are many classes, functions, and syntax that I don’t understand. But flutter is easier, i tried and fall in love in first try

  5. Hey, congrats on the article being featured in Google now! I’ve been coding for Android for 10 years and I think the main issue is the concept of comparing a language to a framework, and going back and forward between comparing superficial language features of Kotlin and Dart languages, and similarly superficial aspects about the Android native SDK and the Flutter SDK, which shows a lack of deeper understanding a bit. You could separate the two, think about what Kotlin and Dart offer you in terms of language features and flexibility to code any (SDK agnostic) piece of logic – how clean, easy to read, succinct they are, etc. And then think about what app features you could deliver using Android SDK and Flutter SDK respectively, and what’s easier in one and harder in the other, and go deeper and more specific into the use cases.
    That way you have not one, but two great articles that would bring a bit more meaningful knowledge to the reader.
    I’m really happy and grateful you’re writing these articles and I hope you keep going! I wish to share a bit of my knowledge for your consideration and not discourage your own voice.

  6. >>Flutter Desktop support has just been rolled out to Beta.
    As of the time of this writing, flutter.dev/desktop page claims this technology is still alpha.

  7. Flutter isn’t a framework, it is an sdk like jdk and many other. probably He ment Kotlin sdk compared to Flutter sdk. Language wise comparison could have been DART compared to KOTLIN, which both are widely used from Client service development, Backend and embedded systems as well.

  8. Great article except I don’t know how I feel about this part:

    “Setting up the project above for Flutter took less than ten minutes on an unsophisticated machine with a ram of 8GB and a core i3 processor. Setting up the Kotlin project and completing it took more than 30 minutes on the same machine. From this, you can see it’s easier to create an application using Flutter.”

    I guess I’m not sure what you meant by “setting up and completing it” but if you meant setting it up code-wise, that should not have taken no more than 10 minutes to do, and running the build shouldn’t have taken 20+ minutes even on a machine with i3 and 8GB ram. But this is all relative to your experience with it so I don’t think it’s a fair comparison.

    If what you stated is true about Flutter being easier to use, you can use Jetpack Compose which seems to be heavily inspired by Flutter so they have a lot of similarities.

  9. I’m not an expert
    but in my opinion the problem is not Kotlin or Flutter
    it’s Android API!!
    Choosing Flutter is just NOT to use the AndroidAPI mechanism
    and not because you don’t want to use Kotlin!
    But I seem to be the only one who thinks so

    1. That might be the case when you take few things into consideration, but on a broad view of things, it actually is much more than the Android API alone. Especially if you factor in the IOS, Web, and MacOs side of things. But fair point though

Leave a Reply