This is a very suitable collection of Android Advanced / heavy and difficult to arrange an interview

 

 

EDITORIAL

I remember my "job" to self sophomore Android and teachers do with the project, to begin in the current junior internship, she has graduated more than several years, learning Android has 6, more than seven years! But the overall feeling is very fragmented knowledge, and not deep enough, encounter a problem, so with this article.

This article is a summary of my own Android programming skills, thought and reflection, intended to systematic and in-depth study of heavy and difficult to Android, to make a step on his ability. Below I will list Android knowledge in relatively high frequency, important or difficult to understand knowledge, and the future will be based on knowledge of a point of this article lists a study and research, and wrote a series of articles, as their study notes summary , children's shoes and I also hope to learn together and exchange ~

Description: This is not an interview to talk about the experience, but self-summary. I do not like going to a lot of articles online that lists only point, say the results, but did not say why, then rote, but I do not know know it then. And I was going to study in depth the following knowledge, and knowledge from every source code or example to write articles so that even know these and know why. I do not know whether to do, but I will persevere in our efforts as a flag stand it ~

Android Advanced text heavy and difficult

Java

  • Collection: Use the scene, read the source code
  • GC mechanism
  • virtual machine
  • Object Memory Allocation

To learn Android, Java must have a solid foundation (of course, there are still Kotlin). Here are just four points, but the Java system is very large, heavy and difficult course than these, listed are common or common in the actual project and interviews.

Android popular / important class

  • Activity
  • Handler
  • HandlerThread
  • AsyncTask
  • Binder

Android these classes are relatively high frequency of use in programming, so I'm going to peruse the source code under these categories. This class is also an interview a few frequently asked, such as Activity start the process, Binder communication theory, and so, so very worth reading!

Android basic technical knowledge and high-frequency interview

  • View event delivery
  • View Drawing Process
  • SurfaceView use
  • IntentService replace the scene of Service
  • Service keep-alive
  • Android serialization and difference

The knowledge is relatively basic, but also very important! Unfortunately, rarely used in actual projects, so often forget this knowledge. So we are going to put it down on paper, to deepen their own impression.

NDK and JNI

Speaking of this I get a headache, I believe many people like me, if you just call the C layer interface okay, if C code to write, it is embarrassing. But we can not always escape the difficulties, but difficulties! So I decided to cross this bridge in the heart!

Algorithms and Data Structures

  • Queues, stacks, linked lists, digraph
  • Sequence
  • Seek
  • Red-black tree

This algorithm is at home several books full of gray ... a list of points is not difficult, need to be considered basic grasp of it, but I always looked forgot, forgot they see, or can not remember ... so it is going to writing articles enhance memory. In addition, if you do application-level development, to master these few basic knowledge is enough for, after all, a collection of Java also provides ordering interface. But still we need to grasp at, after all use different algorithms to different scenarios.

Plug-oriented / hot fixes

As Android will master advanced skills, I am embarrassed to say this is not their Android development. Before saw month RePlugin source, feel Daoxing not enough. Treatment or lot code adapted Sidongfeidong seen, as the Binder mechanism. So this requires a lot of knowledge as a support to complete understand that the future battles!

Excellent third-party open source library

  • RxJava
  • Glide
  • OKHttp

"RTFSC (Read The F ** king Source Code)". Everyone has their own style of programming, if you do not learn, without reference to other people's code, eyes always so small, it is difficult to further enhance the programming level. So good to read other people's code is very necessary!

Android common architectural patterns

  • MVC
  • MVP
  • MVVM

Decoupling! Decoupling! Android architecture model using nothing more than a top priority decoupled. Development code is easy to maintain code that is the most difficult. If the code is a lot of decoupling, to reduce maintenance costs, improve work efficiency natural.

Gradle和Groovy

I believe most people are now using Android Studio developed, Gradle as the build tool is really very powerful, personally I feel that it is done at compile Java annotations can replace the heavier. Because even the file can be modified at compile time, very powerful, so it is worth learning.

Spoken skills

  • TCP/HTTP
  • SQL
  • automated test
  • Ethereal

In addition to Android unexpected knowledge, but also you need to have some general skills. After all, we know only emboldened with back-end multi-hate thing ha ha.

Written in the last

Because this list is based on my own knowledge is summed up, and because I am limited, can not all be mentioned, welcome to the great God who can complement ~

In the future I will have a point above an in-depth knowledge of learning, but also want to have shoes with me learn together, advanced together.

Enhance cognitive architecture is not easy, it is inseparable from deliberate learning and thinking.

Here, I share the video and data from a philosophical level framework to analyze the share for everyone to sort out the many years of experience in architecture, nearly a month preparatory latest record, I believe that this video will give you a different inspiration, reward.

The way to receive information click on the link below to receive:
https://mp.toutiao.com/profile_v3/graphic/articles

Guess you like

Origin www.cnblogs.com/Androidqin/p/11552890.html