전체 글

생각정리

[회고록] 1일 1커밋을 365 + 1일을 하고나서

velog에 작성했던걸 티스토리로 옮긴 글입니다! 원문 2021년은 방황했던 해였다. 개발자가 되고 싶어 소프트웨어 학과로 전과했으나, 학교 공부 말고도 무엇을 해야 할지 갈피를 잡지 못했고, 백엔드? 프론트엔드? 어렴풋이나마 이름만 알고 있었고 어떤 일을 하는지도 몰랐다. 그나마 아는 거라곤 남들보다 조금 잘하는 프로그래밍언어였는데 이마저도 해당 언어의 특성을 잘 알지도 못했고, 문법만 맞춰가며 쓰는 수준이었다. 동욱(향로)님을 유튜브 EO 채널에서 처음 보게 됐고, 향로 님의 개발자 인생썰과 1일 1커밋이라는 단어를 처음 알게 됐다. 공부하면서도 느끼지 못했던 신선한 충격을 받았다. 흔히 말하는 대기업들은 천재들이 상주하는 곳이라 생각해왔는데 그게 아니었다는 약간의 안심도 할 수 있었다. 1일 1커밋..

스터디/Spring Boot 스터디

[스터디] Spring Data JPA(6회차)

😁 배운 내용 Spring Data JPA에서 메소드 명명 규칙에 대해 좀 더 자세히 공부할 수 있었습니다. 또한 Controller에서 작성한 api에 대한 테스트를 작성하여 테스트 커버리지를 88%까지 증가시키며 확실한 테스트 코드를 통해 새로운 로직 작성이나 기존 로직에 대한 테스트 시 빠른 피드백을 받을 수 있어 편리함을 느꼈습니다. BDD 방식은 공부 중이라 적용해보지 못했습니다.🥲 ✏️ 미션 제출 미션 전체 코드는 다음 PR에서 살펴볼 수 있습니다. [이호석] DAY6 Spring Data JPA(완료) ✅ 상품 상세조회 구현하기 요청 URI: GET /api/products?id=1 ProductController id값을 받아와 서비스에게 해당 id값에 맞는 상품을 찾도록 합니다. Prod..

스터디/Spring Boot 스터디

[스터디] Spring Data JPA 세팅하기(5회차)

😁 배운 내용 데이터베이스의 개념적인 부분을 다시한번 복습하고, 이해할 수 있었습니다. 더불어 예상 꼬리질문들을 작성하고 답해보면서 왜? 라는 것을 다시 한번 생각해볼 수 있었습니다! 미션 코드는 다음 PR에서 확인할 수 있습니다. [이호석] DAY5 Spring Data JPA 세팅하기 PR ✏️ 미션 제출 ✅ 데이터베이스 면접 단골 질문 1. 데이터베이스의 특징에 관해 설명해주세요. ✏️ 데이터베이스의 정의 데이터베이스는 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합이다. 공유 데이터 : 데이터베이스는 특정 조직의 여러 사용자가 함께 소유하고 이용할 수 있어야 합니다. 통합 데이터 : 데이터베이스는 중복을 최소화하고 통제가 가능한 중복만 허용하는 데이터들의 ..

스터디/Spring Boot 스터디

[스터디] Controller, Service, Repository 구분하기(4회차)

😁 배운 내용 간단한 API이라고 생각했지만, 심화 내용들을 추가하면서 꽤 많이 고민했던 미션들이었습니다. 처음 사용해본 RestTemplate KRW -> USD를 변환하기 위해서는 현재 환율에 대한 정보가 필요했습니다. 따라서 외부 API를 호출해야 하는 상황이 있었고, Spring Framework는 해당 기능으로 RestTemplate을 제공해줍니다. exchange라는 도메인으로 분리해 별도의 외부 API를 호출하여 사용하면서 RestTemplate의 사용경험을 할 수 있었습니다. RestTemplate과 Connection Pool RestTemplate을 사용하기 위해 정보를 찾아보던 중 RestTemplate의 모든 요청마다 새로운 Connection을 생성합니다. JDBC에서 가장 많은 ..

스터디/Spring Boot 스터디

[스터디] 프로젝트 생성 및 test api 구성하기(3회차)

😁 배운 내용 ✔︎ Plain jar vs Executable jar 현재 프로젝트를 빌드하게 되면 2개의 jar파일이 생성된다. Plain jar는 현재 작성한 소스코드에 대한 클래스 및 리소스 파일만을 포함한다. 따라서 의존성을 포함시켰더라도 당장 사용하지 않으면 plain jar는 포함되지 않는다. 배포를 해야한다면 plain.jar를 배포하는일은 없도록 해야한다! ✔︎ Java의 jar 내용이 많아 별도로 포스팅 jar 파일이란? ✏️ 미션 제출 제출 코드는 PR에서도 확인할 수 있습니다. DAY3 Pull Request ✔︎ 빌드 이후 jar 파일 실행하기 빌드 이후 jar 파일 실행 http://localhost:8080 접속시 정상 접속 확인 ✔︎ api 생성하기 문자열 리턴 GET api ..

스터디/Spring Boot 스터디

[스터디] RESTful API, HTTP Protocol (2회차)

😁 배운 내용 RESTful API의 개념과 등장한 이유를 조금 이해할 수 있었습니다. 지금까지 개발 공부를 하면서 가장 효과적이었던 방법은 왜 해당 기술이 등장했는지 이해하고, 그 기술을 다시금 바라봤을 때 조금 더 친숙해지고 이해할 수 있었습니다. 사실 처음 RESTful API에 대해서 찾아봤을 때는 꽤 막막했습니다. 설명하는 글들 대부분이 추상적으로 다가왔고, RESTful한것과 not RESTful 한 것의 차이를 구분하기 어려웠습니다. 많은 아티클을 읽고, 여러 정보를 찾아보면서 내가 이해한 언어로 하나씩 풀어가면서 조금씩 이해할 수 있었던 것 같습니다. 아직 완벽하다고는 할 수 없지만, 해당 개념을 이해하는데 좋은 포문을 연 것 같습니다. HTTP 통신을 다시 찾아보면서 새로운 개념을 얻는 ..

HiiWee
HiiWee's Devlog