I. 소개
교육이란 무엇을 의미합니까? 교육받은 프로그래머는 낮 동안 밤의 어둠을 알지 못하는 것처럼 교육받은 학위를받지 못하는 고통을 결코 이해하지 못할 것입니다.
최근 인터넷에 퍼진 기사가 있습니다! 프로그래머로서 우리도 그런 경험이 있지 않나요? 풍부한 업무 경험, 높은 기술, 장기 근무 자격,하지만 학업 자격 때문에 해당 치료가 없습니다! 유능한 대학생들조차도 다 창의 문에 들어갈 수 없다! 그들의 운명을 바꾸는 것은 대학 입시에서 얼마나 많은 점수를 받았 는가가 아니라 사회에 들어가는 과정에서 자신의 자질이 지속적으로 향상되는지, 공부를 포기하세요! 내 힘을 키우는 한 대학원생과 박사 학위 생들과 함께 할 수 있다고 늘 믿어요!
2. 기업이 고학력 자격 만 채용하는 이유
왜 기업이 학업 자격을 요구합니까? 이 질문은 회사 관리자의 관점에서 설명해야합니다. 채용시 학력은 채용시 회사의 가장 낮은 기준일뿐입니다. 그런 다음 인터뷰 중에 말로 일상적인 습관과 행동을 추측하고 평가할 수 있습니다. 그리고 행위, 그리고 당신의 세부적인 행동. 팀에 신속하게 통합 할 수 있는지 확인하면 대부분의 회사가 유쾌한 직원을 선호 할 것입니다. 하지만 왜 학업 적 자격에 의존해야합니까?
한 가지 측면은 읽은 사람들이 특정한 논리를 가지고 있고 사물에 대해 생각한다는 것입니다. 어떤 사람들은 독서가 쓸모 없다고 말하지만, 모든 사람들은 독서가 우리의 생각에 미묘하게 영향을 미치고, 어떤 일을 처리하는 방법과 더 많은 사람의 창의적 사고에 영향을 미친다는 것을 알아 차리지 못했습니다. 반면에 학업 자격이없는 사람들은 여러 유형이 있습니다.
첫 번째는 전 리마, 즉 학위가없는 인재로, 많은 유명 기업에서 찾아 볼 수 있지만 드물다.
두 번째 유형의 사람들은 발전하기를 원하지 않으며 현상 유지에 만족하는 많은 사람들이 리더가되면 노력을 포기합니다.
세 번째 부류의 사람들은 원칙도 지식도없고 하늘에서 파이를 기다리는 사람들 등등 ... 그런 교육없는 재능은 대기업에서 거의없고 팀에 섞여 있습니다. 당신은 관리자입니다, 당신은 무엇을합니까? 재능과 어리석은 재능을 식별하십시오. 게다가 당신의 리더는 그런 사람인데, 하루 만 더 머물러 주시겠습니까?
어떤 사람들은 능력이 가장 중요하고 능력이 정말 중요하다고 말할 수 있습니다. 기술적으로 말하자면 그것은 능숙도 또는 미숙련에 지나지 않습니다. 입학 순서는 바로 그것입니다. 사실 학업 자격은 과거를 나타낼뿐입니다. 배우는 능력이 있고 미래를 기대할 수 있습니다.
학력을 향상시키기 위해 시간을 할애 할 필요가 있습니다. 최근에는 학력에 점점 더 많은 관심을 기울일 것입니다. 그러나 학력이 모든 것을 대표한다고 생각하는 것을 두려워하지 마십시오. 사업을 시작하지 않는 한 여러분은 굉장하고 모두가 그것을 존경 할 것입니다.
셋, 데이터 분석
먼저 교육적 배경이 다른 프로그래머가받은 평균 인터뷰 초대 데이터의 통계 차트를 보여 드리겠습니다. 그림에서 보는 것만으로도 면접 수, 단기 대학, 학부, 석사 등의 초청 건수는 크게 다르지 않은 반면 박사 과정 학생은 면접 초청이 적다는 것을 알 수있다. 물론 이것은 그들의 전문적인 초점과 더 정확하게 관련이있을 수 있습니다!
이 사진을 다시 한번보세요. 6-10 년 경력의 단기 대학생의 평균 연봉이 학부생의 연봉을 능가합니다! 근무 기간이 길수록 학력이 낮아지는 이점이 있습니다!
그렇다면 그 이유는 무엇입니까?
다른 산업에 비해 IT는 애플리케이션 중심의 산업이기 때문입니다. 일상적인 작업에서 많은 기술 전문가는 많은 엄격한 논리 연습과 실제 경험에 더 의존하여 입을 크게 벌리는 일련의 고수준 코드를 입력 할 수 있습니다. 그리고 이것들은 종이 학업 증명서에 의존하여 얻을 수 없습니다!
많은 사람들이 전통적인 시험 중심 교육 분야에서 소위 의미에서 성공하지 못했을 수도 있지만, 이것이 그들이 강하지 않고 다른 방향과 관심 지점에 불과하다는 것을 의미하지는 않습니다!
따라서 인터넷의 급속한 발전과 함께 학력이 어느 정도 더 나은 학습 능력을 나타내지 만 IT 산업에서 "교육 우선"은 더 이상 기업이 인재를 선택하는 유일한 기준이 아닙니다. 인증서와 비교할 때 회사가 더 중요하게 생각하는 것은 프로그래밍 수준과 실제 작업 능력입니다. 그렇지 않으면, 당신이 디딤돌로 일자리를 제의하더라도, 당신은 단지 어리석은 Mr. Nan Guo입니다.
4. 개선을위한 노력, 기술이 왕이다
자신의 잠재력을 과소 평가하는 것은 물론 자신을 과소 평가하지 마십시오.
반격 Microsoft
- 준비된
저의 강사는 저를 밀어 줄 수있는 마이크로 소프트 친구를 알고 있다고 말했고, 제가 쑤저우를 강요 할 수 있지만 상하이나 베이징은 고려하지 않을 것이라고 말했습니다. 나중에 강사는 친구의 부서가 상하이에 있고 쑤저우에 지점이 없다는 사실을 알고 포기했습니다.
그래서 마이크로 소프트는 공식 승인을 받고 STCA 쑤저우의 소프트웨어 엔지니어에게 투표했습니다. 그런 다음 같은 실수를 반복 할 수 없다고 생각하면서 통일 필기 시험을 기다렸습니다.
- 회견
이번에 마이크로 소프트의 필기 테스트 플랫폼은 amcat으로 대체되었고, 필기 테스트는 창을 전환 할 수없고 마우스가 창을 떠날 수 없습니다. 마이크로 소프트의 필기 테스트는 몇 가지 알고리즘 질문에 불과하기 때문에 우리에게 갑자기 어려움이 증가합니다. 창 밖으로 뛰어 내릴 수없고 코드가 너무 무서워요.
놀랍게도 올해 마이크로 소프트의 알고리즘 문제는 갑자기 훨씬 더 간단 해졌고 코드에 문제가 없다고 말할 수있다. 총 5 개의 질문이 있으며 그 중 많은 질문은 몇 줄의 간단한 코드로 작성할 수 있습니다. 가장 어려운 질문은 동전을 바꾸는 것인데, 이는 실제로 매우 명백한 동적 프로그래밍입니다. 따라서 필기 시험에 대한 부담이없고, 인터뷰 통지를 기다리며 두세 가지 시험 사례 만 실패했습니다.
며칠을 기다린 후 마이크로 소프트 쑤저우에서 현장 인터뷰 알림을 받았는데, 같은 실험실에서 필기 시험을 잘한 몇몇 학생들이 인터뷰 알림을받지 못해서 마이크로 소프트는 아마받지 못했을 것입니다. 필기 시험 결과에 따라 면접 통지를 보냅니다.
그 후 현장 인터뷰를 위해 쑤저우로 갔는데, 로그인을했을 때 로그인 양식이 난징 대학교와 저장 대학교 학생들로 빽빽하게 꽉 차있는 것을 보았습니다. 인터뷰는 4 차례 진행되며, 회의실에 앉아 면접관이 인터뷰 방식을 취합니다. 마이크로 소프트의 인터뷰 모델은 아무것도 묻지 않고 코드를 작성하는 것으로 악명이 높으며 이번에도 예외는 아닙니다.
- 한쪽
한쪽은 30 분 이상 지속되었습니다. 면접관이 처음에 저의 가장 빛나는 / 특징을 소개 해달라고했는데, 그가 올라 왔을 때는 자기 소개 만 준비해서 헷갈 렸어요. 면접관에게 2 분 정도 생각하면 이야기를 시작하겠다고 말하자. 시작점은 학습 능력이 뛰어나고 잘 배운다는 것, 학부 과정이 배움의 무기라고 앞장서 서 말했다. 대학원 입학 시험을 준비하는 데 거의 2 년의 여가 시간을 보냈습니다. 저는 Nantah University에 입학했습니다. 대학원 입학 시험을 준비하는 동안 저는 4 개의 주요 전문 과정과 컴퓨터 과학 관련 과정을 스스로 가르쳤습니다. 또한 아주 잘 배웠습니다. 대학원 수준에서 면접관은 만족을 표명했습니다.
그런 다음 알고리즘 질문을했습니다. 이것은 고전적인 알고리즘 질문이었습니다. 두 개의 큰 문자열을 추가했습니다.이 질문은 원래 LeetCode 질문이므로 빠르게 작성했습니다. 그런 다음 면접관은 알고리즘이 소수 인 경우 어떻게 수정해야하는지 질문을 확장했습니다. 나는 숫자의 정수 부분과 소수 부분을 별도로 처리해야하며 이전 알고리즘을 별도로 추가하고 소수 문제를 정수 이월이 완료되고 면접관이 동의했습니다.
그런 다음 소수를 다룰 수있는 다른 방법이 있는지 물었습니다. 소수를 정수로 취급 할 수 있다고 말했습니다. 덧셈이 완료되면 소수점 위치를 계산하여 문자열에 삽입합니다. 면접관이 저에게 요청했습니다. 나는 빨리 종이에 썼다. 그런 다음 면접관이 알고리즘의 정확성을 확인하기 위해 어떤 테스트 케이스를 설계 할 수 있는지 생각해달라고 요청했고 몇 가지 테스트 케이스를 작성했습니다.
그런 다음 면접관이 저에게 확률 질문을했습니다. 주사위를 n 번 굴립니다. 각 주사위를 굴린 후 즉시 중지하거나 현재 주사위 값을 결과로 가져 오거나 현재 주사위 값을 무시하고 계속해서 주사위를 굴릴 수 있습니다. 전략은 가장 큰 숫자를 얻을 수 있습니다.
이 질문에 문제가 생겼습니다. 전에 비슷한 문제에 대해 생각하고 주위를 둘러 보았 기 때문입니다. 이번에는 생각할수록 주위를 돌아 다니고 혼란스러워졌습니다. 3 회 이상 즉시 멈췄습니다. 초과하지 않으면 계속 던지십시오. 면접관은 즉시 예를 들어 총 9 번 던질 수 있다고 가정하고 처음 4 번 던질 때는 즉시 중지해야합니까? 대답 할 수 없습니다.
면접관이 2 ~ 3 회 나에게 상기시켜 주며 앞으로 몇 번 더 굴릴 지 고려해야한다고 말했다. 이전 굴림을 보지 말아야한다는 것을 이해하고 다음 굴림이 현재 값을 초과 할 확률을 굴림이없는 횟수입니다. 확률이 50 %보다 크면 계속 굴림 한 다음 확률을 계산하는 공식을 작성해야합니다. 면접관은 내 대답에 동의하고 동적 프로그래밍 아이디어로 볼 수도 있다고 덧붙였다. 마지막으로 면접관은 제가 너무 긴장해서 긴장을 풀어야한다고 말했습니다.
- 양면
두 번째면은 거의 30 분입니다. 처음에 면접관이 제가하고있는 프로젝트를 소개 해달라고했고 제 과학 연구 프로젝트에 관심이 많았는데 더 많은 질문을했지만 깊이 들어 가지 않았습니다. 그런 다음 알고리즘 질문을 시작했습니다. 주제는 이진 검색 트리였습니다. 검색의 시간 복잡도에 대해 질문했습니다. 논문에서 다양한 상황 (최상, 평균, 최악)의 시간 복잡도에 대한 예를 들어보고 분석해 보겠습니다. 이진 검색 트리에서 지정된 노드 (즉, 순회 순회의 선행 노드)보다 작은 노드를 찾는 방법에 대해 인터뷰 담당자와 다른 트리 모양에서 선행 노드를 찾는 방법에 대해 논의했습니다. 면접관이이 알고리즘을 작성하라고 요청했습니다.
잠시 생각 해봤는데 사실 중순 순회가 가능하기 때문에 비 재귀 역 순회를 조용히 작성하고 면접관에게 보여주고 원리를 설명했지만 면접관이 원하는 결과, 면접관 순회 대신 노드의 부모-자식 관계를 통해 전구체 노드를 찾을 수 있기를 바랍니다. 생각 해보니 각 노드에는 부모 노드에 대한 부모 포인터가 있어야한다고 면접관에게 말했고 면접관은 부모 포인터가있을 수 있다고 말했습니다.
그런 다음 앞에서 논의한 다양한 상황을 따라 가면서 전구체 노드를 하나씩 찾는 방법을 썼습니다. 면접관은 제가 작성한 코드를보고 동의했지만 제 코드를 간소화 할 수 있다고 말했습니다. 실제로 계속해서 판단을 내리는 두 가지 사례입니다. 그런 다음 면접관이 내가 작성한 알고리즘의 정확성을 확인하기 위해 테스트 케이스를 설계 해달라고 요청했고 몇 가지를 빠르게 작성했습니다. 그런 다음 나중에 면접관이 단순히 피보나치 수열과 같은 질문을했고 인터뷰는 행복하게 끝났습니다.
- 3면
삼면으로 거의 30 분 정도 걸립니다. 3면 면접관도 먼저 프로젝트를 소개해달라고 요청했습니다. 저는 제 과학 연구 프로젝트를 소개했습니다. 그가 몇 가지 성능 매개 변수를 물은 후 그는 제가 휴대폰의 전력 소비를 고려하는지 물었습니다. 그는 전력 소비에 대한 그의 견해에 대해 이야기했고, 나는 동의합니다.
그러다 면접관이 첫 2 차 면접에서 영어에 대해 물어 봤냐고 물어 봤는데 대답하지 않았는데, 면접관이 앞으로는 영어로 소통하겠다고해서 전 과정이 영어가 될 거라고 했어요. 그런 다음 알고리즘 질문을 할 시간입니다. 종이에 쓰여진 이전 두 차례의 인터뷰와 달리 이번에는 벽에있는 화이트 보드에 직접 작성되었습니다. 나는 LeetCode에서 미러 바이너리 트리 판단 (LeetCode 101)에 대한 원래 질문에 대해 물었고이 질문에 대해 준비했습니다.
먼저 거울 이진 트리를 그려서 면접관에게 질문의 의미를 이해하지 못함을 확인한 후 순조롭게 글을 쓰기 시작했고 글을 다 쓰고 면접관에게 확인을 요청했습니다. 면접관은 먼저 들어오는 매개 변수가 두 개의 나무를 나타내는 데 a와 b를 사용하는 이유를 물었습니다. 간결성을 위해 대답 한 다음 면접관은 왼쪽과 오른쪽을 사용하여 두 개의 나무를 나타낼 수 있는지 여부를 말했습니다 (재귀 적 구조, 여기서는 왼쪽 참조). 하위 트리 및 오른쪽 하위 트리), 첫 번째 매개 변수가 항상 왼쪽이 아닐 수 있고 두 번째 매개 변수가 항상 옳지 않을 수 있기 때문에 대답 할 수 없습니다. 왼쪽과 오른쪽을 사용하면 오해의 소지가 있습니다. 면접관이 동의합니다.
그러다 면접관이 테스트 케이스를 디자인 해달라고 요청했는데 7 ~ 8 건의 테스트 케이스를 썼는데 그 내용을 읽은 후 면접관은 제가 실제로 가장 중요한 테스트 케이스를 놓쳤다 고해서 알아낼 수 없어서 어떤 종류인지 물었습니다. 면접관은 내가 작성한 테스트 케이스가 모두 알고리즘이 맞지 않는지 확인하기위한 것이라고 말했고 테스트 케이스가 먼저 확인해야 할 것은 알고리즘의 정확성, 즉 정상적인 테스트 케이스라고 말했습니다. 이것이 실제로 내가 예상하지 못한 것이라고 말했습니다. 그런 다음 세면이 끝났습니다.
- 모든면
사방에 부서장이 있고 총 40 분 정도 걸렸다. 처음에 과학 연구 프로젝트를 소개해 달라는 부탁을 받았는데, 그는 관심을 표명하고 시스템에 대한 세부 사항을 소개해달라고 요청했습니다. 그래서 벽에있는 화이트 보드에 제가 디자인 한 시스템의 전체 프로세스와 전체 프로세스를 그렸습니다. . 면접관의 질문에 흩어져있는 몇 가지 세부 사항. 그런 다음 주제를 입력하고 알고리즘 질문을하기 시작했습니다.이 질문은 LeetCode—Wildcard Matching (LeetCode 44)의 원래 질문이기도합니다. 면접관에게서이 질문을 보았을 때 나는이 질문을 검토 중에 보았 기 때문에 충격을 받았습니다. 전날 못 봤는데 어려운 난이도의 질문이라 면접에서 묻지 않을 것 같아서 답을 찾지 못했어요. .
그래서 저는 면접관에게이 질문을 전날 밤 봤지만 만들지 못했다고 전하기 위해 주도권을 잡았습니다.이 질문에 대한 최선의 해결책은 다이나믹 프로그래밍이되어야하지만 저는 그렇게하지 않을 것입니다. 면접관은 그가 그것을 후회하는지 대답했습니다. 지금,이 질문을 읽지 않았고 상관 없어요. 지금 생각해보고 해보 죠. 그런 다음 화이트 보드 앞에 서서 몇 분간 생각을했는데 다행히도 마침내 알아 내고 재귀를 사용하여 천천히 코드를 작성했습니다. 그런 다음 면접관에게 보여주고 알고리즘 작업 과정을 한 줄씩 설명해 줬는데 면접관이 꽤 좋다고 했어요. 그런 다음 테스트 케이스를 작성하고 세 가지 교훈을 배웠으며 이번에는 테스트 케이스를 빠르게 작성했습니다. 이것으로 네면이 끝납니다.
결국 나는 회의실로 돌아가서 인터뷰 결과가 언제 나올지 인사부에게 물었고, 인사부는 결과가 약 10 분 안에 나올 것이라고 말했다. 그래서 저는 그곳에 앉아서 기다렸다가 인사부에서 전화를 걸어 인터뷰 상황이 꽤 좋다고 말했습니다. 이제 채용 가능한 목록에서 약 2 주 후에 제안을 게시할지 결정할 수 있습니다. 그런 다음 행복하게 학교로 돌아갔습니다.
하지만 마이크로 소프트의 제안을 기다리느라 오랜 시간이 걸렸고, HR이 두 번 연속으로 바운스 후 마침내 제안 전화를 받았습니다. 나는 마이크로 소프트의 SP를 획득 한 것에 대해 유쾌하게 놀랐고, 올해 쑤저우 마이크로 소프트의 급여 패키지도 전년도에 비해 크게 향상되었습니다.
5. 학력 및 모든 것을 말하는 사람
학력은 정말 디딤돌입니다.이 디딤돌은 많지 않지만 스스로를 향상시키기 위해 열심히 노력할 수 있습니다. 학력이 좋지 않고 학력이 필요한 기업이 있다면 정말하고 싶습니다. 자기 시험을하면서 학업 능력을 향상시킬 수 있습니다. 모든 것이 해결책이 있습니다. 전문 대학으로 작은 회사에 들어 갔지만 너무 크거나 작지 않은 회사를 목표로했기 때문에 포기하지 않았습니다. 이 작은 회사에서 일하는 데 2 년이 걸렸는데이 기간 동안 저는 한 번도 여유를 가지지 않았고 일하면서 시험을 보았습니다.
학부 과정에 입학하면 iFLYTEK의 제안을 성공적으로 받았습니다. 그래서 다시 마이크로 소프트에서 목표를 설정하고 대학원 시험을 치르면서 다음 기회를 준비하는 데 3 년을 보냈습니다. 드디어 해냈습니다. 단기 대학생 부터 대학원생까지, 작은 공장에서 모든 프로그래머가 꿈꾸는 마이크로 소프트의 "반격"까지 5 년 이 걸렸 습니다. 아주 힘들고 외로웠지만 해냈습니다. , 그렇죠?
마지막으로 여러분에게 메시지를 전하고 싶습니다. 우리를 이길 수없는 어려움은 결국 우리를 더 강하게 만들 것입니다!
6 ~ 5 년 동안 연구 노트 공유
저는 5 년차에 혼자서 안드로이드 개발을 해왔고 졸업 후 2 년차에 ByteDance의 대가족에 합류하게되어 운이 좋았습니다. 바이트의 4 년 동안 너무 많은 사람들이 오가는 모습을 목격했습니다. 알리로 전직하고 월급을 직접 두 배로 올린 동료가 깊은 인상을 받았습니다.하지만 많은 사람들이 금도금으로 벽에 부딪히는 것을 보았습니다. "큰 공장". 기술적으로!
나도 성공한 본보기가 될 수 있겠지만 4 년 만에 1-1에서 2-2를 달성했다. 물론 그 뒤에 숨은 "슬픔의 눈물"은 나중에 논의 될 것이다. 일반적으로 지속적인 학습 덕분에 검토 및 요약하고 기술을 향상시킵니다! 기술 향상에 관심이있는 친구들을 돕고 자 지난 4 년 동안의 구체적인 연구 경로와 메모를 공유하겠습니다!
- 건축가를위한 필수 기술
현재 Android APP 개발의 주류 언어는 Java 언어입니다 .Java 언어의 가장 큰 특징은 소프트웨어 상호 작용 가능성을 높이는 것입니다 .Android 폰의 거의 모든 응용 프로그램이 Java 언어로 작성되었다고 할 수 있습니다.
지식 포인트 :
1. Java 제네릭에 대한 심층적 인 이해
2. 심층적 인 설명 설명
3. 동시 프로그래밍
4. 데이터 전송 및 직렬화
5. Java 가상 머신 원칙
6. 효율적인 IO
- 디자인 사고를위한 오픈 소스 프레임 워크 해석
인터넷 회사의 지속적인 발전으로 제품 프로젝트에 모듈이 점점 더 많아지고 사용자 경험 요구 사항이 점점 더 높아지고 있습니다. 작은 단계와 빠른 반복의 목적을 달성하기가 점점 더 어려워지고 있습니다. -in 기술이 탄생했습니다. 플러그인 기술이없는 경우 Meituan 및 Taobao와 같은 많은 "앱"을 통합하는 응용 프로그램은 몇 g 정도 될 수 있습니다.
따라서 오늘날의 Android 모바일 개발은 핫픽스, 플러그인 및 구성 요소 화되지 않으며 인터뷰의 80 % 이상이 통과하지 못할 것입니다.
지식 포인트 :
1. 핫픽스 디자인
2. 플러그인 프레임 워크 디자인
3. 구성 요소 프레임 워크 디자인
4. 그림 로딩 프레임 워크
5. 네트워크 액세스 프레임 워크 디자인
6. RXJava 반응 형 프로그래밍 프레임 워크 디자인
- 360 ° 만능 성능 튜닝
다른 수준의 개발 엔지니어의 손에는 기술 수준이 고르지 않기 때문에 많은 휴대 전화가 매우 높은 소프트웨어 성능으로 실행 되더라도 응용 프로그램을 열 때 여전히 지연이 있습니다.
또한 제품 내용이 반복되면서 기능이 점점 복잡해지고 UI 페이지가 풍부 해져 원활한 운영에 걸림돌이되고 있습니다. 요약하면, APP의 성능 최적화는 개발자가 가져야 할 포괄적 인 품질이되었으며 개발자가 고품질 애플리케이션 작업을 완료 할 수 있도록 보장하는 것이기도합니다.
1. 디자인 아이디어 및 코드 품질 최적화
2. 프로그램 성능 최적화
- 시작 속도 및 실행 효율성 최적화
- 레이아웃 감지 및 최적화
- 메모리 최적화
- 전력 소비 최적화
- 네트워크 전송 및 데이터 저장 최적화
- APK 크기 최적화
3. 개발 효율성 최적화
- 분산 버전 제어 시스템 Git
- 자동화 된 빌드 시스템 Gradle
4. 실제 전투 계획
- 시작 속도
- 유창
- APK 패키지 크기 리소스 최적화에서 Douyin의 관행
- Youku의 반응 형 레이아웃 기술에 대한 전체 분석
- 네트워크 최적화
- Taobao Double Eleven에서 성능 최적화 프로젝트의 비밀을 밝힙니다.
- AutoNavi APP 전체 링크의 소스 코드 의존성 분석
- OOM을 완전히 제거하는 실제 전투 경험 공유
- WeChat Android 터미널 메모리 최적화 연습
- Android 프레임 워크 아키텍처
Android 프레임 워크 아키텍처 (고급 UI + FrameWork 소스 코드)이 지식은 현재 가장 많은 사용자이며 Android 2013 ~ 2016의 기술이라고합니다.
Android 개발자는 온라인에서 코드를 복사하는 데 익숙하기 때문에 자주 "사용되는"코드에 익숙하고 익숙하지 않습니다. 익숙한 사람은 거의 매일 코드를 처리하고 매일 코드를 복사합니다. 익숙하지 않은 것은 이러한 코드가 매일 사용되지만 하지만 저는이 코드의 원리와 코드의 의미를 깊이 연구하지 않았습니다.
이 기사의 핵심 지식 :
1. 고급 UI 프로모션
2. Android 커널 구성 요소
3. 대규모 프로젝트를위한 필수 IPC
4. 데이터 지속성 및 직렬화
5. 프레임 워크 커널 분석
- NDK 모듈 개발 (오디오 및 비디오 시리즈)
NDK (Native Development Kit의 약자)는 Android 애플리케이션에서 C 및 C ++ 코드를 사용할 수있는 네이티브 프로그래밍 인터페이스를 기반으로하는 소프트웨어 개발 키트입니다. 이 도구로 개발 된 프로그램은 가상 머신이 아닌 로컬에서 직접 실행됩니다.
Android에서 NDK는 주로 Android SDK를 확장하는 데 사용되는 일련의 도구 모음입니다. NDK는 개발자가 C 또는 C ++ 동적 라이브러리를 신속하게 개발하는 데 도움이되는 일련의 도구를 제공하며 자동으로 Java 애플리케이션을 APK로 패키지화 할 수 있습니다.
이 기사의 지식 포인트 :
1. NDK에서 개발 한 C / C ++ 소개
2. JNI 모듈 개발
3. Linux 프로그래밍
4. 저수준 이미지 처리
5. 오디오 및 비디오 개발
6. 기계 학습
- Flutter 학습 고급
2019 년은 의심 할 여지없이 Flutter 기술이 본격화되는 해입니다.
모든 모바일 개발자는 슈퍼 앱에서 독립 앱, 순수 Flutter에서 하이브리드 스택, 개발자에 이르기까지 Flutter가 제공하는 "빠른 개발, 표현력 있고 유연한 UI, 기본 성능"의 기능과 개념에 열광합니다. Flutter 기술을 즐겁게 탐구하고 적용하고 있습니다. 다양한 시나리오에서 우리는 또한 다양한 도전에 직면하고 있습니다.
이 기사의 핵심 지식 :
1. Flutter 크로스 플랫폼 개발 개요
2. Windows에서 Flutter 개발 환경 구축
3. 첫 번째 Flutter 앱 작성
4. Flutter Dart 언어 시스템 시작하기
...
- WeChat 애플릿 개발
가장 인기있는 프로그래밍 개발 응용 프로그램 시나리오 중 하나 인 WeChat 애플릿은 시장에서 매우 인기가있어 많은 개발자를 탐욕스럽게 만듭니다. 하지만 초심자에게는 완전히 혼란스러워서 WeChat 애플릿의 개발 및 생산을 위해 어떤 지식을 배워야할지 모르겠습니다. 도움이 필요한 친구는이 기사를 참조 할 수 있습니다.
이 기사의 주요 지식 :
1.
애플릿 개요 및 소개 2. 애플릿 UI 개발
3. API 운영
4. 쇼핑몰 프로젝트 전투
- 안드로이드 관련 소스 코드 해석
자바 든 안드로이드 든 프로그래머라면 소스 코드를 읽지 않고 API 문서 만 보면 피부에 남게됩니다. 우리의 지식 시스템의 구축과 완전성 및 실제 전투 기술의 향상에 좋습니다. of.