Netease architects explain in depth Android development! What is the biggest sadness of Android programmers? Have taken an offer

What is a midlife crisis

According to authoritative data, the heyday of domestic IT programmers is around 25-27 years old. For programmers, 30 years old is a 38th line. Then there is the transfer of jobs. This is a consensus in the industry.

The general age to enter the IT industry after graduating from university is also around 22 years old, but between 22-30 years old is about 8 years, then 27 years old is the beginning of the “middle-aged” career, then as a programmer, you have Are you ready to survive the "mid-life crisis"?

When programmers reach the age of 28, the "middle-age crisis" is not the same. This age is also the peak period of work accumulation for programmers. Some programmers have changed several jobs, and some programmers have been in a company. I have done several large-scale projects, and even some programmers have assumed the role of project leader, and their salary has risen from a few thousand to tens of thousands. The family members of the partners who have not yet got married have started to marry, and then buying a car, buying a house and having children, is also one of our top tasks to support the family.

2. Interview process

  • Self introduction
  • The interviewer starts to ask according to your introduction
  • What do you want to know about our company? (Resurrection card, if you want to return to it, there will be no more, you can ask the interviewer to advise yourself)

3. Interview questions recall, no order

1. Project architecture, componentized architecture (he didn't ask for plug-in instead)
2. Android event distribution mechanism (asked for source code call details)

3. How to call a private method of a class by reflection (here is also asking for details, the difference between the two methods)
Method method=clazz.getDeclaredMethod(name);//All methods in this class can be called (not including those inherited from the parent class) Method)
Method method=clazz.getMethod(name); //You can call methods with access rights in the class (including methods inherited from the parent class)

4. How to monitor the life cycle of the Activity?
Most of the time when you think of it, you can write a BaseActivity by yourself. It
is actually a matter of registering a listener callback in the Application.

this.registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
     @Override
     public void onActivityCreated(Activity activity, Bundle savedInstanceState) {}
     @Override
     public void onActivityStarted(Activity activity) {}
     @Override
     public void onActivityResumed(Activity activity) { }
     @Override
     public void onActivityPaused(Activity activity) { }
     @Override
     public void onActivityStopped(Activity activity) { }
     @Override
     public void onActivitySaveInstanceState(Activity activity, Bundle outState) { }
     @Override
     public void onActivityDestroyed(Activity activity) {}
 });

5. Have you ever used RxJava and RxAndroid? If you have used it, you will probably ask the principle
. 6. Picture caching framework, which one has been used, and the principle (you must use one after you have thought about this level)

  • ImageLoader (don't think about it)
  • Picasso
  • Glide
  • Fresco

7. Which network request framework has been used (OkHttp, Retrofit, Volley)

What he wants to hear here is OkGo (a framework based on OkHttp encapsulation)

8. There are more than 20 nested if else in a business. How to solve this problem from the perspective of design patterns?

He tested the strategy model + factory model

9. What is the difference between HashMap, HashTable and HashSet?

Four. Summary

1. This is a very instructive interview. The content of the interview is indeed in line with the current requirements for senior Android engineers.
2. The content of the question pays more attention to details. If you don't have a deep understanding, you will hardly know it.
3. The interview is actually a process of learning and growing. Find a few companies to practice your hands, and then find a routine to prescribe the right medicine.

At last

Due to the length of the article, I only listed the interview questions. The detailed answers were compiled into a PDF document. This document also includes  advanced architecture technology advanced brain maps, Android development interview topics , and advanced The advanced structure information helps everyone learn to improve the advanced level, and also saves everyone's time to search for information on the Internet to learn.

Friends in need can send me a private message [answer] or click here to receive it for free

Guess you like

Origin blog.csdn.net/m0_52308677/article/details/112907953