android class schedule! Five steps to get the Android development environment deployment, continuous update

Preface

In recent years, Android development routines have become more mature. More and more Android engineers have won the title of "Advanced". Many people have participated in the entire development process of the company’s App from scratch to popular. Get the Leader position.

However, most people are not satisfied with their own level, and many people even feel that their level is "overestimated" by colleagues and bosses.

What are the requirements for the so-called "senior architect" that the market really needs? Through this article, I will discuss with you the pain points of Android engineers in this era and the way to stand out.

java aspect

  • Basic knowledge points The difference between collection classes and applicable scenarios 1 The difference between static internal classes and non-static internal classes in java memory allocation and creation process memory leak problem? How to ensure thread safety? Many times ( must be asked in the interview ) Which types of locking methods (it is better to involve monitor) Optimistic locking and pessimistic locking (applicable scenarios) The concept of applicable scenarios of locks The concept of thread pool constitutes applicable scenarios Why use thread pools (involving thread allocation) The process of resources, and the difference between the process of allocating resources)
  • Kernel aspect ( must ask in interview ) GC garbage collection mechanism How does n-time GC find objects to be cleared? Java's four references and applicable scenarios What algorithm is used for GC core cleanup? New generation copy cleaning, old generation mark arranging expansion: How to effectively defragment memory in old generation mark arranging? Java memory structure How is the memory of n java distributed? The loading mechanism of java classes The loading mechanism of java objects The generation of constant pool string objects The caching mechanism of Integer

computer network

  • Network hierarchy and corresponding protocols
  • TCP TCP three-way handshake (what happens if no response is received for the first and third time?) TCP waved four times. Congestion control has not been tested?
  • HTTP HTTP message, the difference between HTTP versions, https
  • IP Why not use mac as ip address ping implementation principle ttl survival field
  • ARP description process, broadcast unicast

operating system

  • The difference between thread and process (what is the resource allocation)
  • Process communication
  • Memory space allocation
  • Deadlock The conditions of the deadlock (detailed example) Ways to avoid deadlock

Design Patterns

  • Generally speaking, you know which modes you know, and you must explain the applicable scenarios
  • Singleton mode, lazy man, hungry man, thread safety, double lock
  • Observer mode
  • Adapter mode
  • Appearance mode

android aspect (generally asked according to the project)

  • android process communication
  • service
  • handlerThread
  • Handler operation mechanism 1 time
  • recyclerView caching mechanism 1 time
  • view redraw

Project aspect

  • Interaction between fragment and activity
  • What is the safety of using webview? And js call each other
  • How to ensure that there is no conflict when reading and writing files in the process of resumed transfer description
  • Asynctask memory leak, why is the leak solution and what is the debugging tool?
  • MFCC process recording session (Quick hands asked a lot of details and asked to write pseudo code)
  • MVP
  • The difference between recyclerView and listview caching mechanism will memory leak if too many items

Learning route + knowledge combing

It took a long time to sort out this detailed brain map of the knowledge route. Of course, due to limited time and limited capabilities, after all, the entire embedded system is too large. Including my embedded classmates, it is impossible to understand everything. Some things may not be covered, and the shortcomings are still small. Partners communicate and supplement together, improve and progress together.

img

This article is in an open source project: What about Android development? How to get a high salary in an interview has been included, including self-learning programming routes in different directions, interview question collection/face-to-face, and a series of technical articles, etc. The resources are continuously being updated...

It has been included in %AA%EF%BC%81.md), which includes self-learning programming routes in different directions, interview question collection/face sutras, and series of technical articles, etc. The resources are continuously being updated...

Share it here this time, see you in the next article .

Guess you like

Origin blog.csdn.net/chayel123/article/details/114099208