preface

We all know that there are several directions in a programmer’s career, but statistics show that more and more developers are choosing the architect direction in recent years.

I believe there is no debate about the future of the architect, but this “concept” is not clear to many developers, and how to become an architect is a question in the minds of many programmers.

Therefore, in terms of the skills architects need to master, we hereby compile an Advanced note on Android architecture to share with you, including seven topics, a total of 3068 pages of classic examination points, hoping that you can easily challenge P7 post after understanding.

This article has been published on GitHub. Due to limited space, the following will show the outline of “Advanced Notes on Android Architecture” and some screenshots. If you need a full PDF, you can download it for free on GitHub or click on the Advanced channel here.

This advanced Note on Android architecture covers the following:

  • Topic 1: I can build rockets ** (Deep Java generics + annotations + simple + concurrent programming + data transfer and serialization +Java Virtual Machine principles + reflection and class loading + efficient IO) **

  • Topic 2: Insight into UI, insight into data, all the way to architecture ** (Advanced UI promotion +Android component kernel + Necessary IPC for large projects + Data persistence) **

  • Topic 3: Design ideas, code optimization, project practice to fly ** (design ideas and code quality optimization + program performance optimization + development efficiency optimization + project practice + Douyin in APK package size resource optimization practice + Youku responsive layout technology full analysis) **

  • (NDK basic knowledge system +NDK module development +JNI module +Native development tools +Linux programming + underlying picture processing + audio and video development) **

  • Topic five: high salary must be asked, there is no way to avoid, it is better to go head-on ** (hot repair design + plug-in + component framework design + picture loading framework + network request framework +RXJava responsive programming framework design +IOC architecture design +Android architecture component Jetpack) **

  • Topic 6: Team work to efficiently build and deploy a Flutter development environment across platforms, using the new instead of the old

  • Topic 7: Refined kernel analysis of the Framework by hand, step by step into the big ** (in-depth analysis of Binder+ in-depth analysis of Handler+Dalvik VM process system + in-depth analysis of WMS+PackagerManagerService) **

Topic 1: Essential skills for architects to build foundations. I can build rockets

1. Dig deep into Java generics 2. Data transfer and serialization 5. Principles of Java Virtual Machine 6. Reflection and class loading 7. Efficient IO

Topic 2: Insight into UI, insight into data, all the way to the sky architecture

  1. Advanced UI Promotion
  2. Android Component kernel
  3. IPC is a must for large projects
  4. Data persistence
  5. .

Topic three: design ideas, code optimization, project practice to fly with you

  1. Design ideas and code quality optimization
  2. Program performance optimization
  3. Optimization of development efficiency
  4. The project of actual combat
  5. startup
  6. fluency
  7. The practice of Douyin in APK packet size resource optimization
  8. Youku responsive layout technology full analysis
  9. .

Topic 4: future mainstream, will know will, audio and video open to discover the trick

  1. NDK basic knowledge system
  2. NDK module development
  3. JNI module
  4. Native development tools
  5. Linux programming
  6. Underlying image processing
  7. Audio and Video development
  8. .

Thematic five: high salary will ask, nowhere to avoid, as head on directly

  1. Thermal repair design
  2. pluggable
  3. Component frame design
  4. Image loading frame
  5. Network Request Framework
  6. RXJava responsive programming framework design
  7. IOC Architecture Design
  8. Android architecture component Jetpack

Topic 6: Teamwork, replacing old with new, efficiently building and deploying across platforms

  • Flutter is the ultimate cross-platform choice
  • Build Flutter development environment on Windows
  • Write a Flutter
  • App+Dart syntax set of use and source code analysis
  • Build and debug the Flutter development environment
  • .

Topic seven: Paoding Ding Jie niu, tear Framework refined kernel analysis, step by step into a big ox

  1. In-depth analysis of Binder
  2. Parsing Handler in depth
  3. Dalvik VM process system
  4. Parse WMS in depth
  5. PackagerManagerService

conclusion

Whether it’s a technical manager or an architect, there’s no absolute right or wrong path, it’s what works for you. Small companies may not have the concept of an architect, and large companies are not so easy to get an architect position. But anyway, it is necessary to constantly learn new technologies to improve their own level. No matter which company you are in, you can only be successful with excellent technical level.

The content of this article has been collected on GitHub. Due to limited space, we cannot show all the content. If you need the complete PDF version, you can download it for free on GitHub or click here to obtain it for free.