반응형

세션/항해플러스 14

WIL 2주차 회고

문제이번 주차를 지나며 겪었던 문제가 무엇이었나요?-> 이번 주차에서 제일 힘들었던 것은 클린 아키텍처를 적용해보는 것이었습니다.시도문제를 해결하기 위해 어떤 시도를 하셨나요?-> 인프라 레이어가 도메인 레이어를 바라보도록 DIP를 적용시켰습니다.해결문제를 어떻게 해결하셨나요?-> 먼저 패키지 구조를 3개로 나누었습니다. 이렇게 나눈 이유는 Domain Layer를 중심으로 레이어 계층간의 간섭이 이뤄줘야 클린 아키텍처가 적용이 되기 때문입니다. 또한 계층간에 간섭이 일어나지 않도록 Presentation 레이어와 Domain 레이어에 각각 DTO를 만들어서 하위모듈이 상위모듈을 참조하지 않게 만들었습니다.  LectureServicepackage com.hhplus.clean.lecture.domain..

WIL 1주차 회고

문제이번 주차를 지나며 겪었던 문제가 무엇이었나요?첫번째는 TDD로 개발을 하는 것이었습니다. TDD에 익숙하지 않다 보니 TDD로 개발하는 것이 어려웠습니다. 특히 bottom-up 방식에 익숙했던 제가 top-down 방식으로 개발을 하려고 하니 시간이 더 오래걸렸습니다.두번째는 단일 서버에서의 동시성 이슈를 해결하기 위해서 어떤 방법을 쓸지에 대한 고민이었습니다.시도문제를 해결하기 위해 어떤 시도를 하셨나요?문제를 해결하기 위해 먼저 synchronized 키워드를 사용하였습니다. 동시성 이슈가 발생하는 메서드에 synchronized 키워드를 사용하여 메서드 전체에 lock을 건다면 다른 스레드에서 접근을 하지 못해 순차적으로 로직을 수행하게 됩니다. 다만, 블록 전체에 lock을 사용하기 때문에..

99클럽 코테 스터디 28일차 TIL, 그리디(Iterator for Combination)

1. 문제 정의2. 문제 접근할 수 있는 만큼 flip을 시켜주면 되므로 greedy를 이용한다.3. 문제 풀이처음 '0'부터 비교 문자를 시작한다.인덱스가 0부터 이전 문자와 비교하여 다르면 count를 1 증가시킨다.count를 리턴한다.4. 코드class Solution { public int minFlips(String target) { char[] array = target.toCharArray(); int count = 0; char prev = '0'; for(int i = 0; i  5. 회고만약 10101 이 우리가 원하는 문자열이라고 생각해보자. 우리는 00000 부터 시작하므로000001111111000010..

시작하는 마음

항해 플러스 참여 계기저는 5년차 백엔드 개발자입니다. 주로 SI 사업 위주로 프로젝트를 진행하여서, 깊이 있는 지식 습득이 어려웠다고 스스로 생각을 많이 하였습니다. 그러던 중 우연히 항해 플러스 광고를 보게 되었고, 이 시간을 통해 개발자로서 깊은 성장을 할 수 있을 것 같다는 생각이 들었습니다. 벼는 익을수록 고개를 숙인다고 합니다. 이 시간을 통해서 좀 더 유연하며 깊은 뿌리를 가진 개발자로 성장하는 계기가 되도록 노력하겠습니다.향후 5년 뒤 커리어 방향성5년 뒤에는 백엔드 개발자를 넘어 백엔드 엔지니어로 성장해 있지 않을까 생각합니다. 엔지니어란 어떤 문제를 발견했을 때 해결할 수 있는 능력을 기본 소양으로 갖추고 있어야 할 것입니다. 많은 경험을 통해 경험의 폭을 넓히고, 어쩔때는 신입 개발자..

반응형