fas

ALL

문제 상황현재 나의 개발 환경은 집에서는 macOS를 활용하고 일할 때는 window인 상황이다.IDE를 활용한 개발은 편하게 진행할 수 있지만, 터미널을 사용하거나 cli 환경에서 개발환경을 통합하기 위해 여러 가지 시도를 했다.mac과 window에서 동일한 터미널 환경을 유지하기개발환경 세팅을 최대한 유지하기 터미널 환경 통합하기첫 번째로 터미널 환경은 감사하게도 warp 를 윈도우에서 사용할 수 있게 되면서 해결이 됐다.windows에서는 pwsh를 사용하고 mac에서는 zsh를 사용하기에각각의 설정을 두 번씩 해줘야 하는 번거로움이 있었으나 warp로 한번 래핑 하여 사용함으로써,base path를 환경변수로 관리하고 .ps1과 .zshrc 파일만 관리한다면,윈도우 환경과 맥 환경에서 사용하는 ..
· LIFE/회고
[기술 공부]- JPA의 사실과 오해 2월 간에는 2주 동안 매주 토요일 JPA 사실과 오해 강의를 들으러 갔다.그동안 Spring Data JPA를 사용함에 있어서 고민하고 있던 부분들, 그리고 새로운 시각에 대해서 깨닫고 배울 수 있는 좋은 기회였다.금액이 적지는 않지만, 누군가의 큰 고민이 담긴 결정체라고 생각한다면 충분히 납득할 만한 금액이다. [개인 프로젝트]계속 시도하고 있는 개인 프로젝트가 있는데, 3월에는 잠시 중지했으나,2월 달에는 정말 열심히 고민했다.정형화 되지 않고 공통점이 적은 것을 추상화하려니 많은 어려움이 있었고, 아직도 고민 중인 상태이다. 그러나 다양한 케이스들을 접하며 조금씩은 실마리가 보이는데, 얼른 불안한 이 시기가 지나고 다시 몰입하고 싶다. [회고법에 대한 고민]항..
· LIFE/회고
⌨️ 2024년 회고인데 거의 한 달이 지나서 해야 하나 말아야 하나할 땐 일단 하자.2024년을 돌아보고 2025년 목표를 세울 건데.. 돌아보기는 하는 데 뭔가 처참하다1. 20241.1. 월 별 활동1월 - 취업 준비2월 - 취업 준비3월 - 취업 준비4월 - 입사5월 - 회사 적응 / 밀린 공부(취업 준비에 밀려 못한 것들)6월 - 이산 수학7월 - 신규 프로젝트 진행8월 - 신규 프로젝트 진행9월 -??10월 - WebSocket / STOMP11월 - 코드잇 스프린트 백엔드 도움..? 서포터..? 참가 (1)12월 - 코드잇 스프린트 백엔드 도움..? 서포터..? 참가 (2) / go lang + gRPC1.2. 뭔가 뭔 가인 1년돌이켜 보면 한 거는 많은 뭔가 기억에 확 남질 않는다.여기저기..
· LIFE/공부
⌨️ 인프런 워밍업 클럽 2기 미션 Day-18이번 미션은 @Mock, @MockBean, @Spy, @SpyBean @InjectMock의 차이점과 주어진 테스트 상황의 구조를 수정하는 미션 두 가지이다. 먼저 Test Double에 대해서 정리를 하도록 하겠다.1. @Mock, @MockBean, @Spy, @SpyBean, @InjectMock의 차이1.1 Test Double과 각 Annotation의 차이https://www.martinfowler.com/bliki/TestDouble.html bliki: Test DoubleTest Double is generic term for fakes, mocks, stubs, dummies and spies.martinfowler.com 마틴 파울러의 ..
· LIFE/공부
⌨️ 인프런 워밍업 클럽 2기 미션 Day-15이번 미션은 Layerd Architecture의 각 레이어별로 어떤 특징이 있고, 어떻게 테스트하면 좋을지 나만의 언어로 정리하는 것이다.1. 레이어 별 특징레이어를 3단계 혹은 4단계로 나누는데 나는 3단계로 나누어서 작성토록 하겠다.1.1 Persistence Layer✅ Data Access의 역할✅ 비즈니스 가공 로직이 포함되어서는 안 된다. Data에 대한 CRUD에만 집중한 레이어 DB의 연결만을 위한 Layer라고 생각한다. 간혹 비즈니스 레이어 (서비스 레이어)에 DB의 연결과 쿼리까지 있는 경우가 있는데,유지 보수하기도 힘들었던 기억이 있다. 크게는 두 분류의 프레임워크를 사용하는데 ORM과 SQL Mapper다.간혹 ORM이 SQL Map..
· LIFE/공부
⌨️ 인프런 워밍업 클럽 2기 미션 Day-4인프런 박우빈님의 백엔드 과정 진행 중 미션을 작성해야 하는데 마땅한 곳이 없어 끄적끄적인다.1. 리팩토링 public boolean validateOrder(Order order) { if (order.getItems().size() == 0) { log.info("주문 항목이 없습니다."); return false; } else { if (order.getTotalPrice() > 0) { if (!order.hasCustomerInfo()) { log.info("사용자 정보가 없습니다."); return false; ..
· DEV/How to
⌨️ 사고법을 중요시 생각하는 이유?이는 이 강의를 내신 배경과 관련이 있을까? 혼자 만의 뇌피셜이지만,강사께서는 AI로 인해 대체 가능한 역량과 대체 불가능한 역량을 나름의 기준으로 나누었는데그중에서 사고 즉 판단과 통찰 등 정량적인 지표로는 함부로 평가할 수 없는 것들을 중요하게 생각하는 것 같다✅ 고민의 흔적이 느껴지는 강의모든 강의가 당연 고민의 흔적이 느껴지지만, 이 강의에서는 나는 지식공유자가 학습자를 위해 고민한 것과그 이상의 것이 느껴져서 굉장히 긍정적인 경험이었다. 강의의 개요를 보면 강의를 통해 얻을 수 있는 것이 읽기 좋은 코드를 작성하는 사고방식코드 레벨에서 맛보는 객체 지향 패러다임엉망인 코드를 더 나은 코드로 리팩토링하는 경험머릿속에 남는 키워드 정리정도로 요약하고 있다. 그에 ..
· DEV/How to
⌨️ 개인의 편리를 위해 규약을 느슨하게 해선 안된다결론부터 말하자면 살짝 느슨해진 것 같다.일을 하다 보니 어느새 귀찮은 것들에 대해 피하고 싶어 졌고, 그것이 곧 옳지 못한 구현으로 이어지기도 했다.이 글은 그런 날을 돌이키며 기억해 두고 채찍질하기 위함이다.  🤔 쿼리스트링이 긴게 문제일까? 동료가 다른 일을 하는 동안 나는 작업하기 편하게 프론트를 조금 만져주는 걸로 일을 나누었다.프론트에서 `Get` 요청을 보낼 때 쿼리스트링으로 만들어 주길 요청했으나. 나는 쿼리스트링이 너무 길어져서 불편해서 그런데 `Post`로 RequestBody에 담아도 될까요?라고 했다. 이런저런 이야기가 오고 갔지만, 결과적으론 쿼리스트링이 길어서 불편하다는 내 의견은 그냥개인의 불편함을 호소하는 것뿐 합당한 이유..
· DEV/WAU
⌨️ 유연한 사고?유연하게 사고하는 것은 생각보다 문제 해결에 있어서 중요하다고 생각합니다.생각보다 사고는 더욱 경직되어 있어서 유연한가? 싶어도 돌아보면 딱딱한 상태더군요.  🤔 불필요한 데이터를 삭제하는 일요구사항을 구현하기 위해 만든 기능에서, 불필요한 데이터가 남는 상황을 발견했습니다.이 외에도 간간히 이런 것들에 대해 고민을 한 적이 있습니다. 예를 들어 이미 올라온 파일(이미지나 동영상) 등의 참조가 변경되어 더 이상 사용하지 않는 자료가 되어 버린다든지 어찌 됐든 나의 저장소로 차지하는 것에 있어서 해결을 하고 싶었던 적이 있었습니다.  ✅ 지연 처리가 나쁜 건 아니잖아?제가 꽤 자주 하는 실수 중 하나가 바로 '즉각성'에 너무 과몰입하는 것입니다. 즉각적으로 요청과 응답이 주고받아지고 그..
ckaanf
'분류 전체보기' 카테고리의 글 목록