Android Learning Roadmap

Source: Internet
Author: User
Tags ruby on rails
1.Java Foundation
Many friends began to learn Android when they started, and seemed too worried. Android application development is based on the Java language, so there is no solid Java basics, but the mechanical copying of other people's Code, it does not make any sense. Then how much Java learn to be considered clearance. I personally think that at least the following two aspects should be mastered:

A Java basic syntax: This part of the content is not negotiable, must be cooked in the chest. As for the specific learning methods, you can read or watch video, but the key is to practice more, whether it is a book on the exercise or video inside the exercise, all need to be done carefully;

B design mode: Because of the Android system in the framework layer, the use of a large number of design patterns, without this knowledge, the understanding of Android will be greatly compromised. The type of design pattern is very many, one of all grasps, is not realistic, must first grasp the object-oriented basic design principle, have these basic principle support, can extrapolate.

2.Linux Basic Knowledge

As you all know, the Android system is based on the Linux operating system. In the development process, we also need to use some Linux commands. So some basic knowledge of Linux is necessary (say now programmers, do not understand Linux are embarrassed to greet others),
3. Database Basics

This is relatively simple, is a check and delete the database operation, you can look at this book: "SQL Programming exercises and Answers"

4. Network protocol

At least you need to learn two basic protocols, HTTP protocol and socket protocol;
5.Android Basic Knowledge

With the above bedding, and then look at Android, is not feel relaxed a lot of it. The best way to learn the basics is to follow the order in the Dev Guide in the Android SDK help documentation.
6. Server-Side development knowledge

Because many Android applications require server-side support, it is necessary to have some server-side development knowledge. As for the choice of which server-side knowledge to learn, it is more troublesome, because the type of technology is too much:

A) Java EE: Is the ssh-struts+spring+hibernate mentioned in the above email. The benefits of this technology are complete, powerful, and have been used for many years, and since everyone is already familiar with Java, learning ssh seems logical. But using this technology to develop server-side programs is cumbersome. Even some simple functions may require a large number of code and configuration files to implement;

b) PHP: Easy to learn, rapid development. But we need to learn a language, whether it outweighs the gains, we must judge their own;
C. NET: This technology is similar to Java EE, but in order to master. NET, you need to master C #, is also a troublesome thing;
D Ruby on Rails: This is my personal favorite server-side technology, simple, elegant, a few lines of code, can achieve very complex functions, but this requires Ruby language knowledge as the basis;

As to which technology to choose, it depends on the judgment of everyone.
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.