JavaRush /Java Blog /Random EN /Why Android Development? From personal experience. Reason...
Oleksandr Klymenko
Level 13
Харків

Why Android Development? From personal experience. Reasoning and facts

Published in the Random EN group
If you are one of those who have not yet decided where to apply their java knowledge, then this article is definitely for you. The article discusses such a direction as android development. The story of how I became an Android developer. Tips and prospects for choosing android development. Come in!
Why Android development?  From personal experience.  Reasoning and facts - 1
Hello JavaRush students! Many of you already have an idea of ​​what industries in the IT sphere use our beloved java. Some of you may have already decided and made your choice. In this article I will tell you how I became an Android developer. I’ll explain why I think this direction is the most promising. I will give you an understanding of what Android development is. And of course, I will share tips for a successful start to your career as an Android developer.
Why Android development?  From personal experience.  Reasoning and facts - 2

I'll start with history

I know from myself that many people like to read the development/success stories of other JavaRush students. It is even right to have an interest in this. Other people's mistakes, right actions, experiences - all this can be useful for someone to make a decision in a real situation. But there are also those who are not particularly interested in all these stories. Below is one of these stories, and reading it depends only on your desire =) My first acquaintance with android was in the summer of 2016. At that time I didn’t know Java at all. The only knowledge I had was experience in first-year university programming in C/C++ and some knowledge in html/css layout. That same year I got my first smartphone running Android OS. I remember how I was overcome with a wild desire to write and launch my own application on it. Without wasting any time, I started researching. And it turned out that the main programming language for Android development is java. Not desperate, I started watching training videos that told me how to prepare and configure the development environment. Having looked at all the courses on the Internet that were freely available at that time, the most interesting and, in my opinion, well planned were the Lessons of Alexander Klimov. After completing 18 lessons in about 2 weeks, I set off for free swimming. I had my own ideas and, together with Google, I tried to implement them. I carried out most of the development in xml markup - this is a visual representation of the screen. If there was a need to edit java code directly, then I simply typed into Google a description of what I wanted to get and copied the ready-made code (most often from StackOverFlow). Then in Android Studio I edited it until it worked. This unproductive approach made it clear to me that without knowledge of the basics of java I would not get far. After a month of my knowledge of Android, by coincidence, I was offered to develop Android applications at the company where my father worked as an iOS developer. Naturally, there was no question of any salary, this was a voluntary practice, and if my code was useful for something, it would be left in the final product. And so it happened, within a month I more or less understood xml layout and was able to redesign many screens of one of the applications. The owner of the company informed me that the result of my work was successfully sold to the customer and gave me a reward of $100. So I stayed to work in this company on a very, very, very small salary, but with the opportunity to learn from real projects. After delving into these projects for days, and not without the help of kind employees, I figured out java and the main points of android development. So, month after month, I combined my studies at the university with my studies at work. In the spring of 2017, I learned about the JavaRush project from my classmate, she purchased a subscription and completed most of the course. I became interested and decided to try it. Going through the free part of JavaRush was for me, for the most part, for research purposes, because... my level of knowledge was higher than the target audience of the course. It was also very important for me to structure my knowledge, because... I missed this at one time, rushing from topic to topic. You know, after going through 10 levels and completing all the tasks, I got the pleasure of reading a very good book! In knowledge, everything finally fell into place. I did not move further due to lack of time, and also due to the fact that many topics had previously been well studied. Now I continue to work in the same company at a higher rate and remember with a smile my funny tasks at the very beginning of my career. The motivation for writing articles is a competition, as well as the need to structure your knowledge and the desire to share it, which is what I did in my previous article about the Reflection API .

Why is Android development a promising direction for a beginner Java programmer?

I'll start by describing the general picture of what Android development is and what knowledge is needed to get started.
Why Android development?  From personal experience.  Reasoning and facts - 3
Among all the areas in which the main technical tool is java, android development is the most undemanding in terms of knowledge of this particular programming language. Many java features in android are not used due to their uselessness, and many of them were completely excluded in certain versions of the gradle builder. In this regard, the entry threshold for knowledge of java itself is at the level of completed JavaRush courses: java core and java syntax. Of course, you should not forget about understanding multithreading; here such experience will be very useful. With such Java knowledge you will feel quite confident. Let's go through the UI (User Interface) part of android. Layout or arrangement of application elements is carried out using xml layers. Here you need to combine different tags to get the expected result. If you have dealt with html layout, you will get the hang of it pretty quickly. But even if you are not familiar with html, there is nothing complicated about it, and there is plenty of material on this topic on the Internet. Example xml markup in Android Studio IDE:
Why Android development?  From personal experience.  Reasoning and facts - 4
Next, an important point is knowledge and understanding of the git version control system. It is difficult to imagine developing an Android application without this technology. But here you don’t need to be an advanced specialist. As a beginner, you will rarely need to perform complex manipulations with your repository. Also, if using the terminal and constantly entering some commands is alien to you, and using git means exactly this, then there is a popular graphical shell SourceTree , which will draw all your branches and give a clear understanding of where you are. Well, now let's talk about the prospects for choosing the direction of Android development. Despite the above, behind the rather low threshold of entry into learning Android lies a whole mountain of opportunities and development paths! Android OS is a fairly rapidly developing platform. Almost every year a new version is released, which brings new features for users and various goodies for developers. In this regard, your work will never turn into a routine of supporting a specific stable version, there will always be something new, there will always be somewhere to move. For example, not long ago Google announced kotlin as the official development language for Android. They also presented a new architecture for the Android application using the MVVM (Model-View-ViewModel) design pattern. Don't forget about the popularity of the platform:
Why Android development?  From personal experience.  Reasoning and facts - 5
In terms of career growth, you won’t have to constantly code first for one salary, and after a while for another, etc. Recently, a popular position is that of an architect, whose task is to oversee and design applications, promoting his vision of its architecture. With proper knowledge of design patterns, these doors will be open for you. The large number of gadgets and devices running Android suggests that it is not necessary to write only mobile applications. You can develop programs for watches, TVs, cars and even refrigerators! As you can see, there are a lot of prospects, and this list can be continued, but I’m afraid the length of the article will be quite large. But to make all these possibilities a reality, I want to share some tips with you. As mentioned above, Android is developing at a decent speed, and many development elements are simply becoming outdated. Don't waste your time studying them. Most likely, new ones have already replaced these; it’s better to devote your time to studying more modern approaches. Always listen to the advice of those who have been working in this field longer than you, sometimes some advice is more valuable than any information on Google. And also don’t be afraid to ask such people for advice. Find yourself a source of additional information on the world of Android, for example, digests of mobile developer articles on Habré or other popular IT communities. I will end here. I hope my article helped you imagine the world of Android development, and you learned some useful things =) Write your feedback in the comments or support with likes. Thank you all and good luck in any java direction!
Comments
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION