Android Articles

Future Programming Language For Android Development

Future Android Development Language

Apple’s recent introduction of the Swift Programming Language has been a welcome announcement to many developers. Providing a great deal of modern programming paradigms, Swift promises to streamline the iOS development process and reduce the amount of boilerplate needed in order for developers to simply get things done.

While OS X and iOS developers have been reveling in this latest, groundbreaking announcement from Apple, Android developers have begun wondering if Google might have something similar in store for them in the near future.  Although some developers currently augment Java’s abilities with the use of Scala or other languages when developing Android apps, this is more along the lines of a workaround rather than a native solution.

So, if Google were to go a similar route that Apple did and provide an alternative programming language for its Android developers, what language would it be? Here are some ideas:

Dart: Developed by Google with hopes to “ultimately replace Javascript as the lingua franca of web development on the open web platform”, Dart features many modern concepts that unify the Object Oriented Programming paradigm with many Functional Programming aspects.  Boilerplate is significantly reduced as a result.  While Google has been targeting Dart as a replacement for JavaScript, some developers see the potential of this language becoming the future programming language used on the Android platform.  There certainly have been calls for this, such as exhibited in the following blog-post: Shaping the Future of Android With Dart.Go: Another language developed by Google, Go is seen by some as a good contender to complement Java as a development language on the Android platform.

From what I have seen being discussed thus far, however, is that it appears developers would rather prefer to use Dart than Go. For one thing, Go does not have some of the Object Oriented Programming capabilities as Dart. While some may not see this as a limitation, many developers coming from the Java realm would most likely prefer the familiarity of the Dart syntax over Go’s.Kotlin: Kotlin, developed by JetBrains, is a programming language with a syntax similar to Java which reduces a lot of the boilerplate evident in Java by utilizing some Functional Programming methodologies.  According to some developers, Kotlin would be a very welcome programming replacement to Java.C#: Developed by Microsoft, C#, like Kotlin, combines Functional Programming methodologies with familiar Object Oriented Concepts.  There is even a way to currently develop Android apps using C# and Xamarin.  The similarity of the C# syntax to Java would make this language very easy to get into, were it to be used for Android development.Java 8: If none of the above could be implemented, it would be of great benefit if Google would utilize Java 8 for Android development, as this latest iteration of the language introduces many Functional Programming concepts that greatly reduce some of the boilerplate.

With Apple having provided Swift to developers, now may be a great time for Google to unveil a new programming language paradigm.  Modern programming languages have obtained many new, modern features since the days of Java and Objective C.  Why not utilize these modern features for a more refined development experience? A developer will be able to focus more on getting things done than fighting the language.  In the end, it is a win-win situation for developers and Google.  Developers get to do what they love with more powerful tools and Google gets even more developers working on apps to add to the Google Play.

What do you think? Will we see a new language to complement Java on the Android platform in the future? What would be a language you would like to see being this replacement if this were to be the case?