Best Android programming language
VTC Academy VTC Academy
Best Android programming language

Best Android programming language

Posted on 17/10/2018

This article is translated from Android Authority

Even if you don’t think we are fully in a Post-PC era, it is clear that mobile platforms play an essential role in many parts of our lives. Whether for fun or for profit, developing Android apps can be rewarding, both personally and financially. Assuming you have a certain level of technical knowledge then it is possible to develop Android apps yourself, but what programming languages do you need to learn?

The official language for Android development is Java. Large parts of Android are written in Java and its APIs are designed to be called primarily from Java. It is possible to develop C and C++ app using the Android Native Development Kit (NDK), however it isn’t something that Google promotes. According to Google, “the NDK will not benefit most apps. As a developer, you need to balance its benefits against its drawbacks. Notably, using native code on Android generally does not result in a noticable performance improvement, but it always increases your app complexity.”

Java

Java is a programming language first released by Sun Microsystems back in 1995. It can be found on many different types of devices from smartphones, to mainframe computers. You can use it on your desktop PC and even on the Raspberry Pi. Java doesn’t compile to native processor code but rather it relies on a “virtual machine” which understands an intermediate format called Java bytecode. Each platform that runs Java needs a virtual machine (VM) implementation. On Android the original VM is called Dalvik. Google has also started previewing its next generation VM called ART. The job of these virtual machines is to interpret the bytecode, which is really just a set of instructions similar to the machine code found in CPUs, and execute the program on the processor. The VMs use a variety of technologies including just-in-time compilation (JIT) and ahead-of-time compilation (AOT) to speed up the processes.

This means you can develop Android applications on Windows, Linux or OS X and the Java compiler will convert that source code into bytecode. They will be executed on the virtual machine of Android. It is different from the model used by iOS which uses a native compiler to convert Objective-C into ARM machine code.

Corona

If you don’t want to learn Java or how to design the user interface in XML, there are alternatives. That is using Corona SDK. Corona is an advanced SDK built on the LUA programming language. LUA is easier to learn than Java and this SDK will minimize difficulties in developing Android applications. A simple application displays a wallpaper of your choice and a text on the screen can be written in just 3 lines of code with Corona.

Corona includes a complex emulator that allows you to run the program immediately without having to compile your code. When you want to create an Android.apk file, you proceed to build through Corona’s online compilers and that application will be saved to your computer.

Corona is designed primarily for game making (but not exclusively) and it includes libraries for sprites, sounds, networking games, and a 2D physics engine. Almost everything in Corona is displayed via OpenGL. This means you can take advantage of the graphics capabilities of the GPU, in addition the default application is a blank canvas, so all you need to do is start drawing!

You can download Corona for free and use it, but if you want features like in-app purchasing or the ability to call native Android APIs, you need to pay a monthly subscription fee.

Phonegap

If you already know HTML, CSS, and most importantly Javascript, then instead of learning Java or LUA, you can build Android applications using the skills you already have. PhoneGap is based on Apache’s Cordova project. Basically it creates a webview that you can manipulate using Javascript. Web applications can interact with different device features like a native application, by referring to the cordova.js file for API binding. PhoneGap native functions include accelerometer, camera, current location, internal storage and many other things.

Other options

Java, LUA and HTML / Javascript are not the only options for developing Android applications. You can use Titanium, another Javascript-based development platform, and Gamesalad, a mobile game creator that lets you create mobile games without programming!

If you have experience using any other Android application development platform, or if you want to introduce an interesting platform, then share it in the comment section below!

Xếp hạng: 0 / 5. Lượt bình chọn: 0

Rất tiếc vì trải nghiệm không tốt của bạn về bài viết này!

Bạn có thể cho chúng tôi biết bạn chưa hài lòng vì điều gì không?

Other news
Great resources for Android Developers

Great resources for Android Developers

Posted on 16/10/2018
One of the best parts of a career in Android development is the vibrant community. The Android developer ecosystem is dynamic and symbiotic, with devs sharing tips, tricks, and tutorials across the internet and in real life at hackathons, conferences, meetups, and more.
Where to start Android programming?

Where to start Android programming?

Posted on 15/10/2018
Where to start Android programming is a question that many students are interested in. Today, we find out how to get started with Android programming and the software to prepare to learn it.
VTC Education: A vision for education in Vietnam

VTC Education: A vision for education in Vietnam

Posted on 11/06/2024
VnEcomony.vn - Chairman of VTC Education, Mr. Viet Tung Hoang, shares his aspirations for education in Vietnam and how to best link jobseekers and recruiters.
Latest course
3D Modeling

3D Modeling

4.9 (6576)
Course format: On campus
Duration: 2 years
Major: Design
Game Development

Game Development

4.9 (7545)
Course format: On campus
Duration: 2 years
Major: Information Technology
3D Animation

3D Animation

4.9 (6777)
Course format: On campus
Duration: 2 years
Major: Design
Full-stack Digital Marketing

Full-stack Digital Marketing

5 (7656)
Course format: On campus
Duration: 2 years
Major: Digital Marketing
Other news
Great resources for Android Developers

Great resources for Android Developers

Posted on 16/10/2018
One of the best parts of a career in Android development is the vibrant community. The Android developer ecosystem is dynamic and symbiotic, with devs sharing tips, tricks, and tutorials across the internet and in real life at hackathons, conferences, meetups, and more.
Where to start Android programming?

Where to start Android programming?

Posted on 15/10/2018
Where to start Android programming is a question that many students are interested in. Today, we find out how to get started with Android programming and the software to prepare to learn it.
4 transformative waves must know to use AI for business

4 transformative waves must know to use AI for business

Posted on 16/01/2024
With the ascent of technology and generative AI in 2023, businesses and employees now are facing a question: how to use AI for business to be more proactive towards upcoming changes.

Contact VTC Academy

    I have read and agree to the General Provisions and Information Security Policy of VTC Academy.

  • Hanoi: 0981 114 757
  • Da Nang: 0865 098 399
  • Ho Chi Minh City: 0818 799 299