Android/CS

    [Android/CS] 안드로이드 아키텍처 컴포넌트 AAC 에 대해 알아보자!

    [Android/CS] 안드로이드 아키텍처 컴포넌트 AAC 에 대해 알아보자!

    이번 시간에는! 이번 시간에는 안드로이드 아키텍처 컴포넌트, AAC(Android Architecture Component) 에 대해 알아보려고 해요. AAC 가 뭐야? AAC(Android Architecture Component) 는 테스트와 유지보수가 쉬운 앱을 디자인할 수 있도록 돕는 라이브러리의 모음이에요. AAC에는 안드로이드와 아키텍처에 대한 고민이 많이 담겨있기 때문에, 필수로 공부해야 한다고 생각해요. 구글은 2017년에 새로운 라이브러리들을 AAC로 묶어 발표했으며 크게 5가지로 분류하였어요. Lifecycles / LiveData / ViewModel / Room / Paging 이렇게 크게 다섯 가지로 분류되어 있어요. 이제 순서대로 알아보도록 하겠습니다. Lifecycles Lif..

    [Android/CS] 동기와 비동기, 블로킹과 논블로킹에 대해 알아보자!

    [Android/CS] 동기와 비동기, 블로킹과 논블로킹에 대해 알아보자!

    면접 준비를 하다 동기와 비동기에 대해 알아보려다 블로킹과 논블로킹에 대해서도 알아보게 되었다. 동기 (Synchronous) 어떤 작업을 요청한 즉시 바로 그 작업의 완료 여부와 처리 결과를 확인할 수 있는 방식이다. 요청한 작업의 완료 여부와 결과를 바로 알 수 있다는 장점이 있다. 하지만 요청한 작업의 완료여부와 작업 결과를 반환받는 데 필요한 시간이 긴 경우 문제가 발생할 수 있다. 해당 작업이 완료되어 결과가 반환될 때 까지 무조건 기다려야만 하기 때문에 짧은 시간이 엄청 많은 대량의 데이터를 요청해 작업을 진행하게 되는 경우, 문제가 발생할 수 있어 주의를 해야 한다. 비동기 (Asynchronous) 동기와 다르게 비동기는 작업을 요청한 즉시 바로 그 작업의 완료 여부와 작업 결과를 바로 확..