목록전체 글 (52)
운기의 블로그
https://mynamewoon.tistory.com/57 Android Developer Roadmap #1안드로이드 개발자 가이드 문서를 보고 제가 이해한 바를 바탕으로 작성했습니다. 애플리케이션 기본 항목 | App architecture | Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다.mynamewoon.tistory.com저번 글에서는 앱이 무엇이고, 모바일에 어떻게 여러 앱이 존재 할 수 있는지에 알아봤다면, 오늘은 각각의 앱이 실행될 수 있는 Android 플랫폼의 구조에 대해서 포스팅을 해보려고 합니다.안드로이드 플랫폼 아키텍처는 총 6단계로 구성되어 있습니다. 각 계층은 독립적으로 설계되어 다양한 제조사(삼성, LG, 샤오미..
안드로이드 개발자 가이드 문서를 보고 제가 이해한 바를 바탕으로 작성했습니다. 애플리케이션 기본 항목 | App architecture | Android Developers이 페이지는 Cloud Translation API를 통해 번역되었습니다. 애플리케이션 기본 항목 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Android 앱은 Kotlin, Java 프로그developer.android.com Android Package 디바이스에 설치되어 있는것을 우리는 "앱" 이라고 부릅니다. 앱은 Java, kotlin, c++ 를 사용해서 코드를 작성할 수 있습니다.작성된 코드와 리소스들은 Android SDK의 빌드 도구를 통해 설치 가능한 패키지 형태로 변환됩니다..
모듈이란?모듈 시스템에서 독립적인 단위로서의 기능을 하는 부분 모듈은 하나의 시스템 안에서 독립적인 단위로서 그 자체로 하나의 완전한 기능을 수행 할 수 있고, 각기 다른 모듈을 합쳐 하나의 시스템으로 동작 할 수 있다.모듈의 역사1950년대에는 단일프로그래밍으로 엄청나게 긴 줄로 코드를 작성했다. 시간이 지나면서 1960년대 서브 루틴 이라는 개념을 도입 하면서 함수들을 분리하면서 코드를 재사용 할 수 있게 진화했다. 1970년대 모듈의 개념이 생기면서 코드의 관리와 재사용을 용이하게 하자는 흐름이 생겼고, 1980년대 들어오면서 객체 지향에 대한 개념이 등장하면서 모듈에 대한 관심이 더욱 커지게 되었고, 현재의 모듈 개념이 정착 된 것이다.모듈을 왜 사용하는 거야? 💡 가구를 구매 할 때, 전체 세..
이전 두편에서는 코루틴이란 무엇인지에 대해서 이름의 정의부터 알아봤다. 이번부터는 안드로이드 개발자 문서 가이드에 따라서 하나하나 알아보도록 하겠다. 안드로이드 개발자 가이드에서는 비동기 프로그래밍에 코루틴을 권장하는 이유는 4가지이다. 경량? 경량은 가벼운 무게라는 뜻을 가지고있다. 그렇다면 뭐가 가벼운지에 대해서 생각해 볼 필요가 있다. 안드로이드 개발자 가이드 문서에서 설명하기로는 스레드를 차단하지 않는 정지를 지원하므로 단일 스레드에서 많은 코루틴을 실행 할 수 있다고 한다. 여기서 중요한건 스레드를 정지하지 않고, 단일 스레드로 많은 코루틴을 실행한다는거다. 해당 문구에 대해서 알아기 위해서는 우리는 이전편에서 알았단 비동기에 대해서 알아야지 이해를 할 수 있다. 우선 기존에 비동기 처리방법에 ..
이전글 에서는 왜 코루틴이라고 불리는지에 대해서 기본 개념을 알아봤다. 이번글에서는 코루틴이 비동기적으로 실행되는 코드를 간소화하기 위해 Android에서 사용할 수 있는 동시 실행 설계 패턴이라고 설명하는지 알아보려고 한다. 그전에 동시성(동시 실행 설계 패턴)이 무엇인지 비동기가 무엇인지 순서대로 알아보자 비동기와 동시성에 대해서 어느정도 알고 있다는 가정하에 작성해보려고 한다. 동시성이란? 동시성이라는 용어에 대해서 찾아보면 꼭 같이 나오는 용어가 있는데 바로 병렬성이다. 예전에는 하나의 프로세스에 하나의 스레드일 때는 상상도 할 수 없던 방법이다. 하지만 나날이 성능이 좋아지면서 멀티 프로세스와 멀티스레드가 등장하면서 해당 기법은 중요한 기법으로 자리를 잡았다. 동시성은 하나의 프로세스에서 여러작..
처음 코루틴을 봤을 때 안드로이드 개발자 가이드 문서에서는 개발자 가이드 문서에서 코루틴은 비동기적으로 실행되는 코드를 간소화하기 위해 Android에서 사용할 수 있는 동시 실행 설계 패턴이라고 설명한다. 코루틴의 장점 경량 : 코루틴을 실행 중인 스레드를 차단하지 않는 정지를 지원하므로 단일 스레드에서 많은 코루틴을 실행할 수 있습니다. 정지는 많은 동시 작업을 지원하면서도 차단보다 메모리를 절약합니다. 메모리 누수 감소 : 구조화된 동시 실행을 사용하여 범위 내에서 작업을 실행합니다. 기본으로 제공되는 취소 지원 : 실행중인 코루틴 계층 구조를 통해 자동으로 취소가 전달됩니다. jetPack 통합 : 구조화된 동시 실행에 사용할 수 있는 자체 코루틴 범위도 제공합니다. 라고 설명되어 있다. 스레드를..