본문 바로가기

전체 글

(69)
알고리즘 / [java] 2020 카카오 블라인드 테스트 / 괄호 변환 카카오 블라인드 테스트 / 괄호 변환 코딩테스트 연습 - 괄호 변환 카카오에 신입 개발자로 입사한 콘은 선배 개발자로부터 개발역량 강화를 위해 다른 개발자가 작성한 소스 코드를 분석하여 문제점을 발견하고 수정하라는 업무 과제를 받았습니다. 소스를 컴� programmers.co.kr 문제의 자세한 정보는 위의 링크에서 확인하시길 바랍니다. 알고리즘 / 2020 카카오 블라인드 테스트 / 괄호 변환 정리하자면 주어진 괄호를 올바른 형태로 바꾸는 문제인데 친절하게도 올바른 형태로 바꾸는 로직을 단계별로 알려주었습니다. 로직을 다시 한번 살펴보죠. 1. 입력이 빈 문자열인 경우, 빈 문자열을 반환합니다. 2. 문자열 w를 두 "균형잡힌 괄호 문자열" u, v로 분리합니다. 단, u는 "균형잡힌 괄호 문자열"로..
알고리즘 / [java] 주식가격 / 프로그래머스 프로그래머스 주식가격 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 문제 설명 int 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 입출력 예시 prices return [1, 2, 3, 2, 3] [4, 3, 1, 1, 0] 풀이 결국 prices의 요소마다 하나씩 꺼내서 해당 요소보다 값이 작은 요소의 값을 찾아 index값 차이를 리턴에 넣어주면 된다. 시작 요소의 in..
jenkins 설치 시 플러그인 설치오류 (Feat. docker) docker로 jenkins 설치 시 플러그인 설치요류 이번 포스팅에서는 docker로 jenkins설치 할 때 플러그인 오류가 발생하는 문제 해결방법에 대해서 다뤄보려고 합니다. mac os 환경에서 실습이 진행되었음을 참고해주세요. docker에서 jenkins 설치와 실행 설치 도커가 설치되어 있는 상황이라고 가정한다면 jenkins를 설치하는 방법은 매우 간단합니다. 터미널환경에서 다음 명령어를 실행만 하면 됩니다. docker pull jenkins 실행 설치가 완료 되었다면 다음 명령어를 입력하여 실행합니다. docker run -p 8082:8080 -v /var/jenkins_home --name jenkins jenkins (이때 -p 8082:8080에서 8082는 여러분이 jenkin..
JPA OneToMany 단방향 맵핑의 단점 이해하기 삽질기 JPA OneToMany 단방향 맵핑의 단점 이해하기 삽질기 JPA의 연관관계 설정에는 크게 4가지가 있습니다. OneToOne OneToMany ManyToOne ManyToMany 프로젝트를 진행하던 중 OneToMany에 관해 고민하게 되는 일이 있었고, 여러가지 글을 참고하기도 했습니다. 그 과정에서 겪었던 시행착오를 공유해볼까합니다. OneToMany 단방향이 안 좋다고요? 구글에 OneToMany 단점을 검색만 해봐도 많은 자료들이 나옵니다. 정리하자면 다음과 같습니다. 엔티티가 관리하는 외래 키가 다른 테이블에 있음 => 작업한 Entity가 아닌 다른 Entity에서 쿼리문이 나가는 경우가 있어 헷갈림 불필요한 쿼리문이 발생(update 등) (join table 문제도 있지만 이 글에서는..
소프트웨어 장인을 읽고 소프트웨어 장인을 읽고 우아한테크코스의 필독서 중 하나인 소프트웨어 장인을 읽게 되었습니다. 이 포스팅은 책의 내용을 머릿속에 재구성하여 정리한 것들입니다. 아래 내용들은 책의 내용을 요약한 것일 수도 있고, 단지 저의 생각을 적은 내용일 수도 있습니다. '소프트웨어 장인' 책이 전하고자하는 정확한 메시지가 궁금하다면 책을 직접 보시는 것을 권해드립니다. Agile과 소프트웨어 장인 애자일의 두 가지 포인트는 빠른 피드백과 민첩함이라고 생각합니다. 같은 말을 두 번 반복한 것 같지만 내포하고 있는 의미는 사뭇 다릅니다. 먼저 빠른 피드백은 말 그대로 빠르게 피드백을 받을 수 있다는 것입니다. 그리고 민첩함은 피드백 받은 내용을 민첩하게 적용한다는 것이죠. 전자는 애자일만으로도 가능해 보입니다. 하지만 민..
우아한테크코스 / 글쓰기 미션 / 우테코에서 찾은 나만의 효과적인 공부법 우하한테크코스에서는 코딩뿐만 아니라 글쓰기 미션도 함께 합니다. 이번에는 '우테코에서 찾은 나만의 학습법'이라는 주제로 미션이 주어졌는데 그 내용을 공유해보려고 합니다. 우테코에서 찾은 나만의 효과적인 공부법 학창 시절, 저는 과학실험실이 좋았습니다. 교실에서 배운 내용들은 어떻게 보면 가슴에 와닿지 않는 내용들이었습니다. 하지만 실험실에서는 배운 것을 실험해보며 직접 눈으로 과학 현상을 확인할 수 있었고, 덕분에 추상적인 것들이 구체화되면서 그제서야 수업시간에 배운 것들을 이해하곤 했습니다. 우아한테코코스(이하 우테코)에서의 시간은 학창시절 저의 모습을 떠올리게 해 주었습니다. 학교에서 경험해왔던 학습방식은 교육자가 가능한 한 세세하게 설명해주고 이해시키는 방식, 즉 교육자가 이해한 대로 학생들에게 주..
JPA 양방향 맵핑에서 주인이 정상적으로 동작하지 않는 이슈 🧐JPA 양방향 맵핑에서 주인이 정상적으로 동작하지 않는 이슈 jpa 공부를 하면서 양방향 맵핑을 간단하게 구현하고 테스트 해보았습니다. 👉👈양방향 맵핑 구현 Member.java @Getter @Setter @NoArgsConstructor(access = AccessLevel.PUBLIC) @Entity public class Member { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; private String name; @ManyToOne @JoinColumn(name = "team_id") private Team team; @Builder public Member(String name, Team team) { ..
Gradle / 진행중인 프로젝트에서 부분적으로 멀티 모듈로 바꾸기 👨‍👨‍👧‍👧 멀티 모듈? 멀티 모듈이란 개념은 한 프로젝트 안에 라이브러리처럼 사용 가능한 상태로 모듈들을 구성하고 그것들을 다른 모듈에서 가져다 쓸 수 있도록 만드는 것이라고 이해할 수 있습니다. 멀티 모듈을 구글에 검색하면 참고할 만한 문서들이 정말 많이 나옵니다. 멀티 모듈 프로젝트를 구성하는 방법 또한 친절하게 자세히 나와있어 쉽게 멀티 모듈 프로젝트를 구성할 수 있습니다. 멀티 모듈에 관한 참고 글 - Gradle 멀티 프로젝트 관리 - 멀티모듈 설계 이야기 with Spring, Gradle 진행중이던 프로젝트를 멀티 모듈로 바꾸기를 원하는 분들도 많을 것입니다 하지만, gradle이나 멀티 모듈에 익숙하지 않은 분들이라면 고민하게 만드는 문제일 수 있죠. 이번 포스팅에서는 진행 중이던 프로..