전체 글 9

Runnable

백그라운드 처리 방법 Thread와 Runnable의 차이점은 상속이냐 인터페이스냐의 차이 인터페이스는 재사용성이 좋기 때문에 Runnable이 추천됨. Runnable = 작업실행코드(Thread)가 어떻게 실행될지를 정의한 코드 cf. callable : (유사) 다른 thread에 의해 실행될 수 있는 클래스의 객체를 위한 인터페이스 (차이) callable은 return 값이 있고 exception 가능, but runnable은 불가능 (결론) runnable의 확장판이 callable

Mobile 2023.02.07

REST

Representational State Transfer 정의: Client와 Server 사이의 통신 방식 구성요소: 1. 자원 URI- 각각 다 다름 (구별은 HTTP URL로!)- 서버에 요청2. HTTP Method - GET, POST, PUT, DELETE (제한적이라는 한계도 있음) 3. Representative- 클라이언트의 요청에 대한 서버의 응답- 보통 JSON 이나 XML 형식 특징- HTTP 프로토콜 그대로 사용 -> 별도 인프라 필요 X- 서버/클라이언트 구조로 하는 일이 달라 의존성 줄어듦 ❄︎ RESTful은 일반적으로 REST라는 아키텍처를 구현하는 웹 서비스를 나타내기 위해 사용

Mobile 2023.02.06

안드로이드 비동기

- UI는 메인스레드에서만 접근 가능! 제일 중요하기 때문에 실행이 멈추면 안됨. 스레드란, 순차적으로 실행되는 실행흐름. 필요에 따라 만들어진 뒤 메인과 runnable 객체로 상호작용하거나 혹은 종료됨(이때 핸들러 사용됨) - 여러 작업 동시에 가능 - AsyncTask : 비동기 실행을 위해 제공되는 클래스 -> Coroutine (최신 사용) - RxJava : 외부에서 자유롭게 데이터 입출력을 하여도 메인쓰레드와 방해하지 않는것을 중시하는 프로그래밍 - 예시: 반응형 UI 구현, http 서버 API 요청, 대용량 데이터베이스 쿼리 등 - 단점: 순차적으로 진행되어야하는 경우 사용 불가

Mobile 2023.01.31

안드로이드 구성요소

어떤 앱이든 다른 앱의 구성 요소를 시작할 수 있음. 1. Activity - 사용자와 상호작용하기 위한 진입점(=인터페이스, 화면) - 각각의 Activity는 독립적임 - 하나 이상을 필수적으로 가지고 있어야함 - Fragment: lifecycle이 있는 viewgroup으로, 이를 이용하여 화면 분할 가능 2. Service - 백그라운드에서 실행하기 위한 진입점(=인터페이스 제공X) - 시작된 서비스는 작업이 완료될 때까지 해당 서비스를 계속 실행 - 메인스레드에서 동작 - 네트워크와 연동가능 3. Broadcast Reciver - 안드로이드 OS 시스템으로부터 받아오는 정보(=인터페이스 X) - ex. 이벤트알람, 배터리 부족알림, 문자 수신 4. Content Provider - 영구 저장..

Mobile 2023.01.30