분류 전체보기
-
TIL 116일 - TDD로 알고리즘 문제 풀기공부/개발 전체적인 2022. 4. 24. 18:16
요구사항 어떤 문자열을 입력 받았을 때 가장 짧게 줄였을 때의 문자열 길이를 반환하는 프로그램을 만든다. https://programmers.co.kr/learn/courses/30/lessons/60057 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 코드 이번에는 아래처럼 테스트코드를 짜봤다. package com.example.kakaostring; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.a..
-
TIL 114일 - Java 놓치고 있던 기본적인 것공부/Java와 Spring 2022. 4. 22. 20:44
Element 찾기 array.stream().filter().findFirst() 이렇게 찾는게 맞다고 하네... 근데 이게 최선인가... 너무 긴 느낌인데... 근데 이게 맞나봐... ArrayList 초기화와 동시에 element 추가하기 List vs ArrayList, List는 인터페이스임 ArrayList는 클래스임 ArrayList는 List를 구현한거임 String[] vs ArrayList string[] array는 한번 생성하면 사이즈를 변경할 수 없다. ArrayList arrayList는 사이즈가 유동적이지만, 사이즈가 바뀔 때마다 전에 것을 복사하는 과정이 있다고 한다. arrayList는 primitive 타입을 저장할 수 없음 객체만 저장할 수 있다.
-
TIL 113일 - TDD공부/개발 전체적인 2022. 4. 21. 22:13
For문을 사용해서 테스트 코드를 짜면? 1. 어디서 실패했는지 모른다. 2. given when than이 애매해질 수 있다. 3. 실패 이후 부터의 결과를 모른다. 테스트 코드 가시적이고 구체적인 목표 자가검증 반복실행 운영 코드 API의 클라이언트가 된다. 가장 명확한 코드 명세 테스트 코드부터 작성하면? 명확하고 검증 가능한 목표를 만들 게 해줌 목표 설정이 강요가 됨 자신이 풀어야할 문제를 구체적으로 이해하게 됨 리팩토링 코드는 작업환경이자 작업의 결과물이다 고로 작업환경 정리(리팩토링)이 중요하다. 리팩토링을 할 때 중요한 것은 의미를 훼손하지 않으면서 구조를 바꾸는것인데, 의미가 훼손되지 않았다는 것을 보장해 주는 것이 테스트 코드이다.
-
TIL 111일 - TDD로 코딩테스트 문제 풀기공부/개발 전체적인 2022. 4. 19. 23:04
https://programmers.co.kr/learn/courses/30/lessons/92334 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 문제 설명 k번 이상 신고된 유저는 게시판 이용이 정지되며, 해당 유저를 신고한 모든 유저에게 정지 사실을 메일로 발송합니다. 유저가 신고한 모든 내용을 취합하여 마지막에 한꺼번에 게시판 이용 정지를 시키면서 정지 메일을 발송합니다. 다음은 전체 유저 목록이 ["muzi", "frodo", "apeach", "neo"]이고, k = 2(즉, 2번 이상 신..