안드로이드 개발 환경 구축 단계! 더블 비 쓰레기 Android 4 년 동안 검을 갈기, 자세한 Android 학습 가이드

처음

최근 한 낡은 아이언이 한 달간 일하다가 입사를 갈망 한 것을 후회한다고했다. 그는 Meitu에서 휴대 전화 연구 개발을 담당했습니다. 올해 Meitu도 올해 조직 최적화 조정의 물결을 일으켰습니다. 그 중 한 명이었습니다. 직장을 그만두기로 협상 한 후 그는 일할 일자리를 찾고 싶어했습니다. 그는 모기지가 있었고 소득원 없이는 살 수 없었습니다. 그래서 저는 서둘러 아웃소싱 프로젝트를 수행하기 위해 주로 다른 휴대폰 제조업체에 파견되는 대형 아웃소싱 회사 인 회사를 선택했습니다. ** 당시 치료가 나쁘지 않다고 약속했기 때문에 즉시 일을 시작했습니다. 하지만 입사 후 급여 패키지가 HR이 말한 것과 다르고 HR이 이미 도망 쳤다는 것을 알게되었습니다. ** 최근에 그는 매우 괴로워하고 기회를보기 위해 직장을 바꿨다고 말했습니다. 인터뷰 기회를 제공하는 회사는 거의 없었습니다. 많은 인사들이 그에게 어떻게 큰 공장에서 아웃소싱으로 갔는지 물었습니다. . . 이 경우, 나는 정직하고 어떻게 제안해야할지 모르겠습니다. 자주 전직하는 것은 금기이기 때문에 특히 전직이 악화 될 때 더욱 그렇습니다. .

Android 개발자로서 버그 외에도 다음과 같은 문제가 자주 발생합니다.

응용 프로그램 정지, 프레임 누락, 화면 조각난, 운영 인터페이스의 느린 새로 고침,보기 흉한 UI, 지저분한 레이아웃 ... 이러한 문제가 자주 발생하면 1 년 내에 사용하지 못할 수 있습니다.

앱을 개발할 때 인터페이스가 멈춘다 고 느끼십니까? 특히보기를 사용자 정의 할 때.

Android 애플리케이션의 정지 및 프레임 손실과 같이 사용자 경험에 영향을 미치는 대부분의 요소는 16ms 값과 관련이 있습니다. Android 기기의 재생률도 60Hz입니다. Android 시스템은 UI 렌더링을 트리거하기 위해 16ms마다 VSYNC 신호를 보냅니다. 16ms를 초과하면 끊김이 발생한 것으로 간주됩니다.

몇 가지 일반적인 이유는 다음과 같습니다.

  • 레이아웃이 너무 복잡하고 레벨이 너무 많습니다.

  • UI에 너무 많은 드로잉 단위가 쌓여 있고 드로잉이 너무 많습니다.

  • 또는 onDraw와 같은 메서드는 시간이 너무 많이 걸립니다.

  • CPU 또는 GPU가 과부하되었습니다.

  • 애니메이션이 너무 많이 실행되었습니다.

  • 주로 메모리 지터로 인한 빈번한 GC;

  • UI 스레드는 시간이 많이 걸리는 작업을 수행합니다.

  • 그리고 더 많은;

그렇다면 사용자에게 좋은 UI 경험을 제공하려면 어떻게해야할까요?

  1. 인터페이스 레이아웃 최적화, 인터페이스 레이아웃보기 평면화, 불필요한 배경색 제거 및 투명한 색상 사용 감소 (시스템에서 측정, 레이아웃 및 그리기의 누적 시간 최소화)

  2. UI 스레드에서 데이터 작업을 줄이고 하위 스레드를 사용하여 시간이 많이 걸리는 작업을 처리합니다.

  3. 루프 논리 또는 onDraw 메서드에서 새 개체를 자주 만들고 지역 변수를 사용하지 않도록하십시오.

  4. UI 그리기 속도를 향상시키기 위해 기본 프로세스에서 시간이 많이 걸리는 작업을 수행하지 마십시오 (View의 레이아웃 수준을 낮추고 전환 그리기 방지 등).

고급 UI는 사용자 정의보기와 분리 할 수없는 연결을 가지고 있습니다. 보기 사용자 지정은 실제로 어렵지 않습니다. 그 이유는 무엇입니까?
사용자 정의보기는 디스플레이 + 상호 작용에 지나지 않기 때문에 : onMeasure-> onLayout-> onDraw의 전체 프로세스를 표시하면 전체 프로세스가 처리되었음을 표시하고 상호 작용은 터치 이벤트의 처리입니다. 캔버스와 같은 다른 모든 것 외에도 , 애니메이션, 페인트 모두 그리기를 중심으로 회전하므로 기본 원칙을 이해해야합니다.

학습 복지

[Android 상세 지식 포인트 마인드 맵 (스킬 트리)]

실제로 Android 개발에는 많은 지식 포인트가 있으며 인터뷰에서 여전히 몇 가지 질문이 있습니다. 따라서 이러한 지식 포인트를 얼마나 잘 준비하는지 확인하기 위해 인터뷰를위한 다른 트릭은 없습니다. 따라서 인터뷰를 위해 외출 할 때 리뷰에서 어느 단계에 도달했는지 확인하는 것이 좋습니다.

안드로이드는 지난 몇 년간 뜨겁지 않지만 4 대 구성 요소로 고소득 일자리를 찾는 시대는 지났습니다. 이것은 Android의 중간 수준 이하의 직위가 포화 상태임을 보여줄뿐입니다. 이제 선임 엔지니어는 여전히 상대적으로 부족 합니다. 많은 선임 직위는 정말 높은 급여를받습니다 (돈이 더 많으면 적합한 직책을 찾지 못할 수 있음). 그래서 선임 엔지니어가 되려고 노력하는 것이 가장 중요합니다.

여기에는 위에서 언급 한 인터뷰 질문, JD.com, Xiaomi, Tencent, Toutiao, Ali, Meituan 및 기타 회사의 19 년 동안의 인터뷰 질문과 관련된 수십 세트의 ByteDance가 첨부되어 있습니다. 기술 포인트는 지식 + 많은 세부 정보를 포함하여 비디오와 PDF로 구성됩니다 (실제로 예상보다 많은 노력이 필요했습니다).

제한된 공간으로 인해 작은 부분을 그림으로 보여 드리겠습니다.

GitHub에서 자세히 보려면 ​​클릭하십시오.

Android 아키텍처 비디오 + BAT 인터뷰 주제 PDF + 연구 노트

인터넷에서 안드로이드를 배우는 데 필요한 자료는 많지만 배운 지식이 구조화되어 있지 않고 문제가 생기면 맛보고 심도있는 공부를 그만두면 진정한 기술 향상을 이루기 어렵다. 이 체계적인 기술 시스템이 방향 참조를 제공하기를 바랍니다.

지식은 시스템이 아니고, 문제가 생기면 그저 맛보고 심도있는 공부를 그만두면 진정한 기술 향상을 이루기 어렵습니다. 이 체계적인 기술 시스템이 방향 참조를 제공하기를 바랍니다.

추천

출처blog.csdn.net/fanzhang_vip0723/article/details/112899170