본문 바로가기
반응형

자바39

[JUnit] JUnit 5로 자바 단위 테스트 시작하기 JUnit 5로 자바 단위 테스트 시작하기 이 글은 인프런 - 더 자바, 애플리케이션을 테스트하는 다양한 방법 강의를 학습하며 정리한 내용입니다. www.inflearn.com/course/the-java-application-test JUnit이란? 자바 개발자가 가장 많이 사용하는 단위(Unit) 테스트 프레임워크다. 2019년 jetbrains(AndroidStudio, intellij 제작사) 설문조사에 따르면 93%의 자바 개발자가 단위 테스트를 위해 JUnit을 사용한다고 한다. JUnit은 8버전 이상의 자바를 지원한다. 단위 테스트란 소스 코드의 특정 모듈이 의도된 대로 정확히 작동하는지 검증하는 절차이다. 즉, 자바에서는 메소드에 대한 테스트 케이스를 작성하는 것을 말한다. JUnit5의.. 2021. 4. 27.
[Java] Cipher, 자바의 암호화&복호화를 담당하는 클래스 아래 홈페이지에 정리된 내용을 의역하여 자바의 Cipher 클래스에 대하여 설명하는 글입니다. www.baeldung.com/java-cipher-class 학습 목표 - Cipher란? - Cipher 객체 인스턴스화하기 - Keys - Cipher 초기화(Initialization) - Encrpytion/Decryption - Providers - 암호화, 복호화 테스트 - Thread-Safety Cipher란? 암호화는 권한이 있는 사용자만 메세지를 이해하거나 접근할 수 있도록, 메세지를 인코딩하는 과정을 말한다. 여기서 plaintext라고 불리는 메세지는 암호화 알고리즘을 통해 암호화되어 cyphertext를 생성한다. cyphertext는 복호화를 통해 오직 권한이 있는 사용자만 읽을 수 .. 2021. 4. 20.
[Java] 표준 API의 함수형 인터페이스, java.util.function 패키지 이 글은 java.util.function 패키지의 함수형 인터페이스 표준 API에 대해서 설명합니다. 학습 목표 · java.util.function 패키지 · Consumer · Supplier · Function · Operator · Predicate java.util.function 패키지 자바에서 제공되는 표준API에서 한 개의 추상 메소드를 가지는 인터페이스들은 모두 람다식을 이용해서 익명 객체로 표현 가능하다. 예를 들어 스레드의 작업을 정의하는 Runnable 인터페이스는 매개 변수와 리턴값이 없는 run() 메소드만 존재하므로 람다식을 이용해서 Runnable 인터페이스를 생성할 수 있다. Runnable runnable = ()-> { System.out.println("스레드 시작".. 2021. 3. 7.
[Java] 자바의 람다식이란? 학습 목표 · 람다식이란? - 함수형 프로그래밍이란? · 람다식 사용법 · 함수형(Functional) 인터페이스 - 추상 메소드 선언 형태에 따른 람다식 작성법 · Variable Capture · 메서드 참조 람다식이란? · 익명 함수(Anonymous function)을 생성하기 위한 식 · 자바8 버전에 도입되어 자바에서 함수형 언어의 장점을 누릴 수 있게 됨 자바에서 람다식의 형태는 매개 변수를 가진 코드 블록이지만, 런타임 시에는 익명 구현 객체를 생성한다. 람다식 -> 매개 변수를 가진 코드 블록 -> 익명 구현 객체 * 함수형 프로그래밍이란? 객체지향은 동작하는 부분을 캡슐화해서 이해할 수 있게 하고, 함수형 프로그래밍은 동작하는 부분을 최소화해서 코드 이해를 돕는다. - 마이클 페더스‘레.. 2021. 3. 6.
[Algorithm] 정렬 알고리즘 (with 자바코드) '이것이 취업을 위한 코딩 테스트다 with 파이썬' 이라는 책을 공부 중입니다. 이 글은 해당 책의 내용 중 정렬 알고리즘 부분을 요약, 정리한 글입니다. 학습 목표 · 선택 정렬(Selection Sort) · 삽입 정렬(Insertion Sort) · 퀵 정렬(Quick Sort) · 계수 정렬(Count Sort) ✍ ,정렬이란 데이터를 특정한 기준에 따라서 순서대로 나열하는 것이다. 정렬 알고리즘으로 데이터를 정렬하면 이진 탐색(Binary Search)이 가능해진다. 즉, 정렬 알고리즘은 이진 탐색의 전처리 과정이기도 하다. 선택 정렬(Selection Sort) 선택 정렬 알고리즘은 가장 원시적인 방법이다. ✍ 데이터가 무작위로 여러 개 있다고 가정하자. 가장 작은 데이터를 선택해 맨 앞에 .. 2021. 2. 26.
[Algorithm] 복잡도 (with 자바) 복잡도 (with 자바) '이것이 취업을 위한 코딩 테스트다 with 파이썬' 이라는 책을 공부 중입니다. 이 글은 해당 책의 내용을 요약, 정리한 글입니다. 책에서는 파이썬을 기반하여 복잡도를 설명하지만 여기서는 해당 내용을 자바로 변경하여 표현하고, 내용을 덧붙였습니다. 학습 목표 · 복잡도란? · 시간 복잡도 · 공간 복잡도 · 시간과 메모리 측정(자바 사용) 복잡도란? 복잡도(Complexity)는 알고리즘의 성능을 나타내는 척도다. 복잡도는 시간(Time) 복잡도와 공간(Space)복잡도로 나눌 수 있다. 시간 복잡도: 알고리즘을 위해 필요한 연산 횟수. 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리지는지를 의미 공간 복잡도: 알고리즘을 위해 필요한 메모리의 양. 특정한 크기의 입력에.. 2021. 2. 3.
반응형