4 minutes read

Today is the day you start a new chapter of your career as a developer. Every time we begin studying a new technology we feel like being lost in a foreign country. There is that awkward feeling when everyone understands something that you haven't mastered yet. But don't worry: our topics will teach you the basics of programming on Android.

Android OS: the past and the present

The official release of Android OS took place in 2008 and in 11 years, it has become the most widespread OS for a wide range of hardware, from gadgets and TV sets to cars and refrigerators. As we're writing this, there are dozens of SDK versions and more than 2 billion devices using Android, and the number is only growing. It means that Google is interested in the Android OS and keeps updating it. You can get regular updates and detailed information on the list of Android builds.

Android SDK is a software development kit provided by Google to help you as a developer create Android apps. To make creating mobile apps simpler and more optimized, Google keeps updating its SDK to move the community forward and compete with other mobile operating systems like iOS. But which Android SDK versions to use as a developer? A rule of thumb is you should use one of the new versions to take advantage of all the latest features and optimizations provided by Google. But make sure that these features are available on your target users' Android phones: not all people have the latest versions of Android installed on their mobiles.

A lot of device configurations mean that our resources have to be adaptable — and this is the coolest feature in Android! For example, you can create different XML layout files for different screen sizes and the operating system will choose the right one, taking into account the screen size of the device.

tablet and phone in landsacpe and portrait orientations

Jetpack Compose is the new toolkit for building native Android layouts. It was launched in 2021 with the aim to further simplify and accelerate the UI development for Android apps.

From the very beginning, Android OS has been an open-source project led by Google. This gives an opportunity to you as a developer to contribute and deepen your knowledge. Undoubtedly, the huge size of Android's ecosystem and its open-source philosophy have many other advantages. For example, modern technologies are very likely to be included in new Android OS versions. So, if you write Android apps, you'll be updated on current trends!

Programming language

Which programming language does an Android developer use to create the apps? Initially, Java was chosen as the main language to write for Android. Andy Rubin, a former CEO of Android Inc, explained that other languages were considered, but Java is a "well-known brand name as well as compatibility being that it is a common language taught at universities worldwide".

In 2019, Google officially announced Kotlin as the preferred language for Android development. It's important to know how to write in Kotlin because it provides an easier and faster way to create applications. Should you know Java to work with Kotlin? The short answer is no, however, the long answer is that knowing Java would help you a lot. As we mentioned before, Java was the main language for Android development since the start of the Android project, which means that all Android SDK versions, most libraries, most codebases of existing apps, and most web tutorials are all written for Java. So, knowing Java would let you take fuller advantage of this huge heritage.

A new era

In 2009, the number of mobile Internet users started to grow, while the share of PC users became much smaller. Smartphones with Android OS and high-speed mobile data, Wi-Fi, and plenty of opportunities for mobile applications have radically changed the way people use their phones. That means that as an Android developer, you are capable of creating an application that could play a vital role in people's lives.

Prerequisites

In order to start, you should be familiar with such concepts as Classes and Objects, Interfaces, Listeners, Inner Classes, Anonymous Classes, and Generics. Without a solid understanding of these concepts, you will likely feel lost. If you like OOP concepts but your memory is a bit foggy, don't worry — our knowledge map is at your service. It will also be useful to know XML. However, creating an Android layout with XML is quite intuitive, so there shouldn't be any problems.

294 learners liked this piece of theory. 2 didn't like it. What about you?
Report a typo