본문 바로가기

전체 글1068

인텔리제이 JUnit 테스트 리포트 한글 깨짐 해결법 문제 인텔리제이에서 JUnit5를 사용해 테스트 돌릴 시 한글로 설정해둔 DisplayName이 깨져서 나왔다. @DisplayName("생성함") 해결법 1. shift를 두 번 눌러준다. 2. "edit vm" 쳐줘서 저거 눌러준다. 3. 이하의 문구를 추가해준다. -Dfile.encoding=UTF-8 4. 인텔리제이를 껐다킨다. 5. 다시해보면 잘 뜬다. 2022. 12. 15.
스프링부트 3.0.0 프로젝트 생성시 에러 해결법 (인텔리제이) 스터디용 프로젝트 하나 파는김에 새로나온 스프링부트 3.0.0으로 해보려 했다. 그런데 아래와 같은 에러가 발생했다. A problem occurred configuring root project 'java-test-practice'. > Could not resolve all files for configuration ':classpath'. > Could not resolve org.springframework.boot:spring-boot-gradle-plugin:3.0.0. Required by: project : > org.springframework.boot:org.springframework.boot.gradle.plugin:3.0.0 ... 얼핏 스프링부트 3.0.0 변경점 찾아봤던 것에서.. 2022. 12. 15.
[자바] 백준 25822 - 2000문제 푼 임스 (java) 문제 : boj25822 필요 알고리즘 개념 누적 합(prefix sum) 내 경우엔 이걸 메인 아이디어로 사용했다. 문제 태그에 없긴하다. 투 포인터 (two pointer) 누적합을 사용한 아이디어에 대해 시간복잡도를 줄이기 위해 사용했다. ※ 제 코드에서 왜 main 함수에 로직을 직접 작성하지 않았는지, 왜 Scanner를 쓰지 않고 BufferedReader를 사용했는지 등에 대해서는 '자바로 백준 풀 때의 팁 및 주의점' 글을 참고해주세요. 백준을 자바로 풀어보려고 시작하시는 분이나, 백준에서 자바로 풀 때의 팁을 원하시는 분들도 보시는걸 추천드립니다. 풀이 내 경우엔 누적합을 사용해 특정 구간에 대해 스트릭이 유지됬다고 가정할 때 필요한 스트릭 프리즈의 수를 O(1)로 알 수 있게 하는게 메.. 2022. 12. 15.
[CS 전공지식 노트] 5장. 자료구조 스터디 메인 이 스터디의 경우 이미 책의 내용이 매우 축약된 내용이므로 책 내용 정리는 크게 의미가 없다고 생각합니다. 따라서 스터디 정리는 추가로 설명한 부분에 대해 작성했습니다. [ 5장 - 자료구조 ] - 시간복잡도 https://nahwasa.com/entry/시간-복잡도에-대해 - 리스트, 벡터 https://nahwasa.com/entry/자료구조-리스트-List-Linked-List-Array-List-Vector-차이점-포함 - 배열 https://nahwasa.com/entry/배열-기본 - 스택, 큐 https://nahwasa.com/entry/자료구조-큐-스택-덱-Queue-Stack-Deque - 트리 '트리 구조로 배열된' 설명이 애매할 수 있음. 한마디로 사이클이 없는 연결 그.. 2022. 12. 15.
[CS 전공지식 노트] 4장. 데이터베이스 스터디 메인 이 스터디의 경우 이미 책의 내용이 매우 축약된 내용이므로 책 내용 정리는 크게 의미가 없다고 생각합니다. 따라서 스터디 정리는 추가로 설명한 부분에 대해 작성했습니다. [ 4장 - 데이터베이스 ] 인기는 MySQL이 많으나, 자바쪽은 오라클을 많이 쓴다. - 185p 보통 논리모델쪽에서 엔터티, 릴레이션이 물리모델의 테이블을 뜻함. 테이블의 행을 "row, 튜플 레코드", 열을 "칼럼, 필드, 속성(어트리뷰트)" 라고 말함. - 191p 오라클은 VARCHAR2가 권장되는데, 차후 VARCHAR는 오라클쪽에서 변경할 수 있기 때문이라고 함. - 202p 예시가 좀 애매한데, 그림으로 그려보면 이해하기 쉬움. 유저 ID와 수강명이 성취도를 결정하는데, 유저 ID와 수강명의 부분집합인 유저 I.. 2022. 12. 15.
[CS 전공지식 노트] 3장. 운영체제 스터디 메인 이 스터디의 경우 이미 책의 내용이 매우 축약된 내용이므로 책 내용 정리는 크게 의미가 없다고 생각합니다. 따라서 스터디 정리는 추가로 설명한 부분에 대해 작성했습니다. [ 3장 - 운영체제 ] - 134 page 이 책에 나온 수준은 단순히 개념만 알고 적당히 대답만 할 수 있는 수준임. 실제 개발에서 전반적인 시야를 넓히려면 별도로 공부하는게 좋음. 네트워크쪽은 책의 제목에 비해 일반적인 수준보다 더 써있는 것 같고(개발자한테 L4, L7의 차이를 물어볼 정도면 그냥 대답하지 말란 얘기가 아닐까..), 1,3,4,5장은 좀 빈약한 느낌이라 저자가 네트워크쪽 좋아하는 것 같음. - 139 page 레지스터는 CPU 내에서 연산 처리용이고, 캐시는 CPU와는 별도로 메모리와 CPU 속도 차이.. 2022. 12. 15.
깃헙 저장소 이관 방법 (github repository 이관, git 이관) 다른 계정의 저장소를 이관해오거나, 깃헙에서 다른 깃 플랫폼으로 커밋로그를 포함해서 이관해야하는 경우가 있다. 이럴 때 이관하는 방법이고, 깃헙 이외에도 사용 가능하다. 윈도우랑 리눅스 둘 다 가능하다. 1. 이관할 깃 저장소의 주소 확인 2. 이관에 사용할 임시 폴더 생성 후(안해도 됨) 클론해온다. git clone --bare [git 주소] 3. 이관할 저장소를 만들고 git 주소를 복사한다. 4. 새로운 저장소로 push 진행 git push --mirror [새로운 git 주소] 5. 파일 정리 새로운 저장소로 가보면 커밋로그까지 포함해서 정상적으로 이관된 것을 볼 수 있다. References https://docs.github.com/en/repositories/creating-and-ma.. 2022. 12. 15.
[잡글] 꼬맨틀 브루트포스 매크로 직장 후배가 스무고개 좋아하냐고 해서 좋아한다고 하니 꼬맨틀을 풀어보라고 했다. 손으로 풀긴 귀찮았다. 원래 귀찮은건 컴퓨터한테 시켜야 한다. 그래서 브루트포스(완전탐색)로 모든 경우를 보면서 푸는걸 시키기로 했다. 1. 데이터는 Wiktionary에 있다고 했다. 우선 그걸 파싱해서 js의 배열 형태 코드로 만들어주는 자바 프로그램을 짰다. 2. 해당 전처리 데이터를 기반으로 js에서 정답을 찾아주는 프로그램을 짰다. 정확히 어느 지점에서 멈춰야할지 모르므로 50 이상이면 일단 멈추게 했다. 결론적으로 50.1 초과면 멈추게 하면 된다. 3. 잘 된다.ㅋㅋㅋㅋㅋ 약 3000번 이상 돌아간 후 정답을 찾았다. 4. 후배한테 풀었다고 자랑하기 위해 재미로 하긴 했는데, 매번 서버로 쏘는걸 보니 저 회사 서.. 2022. 12. 14.
[클린코드] 2장. 의미 있는 이름 스터디 메인 페이지 목차 - ☆ 표시가 붙은 부분은 스터디 중 나온 얘기 혹은 제 개인적인 생각이나 제가 이해한 방식을 적어놓은 것으로, 책에서 말하고자 하는 바와 다를 수 있습니다. - 모든 이미지의 출처는 클린 코드(로버트 C. 마틴 저) 책 입니다. 2장 의미 있는 이름 의도를 분명히 밝혀라 ⚈ 의도가 분명하게 이름을 지어라. 좋은 이름을 지으려면 시간이 걸리지만 좋은 이름으로 절약하는 시간이 훨씬 더 많다. ⚈ 변수, 함수, 클래스의 이름은 다음의 질문에 답해야 한다. 따로 주석이 필요하다면 의도를 분명히 드러내지 못했다는 말이다. 존재 이유는? 수행 기능은? 사용 방법은? ind d; //경과 시간(단위: 날짜) VS int elapsedTimeInDays; int daysSinceCreatio.. 2022. 12. 14.
[클린코드] 1장. 깨끗한 코드 스터디 메인 페이지 목차 - ☆ 표시가 붙은 부분은 스터디 중 나온 얘기 혹은 제 개인적인 생각이나 제가 이해한 방식을 적어놓은 것으로, 책에서 말하고자 하는 바와 다를 수 있습니다. - 모든 이미지의 출처는 클린 코드(로버트 C. 마틴 저) 책 입니다. ⚈ 팀이나 공동체에서 서로 동의하는 합리적인 원칙을 세우기 위한 소통이 핵심 이 책은 이런 소통을 위한 기초 지식을 제공하고 생각할 거리를 던져주는 책 1장 깨끗한 코드 ⚈ 기계가 실행할 정도로 상세하게 요구사항을 명시하는 작업이 바로 프로그래밍이고, 그 결과가 바로 코드다. 코드는 요구사항을 표현하는 언어이다. ⚈ 우리 모두는 자신이 짠 쓰레기 코드를 쳐다보며 나중에 손보겠다고 생각한 경험이 있다. 나중은 결코 오지 않는다. (르블랑의 법칙) ⚈ 나쁜.. 2022. 12. 14.