| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
- ec2
- 레디스
- fastcampus
- Redis
- 자바
- gradle
- Cluster
- redash
- hive
- 설정
- spring
- Docker
- Zeppelin
- EMR
- Jenkins
- 클러스터
- Kafka
- 간단
- SpringBoot
- 자동
- config
- 예제
- java
- login
- 로그인
- aws
- vue
- Mac
- 젠킨스
- 머신러닝
- Today
- Total
목록분류 전체보기 (204)
코알못
우선 실습에 앞서 프로젝트를 생성해보자!아래 화면과 같이 자바 프로젝트를 생성하며 자바 21버전을 사용하도록 한다.프로젝트 생성시 Add sample code 에 체크박스 했기 때문에아래와 같이 예제 코드가 들어있다.메인을 실행하여 동작 여부를 확인해보자!결과를 보면 정상적으로 출력 되는것을 볼 수 있다.이제 메인 클래스에 아래와 같이 코드를 작성해보자!해당 코드는 현재 이용 가능한 모든 문자 집합을 조회하는 코드이다.// 이용 가능한 모든 Charset 자바 + OSSortedMap charsets = Charset.availableCharsets();for (String charsetName : charsets.keySet()) { System.out.println("charsetName = " + ..
우리는 컴퓨터를 사용하면서 이런 의문을 가진다..컴퓨터는 문자를 어떻게 저장할까?컴퓨터는 우리가 보는 글자 그대로를 저장하지 않는다. 모든 정보를 0과 1로만 처리한다.그 이유는 컴퓨터의 메모리는 반도체로 만들어져 있고전기가 흐르냐(1) / 안 흐르냐(0) 두 가지 상태로만 데이터를 표현하기 때문이다.그래서 컴퓨터는 모든 데이터를 이진수(0과 1) 로 표현한다.컴퓨터에서 가장 작은 데이터 단위를 bit(비트) 라고 한다.1bit는 0 또는 1 이진수 두 가지를 표현할 수 있다.비트 별로 표현할 수 있는 가지수를 보자!비트표현 가능 수1 bit0, 1 (2가지)2 bit00, 01, 10, 11 (4가지)3 bit000, 001, 011 .... (8가지)8 bit256가지 8bit는 256가지 경우를 표..
저번 시간까지는 하나의 값에 대한 검증하는 방법을 배웠다!이번 시간에는 컬렉션 검증에 자주 사용되는 AssertJ 메서드에서 알아보자!1) extracting() 을 이용한 정보 추출 검증, contains() 를 통한 내부값 포함 여부 검증객체 리스트에서 특정 필드만 추출해서 검증하고 싶을 때 extracting()을 사용해보자!예를 들어 객체 리스트에서 name 필드만 추출해서 검증할 수 있다.assertThat(users) .extracting(User::getName) .contains("Kim", "Lee");이렇게 하면 객체 내부의 값을 꺼내서 원하는 데이터만 집중적으로 검증할 수 있다!그리고 contains() 를 통해 내부에 해당 값을 전부 포함하고 있는지 확인한다.2) cont..
저번 시간에 이어서 테스트 코드 품질을 개선하는 방법에 대해서 알아보자!이번 시간에는 아래 방법에 대해서 예시를 통해 하나씩 보도록 한다.TestRestTemplate.postForObjectTestRestTemplate.exchangeAssertJ.isCloseTo@DirtiesContextTestFixtureTestDSL우리는 TestRestTemplate.postForEntity 를 이전 시간에 사용했다.그러나 우리가 응답의 헤더나 상태코드가 필요 없고 응답 데이터만 필요할 때가 있다.그럴때 사용할 수 있는 메서드는 postForObject 이다!아래와 같이 예제 코드를 작성해보자.Users users = Users.builder() .name("코린이") ...
실무에서 테스트 코드를 작성하다 보면 반복 되는 코드가 많거나 가독성이 떨어지는 경우가 많다.이런 테스트 코드의 품질을 높이기 위한 방법이 있다!아래 방법을 통해 개선 작업을 진행해보자!1) assertThat().satisfies()satisfies 를 사용하면 아래와 같은 경우 사용 가능하다.해당 여러 검증 코드를 하나로 묶을 때자유롭게 검증 코드를 작성하기 위해예시를 통해 알아보자!우선 간단한 회원 가입 로직을 만들어보자!간단한 API 를 만들기 위해 필요한 라이브러리는 아래와 같다.dependencies { implementation("org.springframework.boot:spring-boot-starter-web") implementation("org.springframewor..
TDD 를 예시를 통해 알아보자 !우리는 회원관리 시스템을 만든다고 하자! 그 중 유저 생성 API 로 TDD 를 수행해보자!1) 테스트 시나리오 작성- 유저 생성 API 호출하여 정상 처리시 상태 코드 200을 리턴한다.- 유저 생성 API 호출시 이름, ID, 패스워드 정보를 전달 받으며 이 중 하나라도 없다면 상태 코드 400을 리턴한다.- 이름 파라미터는 세자리이며 맞지 않을 경우 상태코드 400을 리턴한다.- ID 파라미터는 영어로만 이뤄지며 맞지 않을 경우 상태코드 400을 리턴한다.- 패스워드 파라미터는 영문자 숫자로 이뤄지며 최소 4자리 이상이여야 하며 맞지 않을 경우 상태코드 400을 리턴한다.2) API 설계 문서화요청 정보메서드 : POST경로 : /user헤더 : Content-Ty..
테스트 주도 개발(TDD) 개념부터 실무 활용까지 알아보자!개발을 하다 보면 “테스트는 나중에 하지 뭐…”라고 생각하는 경우가 많다고 한다.하지만 안정적인 서비스를 만들기 위해서는 테스트가 매우 중요하다.이때 등장하는 개념이 바로 TDD(Test-Driven Development) 다!지금부터 하나씩 알아보자!TDD(Test-Driven Development)란?TDD는 테스트 시나리오대로 코드를 먼저 작성한 뒤,그 테스트를 통과시키기 위해 코드를 만들고,이후 리팩토링을 통해 계속해서 개선하는 개발 방법이라고 한다.이 개념은 켄트 벡이 정립한 개발 방법론으로 알려져 있다고 한다.TDD의 3단계 TDD는 크게 3단계로 반복된다!간단하게 설명하면 아래와 같다!Red → 실패하는 테스트 작성Green → 최소..
🌱 재귀함수에 대해서 알아보자!재귀함수란, 자기 자신을 다시 호출하는 함수를 말한다.말 그대로, 함수가 자기 자신을 반복적으로 부르는 구조라고 할 수 있다!재귀를 사용하면 코드를 간결하게 표현할 수 있고,특히 반복적인 구조나 문제를 잘게 쪼개는 상황에서 유용하게 쓰인다.📌 재귀함수는 언제 고려해야할까?재귀함수는 다음과 같은 상황에서 고려해볼 수 있다반복적인 계산 구조일 때탐색 범위를 계속 줄여야 할 때🚨 재귀함수의 핵심: 탈출 조건!재귀함수를 사용할 때 가장 중요한 건 탈출 조건이다!자기 자신을 계속 부르다 보면 무한 루프에 빠질 수 있기 때문에,어디선가 반드시 멈춰야 한다.이걸 탈출 조건이라고 한다.팩토리얼 예제로 재귀를 이해해보자!팩토리얼은 1부터 N까지의 정수를 모두 곱한 값을 말한다.3!이..