목적 MVVM 아키텍처가 등장하게 된 배경을 이해한다. MVVM 아키텍처의 필요성을 이해한다. MVVM 아키텍처의 등장 배경 안드로이드의 아키텍처는 크게 MVC, MVP, MVVM 3가지로 나뉜다. 아키텍처는 MVC, MVP, MVVM 순서로 나왔는데 각각은 이전 아키텍처를 개선하여 나온 것이다. 어떤 점에서 한계점이 있었고, 어떤점이 개선되었는지 아래에서 각각의 특징을 살펴보자. MVC : View와 Controller를 Activity, Fragment 클래스에서 담당 각 클래스가 강하게 결합되어 있을 경우, 한 클래스가 변경되면 다른 클래스 또한 같이 변경되어야 하기 때문에 유지보수 하기가 어렵다. 웹에서 널리 사용되었던 MVC 아키텍처에서는 안드로이드에서 사용하기 위해서 View단과 Control..
분류 전체보기
LocalDateTime 만들기 직접 날짜, 시간 지정하여 만들기 val dateTime = LocalDateTime.of(2021, 1, 26, 19, 30, 20) LocalDate와 LocalTime을 조합하여 만들기 val date: LocalDate = LocalDate.of(2021, 1, 26) val time: LocalTime = LocalTime.of(19, 30, 20) /* LocalDate와 LocalTime을 이용하여 LocalDateTime 만들기 */ val dateTime: LocalDateTime = LocalDateTime.of(date, time) val dateTime1: LocalDateTime = date.atTime(time) val dateTime2: Loca..
1. LocalTime 만들기 객체 생성 정적 메서드를 이용하여 LocalTime 인스턴스를 만든다. /* 직접 지정하여 만들기 */ val time: LocalTime = LocalTime.of(19, 30, 20) /* String을 LocalTime으로 만들기 */ val timeParse: LocalTime = LocalTime.parse("19:30:20") /* 현재 시간을 LocalTime으로 만들기 */ val timeNow: LocalTime = LocalTime.now() 2. LocalTime에서 값 읽기 LocalTime는 시간 값을 읽는 여러 메서드를 제공한다. LocalTime에서 직접 변수에 접근하여 읽는 방법 TemporalField를 이용하여 읽는 방법 val time: L..
1. LocalDate 만들기 객체 생성 정적 메서드를 이용하여 LocalDate 인스턴스를 만든다. 아래는 가장 많이 쓰이는 4가지 유형을 소개한다. /* 직접 지정하여 만들기 */ val date = LocalDate.of(2021, 1, 26) /* String을 LocalDate로 만들기 */ val dateParse = LocalDate.parse("2020-01-26") /* DateFormatter을 지정하여 String을 LocalDate로 만들기 */ val dateParseWithFormatter = LocalDate.parse("2021-01-26", DateTimeFormatter.ISO_DATE) /* 현재 시간을 LocalDate로 만들기 */ val dateNow = Local..
목표 time 패키지를 이용해 날짜, 시간을 제대로 다루는 방법을 안다. Temporal 객체가 무엇인지 이해한다. 개요 기존 Date 클래스와 Calendar 클래스는 날짜와 Timezone 관련되어 개발자를 헷갈리게 하는 부분이 많았습니다. 이에 대한 대체제로 Temporal Interface를 구현하는 LocalDateTime, LocalDate, LocalTime가 java 1.8에서 등장하였습니다. * 아래에서는 LocalDateTime, LocalDate, LocalTime을 통틀어 Temporal 객체라 부르도록 하겠습니다. 클래스명 설명 LocalDate 날짜를 표현하는 불변 객체 LocalTime 시간을 표현하는 불변 객체 LocalDateTime 날짜와 시간을 표현하는 불변 객체 *불변..