Native or Cross-Platform Development — Which Has a Future?
At the DUMP IT Conference, the Doubletapp team conducted a mini-research study. They asked a few questions about technologies frequently discussed by our account managers with clients, and we were curious to hear what specialists from different companies would say. Here are their responses.
Which technologies should you choose if you need to create an app from scratch?
Lead Marketing Manager, Evrone
I would choose Flutter 100%. Native development might be too costly and time-consuming, whereas Flutter allows you to release the app on three platforms simultaneously. It’s quite economical, a bit of a hack, but the MVP will be done quickly and ready for testing.
Frontend Dev, Yandex
I would take a simple native shell and use WebView inside it, developing either in Vue or React depending on what the app needs.
Head of Mobile Development, Doubletapp
I would lean towards hybrid cross-platform development, implementing shared business logic on KMP and native UI using SwiftUI and Compose. This approach reduces development costs while maintaining a high-quality user experience with native UI.
Who needs Flutter, and who needs a native app?
Frontend Developer, Yandex
I think native development is more suitable for high-load applications. Flutter is good for MVPs and simpler apps that require less long-term support.
Frontend Team Lead, Positive Technologies
I’d say Flutter is suitable for rapid development, such as prototyping or quickly testing hypotheses.
Recruiter, Evrone
As I understand it, Flutter is good for quick projects like MVPs. Native development is ideal when you want to focus on performance, ensuring the app runs optimally on Android or iOS devices. So, it’s a more specialized tool. Flutter is like a Swiss Army knife — versatile but limited in certain tasks.
Flutter Lead, Doubletapp
If we set aside budget considerations (it’s clear that development with Flutter is cheaper), the first thing to think about is the functionality of your application. It’s important to remember that Flutter is primarily a UI framework, and native code is still responsible for platform interaction. Yes, there are countless plugins that eliminate the need to write such code, but if you plan any non-standard platform interactions, you should consider native development. Conversely, Flutter allows you to save on development costs with minimal loss in performance.
What technologies will be used in the future?
Team Lead, Sovcombank
I’m from the corporate world, and for us, the future is clear. It will be Java for the next 5, 10, 15 years. If a student wants to learn a trendy language to stay on top, it’s risky, like gambling. You might miss out on job opportunities, salary expectations, project interest, and project variability. Tried and true technologies for endless performance include C#, Java, C++.
HR, SBER
Golang. I think it’s a promising language. Java will likely remain prominent as well.
System Analyst, SBER
I think things will mostly stay the same. Python and Java will probably remain at the top.
Recruiter, Evrone
Hardcore languages like Rust will become more popular. They’ll use it for high-load microservices. This is already happening. Python and Go will also rise. Backend will continue to see C++, .NET, Java. Frontend will stick with React, which seems to be here to stay. For mobile, it will be Flutter and native.
CTO, Doubletapp
In mobile development, we are witnessing a new wave of cross-platform development — Kotlin Multiplatform. It allows sharing code between Android and iOS applications while using native code for writing UI and system interactions. This way, we don’t lose performance and capabilities compared to other cross-platform frameworks. However, Flutter is very popular for developing small applications and MVPs. In machine learning, Python continues to hold its position, with PyTorch confidently surpassing other libraries among frameworks.
In the backend, we are seeing an increase in the use of Go. Python remains very popular, and Java also maintains its position.
Regardless of the stack, we expect a growing use of AI to assist developers.
Read our other stories:
- The Doubletapp Experience: How we Create Animation
- Has AI already taken over the world?
- Doubletapp Meeting Notes
- How to communicate with a knowledge base in natural language: using LLM to create such a system and evaluating its performance
- University International Sports Festival: Website for the festival
- Mobile Application for Exams (NDA)
- IT-Regatta Identity
- Branding for the Data Science Kazakhstan Community
- Agency Growth Day: Event Website for Alto
- How We Implement JWT Authentication
- MOBILE APP TESTING — PROCESS DETAILS
- DNS for beginners: what is it, how does it work, and what is it for?
- Cross-platform Mobile App Development — Pros and Cons
- Stages of Design Process
- Storing Resources Wisely: How to Organize Resources in a Multi-Module Project
- They Will Make You Hate It: Getting to Know VAST and VPAID, or How to Integrate Ads into a Web Video Player
- The Role of QA in Product Security Testing
- Overview of Monitoring System with Prometheus and Grafana
- “External” navigation in a multi-module project in Kotlin
- Parsing responses to BLE commands in Swift using the example of GoPro
- What Is Happening With The Mobile App Market
- Yandex Travel
- Case Ural Music Night
- Player’s Health Protect
- DJU Drone Club
- Case Alibra School
- Case Praktika
- Case Watchmen
- Case Adventure Aide
- Neural Network Optimization: Ocean in a Drop
- Case Elixir Gallery
- Forgive us, John Connor, or How We Taught a Neural Network to Accurately Recognize Gunshots
- Case Bus Factor
- CI/CD for iOS-projects: device or cloud? What’s better, Doubletapp’s take
- How to set up Gitlab CI/CD with Fastlane for iOS-project on a Mac mini
- The story about the contest from telegram
- What should be done before starting the site? Checklist from Doubletapp
- How to Generate PDF Documents in Python
- How to manage Gradle dependencies in an Android project properly
- The History of the Doubletapp Company