Recently, I came across a Quora question that asked: Which editor is used for building an app?
This highly depends on the type of mobile app you want to create. Getting the right tools to create a mobile app is important as it can speed up your development cycles and can be the difference between a hard and a very steep learning curve.
The steps that I suggest on your selection for the right editor are the following:
- What kind of app do you want to create; native, hybrid or mobile web app? Do you want to target multiple platforms (cross-platform) just one?
- Keep in mind what your background is (web developer, noobie developer, JAVA or C# developer) in order to choose the tool that is the most in your comfort zone
- You need to learn the mobile hardware- and software landscape if you’re just starting out, which is a mission on its own. Choose an Editor that helps you as much as it can (that’s why I recommend using an IDE with code-checking, integrated refactoring options etc. It is an awesome support to have a tool that actually helps you out instead of making you struggle).
- Once you know what type of app you want to build and take into consideration what your developer background is, you need to select the framework to build the app with.
- Lastly, you can pick an IDE and get going
What kind of app do you want?
I suggest you get to know the types of apps and find out what type you want to build first.
There are a couple of possibilities to build a mobile experience:
- Native apps: Apps that are build or compiled in the language of the specific platform (the platforms being: iOS, Android, uhh.. o yeah, Windows)
- A variant on this is cross-platform native apps, build in one language and compiled into the native code for each platform
- The web part is also considered cross-platform as it can be shared over the mobile platforms
- Mobile website: A web app that is optimized to operate on a smartphone and uses User Interaction possibilities like swiping, pinching etc to feel more “native”
- Progressive Web Apps (PWA) are a variant on this that can be downloaded and operate offline
You can check out what kind you need for your app using a side-project of mine:
Once you’ve figured out what kind of app you want to make, these are the editors (which I recommend) to build your app with:
- iOS: the Xcode IDE
- Android: Android Studio
- Windows: Visual Studio (they have a free Community edition that works fine!)
- Native – Cross-Platform
- Xamarin: for C# cross platform dev check out . After Microsoft acquired Xamarin, Visual Studio for Mac is the new default IDE for Xamarin development. Mac version is awesome!
- Hybrid development
- I used to develop Cordova/PhoneGap and Ionicframework hybrid apps using but I’ve fallen in love with ever since it was released (free!)
- As a side note, when building hybrid apps, you will need the iOS, Android, or Windows native development tools to create custom native features that need to be integrated into the hybrid (web) part of the app.
- Mobile website
- Here also, just like hybrid development, I’d use or . Great tools, great communities, and lots of plugins make development with this awesome.
- If you want to build your web app using Java, you can use (open source), (open source) or (free open source, and paid versions) . I’m not into JAVA, but you can see more IDE’s here:
- For C# .Net (Core!), development I suggest once more.
So, there you have it. Pick your Poison.
Mind your developer experience
If you want to get up to speed, I suggest you take a variant that is closest to your development experience.
For example, web developers can start out with hybrid app development to get going using web tech at first. You’ll need to dive into the platform specifics and native functionalities on the side as well, so it will be a gentler dip into the art of mobile app development .
Both personal and at my work (a startup that co-creates human- and health-related solutions named( ), I’m using Xamarin to create cross-platform mobile solutions in combination with Azure and that is working like a charm.
Please note, I’m not affiliated with any of the tools. Just have experience with these and have enjoyed building (cross-platform) mobile apps with them.
Also published on Medium.