java

@AfterEach는 언제 사용하는가? @AfterEach를 사용하면, 각 테스트 이후 실행되어야 하는 작업을 설정할 수 있다. 예를 들어 영속적인 데이터들이 초기화 되어야 하는 경우 사용될 수 있으며, 대표적으로 테스트 시 사용하는 데이터 베이스를 테스트 하는 경우 인메모리 데이터베이스를 사용하게 되는데, 이런 데이터 베이스를 초기화 할 때 사용할 수 있다. @AfterEach 사용 예시 예를 들어 다음과 같이 MyDatabase라는 이름의 RoomDataBase가 있고, 테스트에 MyDatabase를 사용한다면, 마지막에 꼭 close를 실행해줘야 테스트 시 리소스를 정리할 수 있다. 이때, 다음과 같이 @AfterEach를 사용해 myDatabase를 close 해줌으로써 각 테스트 이후 데이터 베..
Stack 이란 무엇인가? Stack은 마지막에 들어온 값이 제일 먼저 나가는(LIFO) 특징을 가진 자료구조로, 값을 추가하고 빼내는데 O(1)의 시간 복잡도로 가능해 다양한 곳에 활용될 수 있는 자료 구조이다. *예를 들어 안드로이드에서는 화면(Fragment) 변경 시 이전 화면의 목록을 관리하는데 Stack 자료 구조를 사용하고 있다. 한 번 Stack이 어떻게 동작하는지 그림으로 살펴보자. Stack은 값을 여러개 담을 수 있는 하나의 Container을 가지고 있으며, 값을 집어넣으면 아래와 같이 순서대로 Container에 쌓인다. 예를 들어 Element1, Element2를 Stack에 순서대로 쌓으면 아래와 같은 형태가 된다. 값을 빼낼 때는 무조건 위에 있는 값부터 빼내진다. 즉, S..
Java의 Primitive Type, Boxed Type과 한계 Java에서는 Primitive Type(원시 타입)과 Boxed Type(박스형 타입)의 변수를 구분해 코드를 작성하였다. Boxed Type은 Class로 원시 타입을 감싸는 형태로 만들어졌다. Java Primitive Type Java Boxed Type byte Byte short Short int Integer long Long float Float double Double char Character boolean Boolean 이는 초기에 매우 효과적이었는데, 원시 타입을 사용할 수 있는 곳에 원시 타입을 사용해 코드를 만들면 메모리가 많이 절약될 수 있었기 때문이다. 하지만 이는 시간이 지날수록 비효율적이어진다. 같은 목적을..
JSONObject란? JSONObject란 JSON 형식의 String을 처리하도록 도와주는 Java 라이브러리이다. JSONObject 사용 준비하기 JSONObject를 사용하기 위해 더미 JSON 파일이 있다고 가정해보자. { "title": "android", "version" : 1, "isValid" : false, "types": [ "class", "interface", "object" ] } 위 JSON은 Kotlin String으로는 다음과 같이 변환된다. val result = "{'title':'android', 'version' : 0, 'isValid' : false, 'types':['class',''interface','object']}" JSONObject 사용하기 JSO..
· CI\CD/Gradle
Gradle Kotlin, Java 프로젝트 만들기 우리는 이번 글에서 Gradle Kotlin, Java Project의 기본 구성을 살펴볼 것이다. 이를 위해 gradle init을 사용해 Kotlin 프로젝트를 생성하고 내부 구성을 볼 것이다. 다음 과정을 따라 Gradle Kotlin, Java Project를 만들도록 하자. 1. KotlinProject 폴더를 만든 후 현재 폴더를 KotlinProject 폴더로 바꾼다. 이후 gradle init을 하게 되면 총 6가지 질문이 나오게 된다. $ mkdir KotlinProject $ cd KotlinProject $ gradle init Starting a Gradle Daemon (subsequent builds will be faster)..
Dev.Cho
'java' 태그의 글 목록 (3 Page)