Zhihu가 "안드로이드 개발에 어떤 신기술이 떠오르고 있나요?"라고 답한 기록은 다음과 같습니다. 》
원래 질문은 다음과 같습니다.
안드로이드 개발에 어떤 신기술이 등장하고 있나요?
UI 디자인이나 일부 핵심 알고리즘으로 시작할 수 있습니다
제 답변 원문은 다음과 같습니다.
Zhihu에 대한 질문에 처음으로 답변을 해보는데 약간의 느낌이 듭니다. 대단한 사람들이 모이는 곳에서 내가 말을 잘못해서 모두를 웃게 만들까봐 두렵다. 나는 많은 개발자들이 질문자가 제기한 이 질문에 대해 할 말이 있다고 생각합니다. 안드로이드의 발전 속도는 참으로 빠릅니다. 매년 새로운 것들이 많이 등장하고 있는데, 사실 안드로이드의 발전 추세를 이해하기 위해 주로 안드로이드의 새로운 기술 발전을 다루겠습니다. , 개발자에게 더 도움이 될 수 있습니다.
개발 도구
Android Studio: Google은 공식적으로 Eclipse 및 Android Studio의 대중화를 포기했습니다. AS가 새로운 것은 아니지만 Android Studio 소프트웨어의 업데이트 속도는 놀라울 정도로 빠르며, 새로운 기능도 많이 출시되었습니다. 예를 들어, 많은 주석 코드 프롬프트 주석, 라이브 코드 템플릿을 지원하고 Parcelable 구현의 자동 생성을 지원합니다. 개발자로서 이 업데이트 목록 최근 변경 사항에 계속 주의를 기울이십시오. 그러면 확실히 코딩 생활이 더 좋아질 것입니다.
“언어” 프로그래밍
Kotlin: Android 분야의 Swift로서 확실히 여러분에게 신선한 공기를 불어넣어 줄 것입니다. 무거운 Java 구문을 버리고 Kotlin은 현대 프로그래밍 언어의 많은 아이디어를 통합합니다. 개발자로서 새로운 언어를 받아들이고 새로운 언어의 개발 동향을 이해하는 것은 사고의 폭을 넓히고 언어에 대한 이해를 심화하는 데 더 도움이 될 것입니다. Android 개발에서 Kotlin을 사용하면 비용이 전혀 들지 않습니다. 한번 사용해 보는 것은 어떨까요? Kotlin을 활용한 안드로이드 개발.
React Native: 크로스 플랫폼은 항상 프로그래머의 꿈이었고, Facebook의 참여와 홍보로 인해 모바일 애플리케이션을 위한 크로스 플랫폼 솔루션이 많이 있습니다. React Native로 개발된 첫 번째 앱이 Google Play에 출시되었습니다. Facebook 광고 관리 도구, Android SDK가 곧 출시될 예정이라고 들었습니다.
Sky: React Native와 유사하게 웹 개발 언어를 사용하여 모바일 플랫폼을 개발하려는 시도에 불과하지만 특히 Java 언어 사용에 대한 소송에서 패소한 후 Google에서 자체적으로 출시했습니다. domokit/sky_sdk에 몇 가지 성과가 있을 수 있습니다.
개발 모드
Dagger 2: 종속성 주입은 새로운 기술은 아니지만 Android에서 사용하는 것은 그야말로 새로운 시도입니다. 안드로이드 앱은 점차 본격적인 대규모 프로젝트로 구축되고 있으며, 대규모 서버 개발에 사용되는 많은 기술이 모바일 개발에 적용되고 있습니다. Android 개발은 모듈로 구분되며 Dagger를 사용하여 모듈을 느슨하게 결합합니다. 특히 주목할만한 점은 Dagger 2가 이제 Google 자체에 인수되었다는 것입니다. Dagger ‡ Android 및 Java용 빠른 종속성 주입기입니다.
MVP: 안드로이드는 비즈니스와 인터페이스를 엄격하게 구분하지 않기 때문에 프로젝트가 복잡해지면 코드가 혼란에 빠지기 쉽습니다. 요즘 Android 개발 커뮤니티에서는 MVP 모델에 대한 논의가 점점 늘어나고 있으며 MVP가 Android APP 개발에 매우 적합하다고 생각합니다. Android용 MVP: 프레젠테이션 레이어를 구성하는 방법
RxAndroid: 기능적 반응형 프로그래밍은 새로운 것이 아닙니다. RxAndroid는 RxJava를 Android 환경에 제공합니다. 많은 경우 안드로이드 프로그램을 작성하는 것도 데이터의 처리와 흐름으로 간주될 수 있습니다. 프로그래밍에 대한 생각을 바꾸면 한때 매우 어렵게만 보였던 문제가 순식간에 우아하게 해결될 수 있습니다: ReactiveX/RxAndroid.
MVVM: 이는 DataBinding이 공식적으로 지원되어 MVVM을 Android에 직접 가져왔기 때문입니다. 데이터 바인딩은 Windows WPF 및 웹에서 이미 매우 일반적이므로 개발 효율성이 매우 높으므로 데이터와 비즈니스에만 관심을 가질 수 있습니다. 이는 의심할 여지 없이 Android 개발에 매우 중요한 영향을 미칩니다. Android UI 디자인에서 MVVM 디자인 패턴에 대한 논의? .
플러그인화: 대규모 Android 프로젝트의 경우 많은 앱이 플러그인을 사용하여 상대적으로 독립적인 기능을 모듈에 구축하기 시작했습니다.
하이브리드: 아직 성숙하지 않은 HTML 5를 사용하여 앱을 완전히 개발합니다. 그러나 대부분의 경우 타협 솔루션이 매우 적합합니다. 대표적인 예가 WeChat입니다. 대부분의 정보 표시는 H5를 통해 이루어지며 동시에 웹과 네이티브가 연결되어 웹 페이지를 제공합니다. 로컬 리소스에 액세스하는 능력.
UI 디자인
머티리얼 디자인: 이 분야에 대한 논의가 너무 많고 다양한 지원 라이브러리가 있으며, 특히 Google의 공식 지원 라이브러리가 있습니다. 지원 라이브러리.
스케치 3: 모바일 UI용으로 특별히 설계된 디자인 도구입니다. 개발자로서 매우 전문적인 디자인을 수행하기 위해 PS의 복잡한 사용법을 알 필요는 없습니다. https://designcode.io/ 스케치
그러고 보니 아직 언급되지 않은 부분이 많은 것 같습니다. 기술은 매우 빠르게 발전하고 있습니다. 모든 세부 사항을 따라잡을 수는 없지만 이러한 새로운 기술이 서로 연결되어 있다는 것을 알게 될 것입니다. 많은 곳. 개발자에게 있어서 신기술에 대한 호기심과 관심을 유지할 수 있는 경우는 매우 드뭅니다. 신기술에 참여하는 것은 기술적 성취이고, 신기술 개발을 선도하는 것은 마스터입니다.