Which language should you learn first if you want to make an app?

JavaScript, is what I would Suggest!!

Before you proceed further, please be advised that this answer is solely based on my opinion formed out of experience.

Now, Why JavaScript? Why not Java, C/C++, Swift (objective-C), et cetera? If that question has to be answered in one word, I would say Satisfaction! JavaScript (JS) is a popular open-source programming language. Again, for the lack of a better word to emphasize it enough, open-source and popular. This gives it an edge over others. The manifestation of its acceptance is reflected over the enormous variety of frameworks and libraries derived from it.

Framework is a flavored mutation of the generic programming language. Some (again, some) of the popular frameworks (in no particular order) based on JS are as follow:

I understand that something being famous doesn’t necessarily make it a fit choice: Exhibit A- Java! Rather, in case of JavaScript, it has to do with the learning curve – how much effort you put into learning something prior to being productive with it. You don’t have to invest hours and thousands of rupees(or dollars, etc.) into coaching centers or online courses. Nothing beats JS when it comes to the smooth and rewarding learning experience. Take my word for it!



Now, back to the question’s answer’s justification: Satisfaction- JavaScript induces the perks it gets from the massive open-source community to its plethora of libraries and frameworks. And how they’re often used together in perfect harmony makes it even better! It increases code simplicity and re-usability by several notches.

  • Visual Studio Code, a (favorite of many) source code editor by Microsoft is written in JavaScript & TypeScript (yet another mutation of JS)
  • Slack, a cloud-based set of proprietary team collaboration tools and services, made its cross-platform desktop app on the foundation of electron
  • Facebook’s apps (including Instagram app) are cross-platform (having mutual code base for both android and iOS) thanks to its awesome indigenous JavaScript framework, React Native!
Learn once, write anywhere.

A Customary “Hello, World!”

filter_none

edit
close

play_arrow

link
brightness_4
code

import { AppRegistry, Text } from 'react-native';
import React from 'react';
   
const helloWorld = () => {
    return <Text>Hello, World!</Text>
}
   
AppRegistry.registerComponent('HelloWorld', () => helloWorld);

chevron_right


That’s it. That’s all it takes for React Native to create the same HelloWorld app for Android as well as iOS. Tell me if it’s that elegant with either Java or Swift 😉

A note on Performance- React Native apps aren’t always optimized. However, the trade-off, if any, isn’t (usually) significant enough given the development-production ease.



My Personal Notes arrow_drop_up

FullStack Developer & IoT enthusiast A High functioning geek et cetera

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.