본문 바로가기

TIL : Today I learned (or Week)54

return TIL을_일단락하며_중간점검; 지금까지 23년 05월 15일을 기점으로 시작된 국비지원교육이 끝났다. 잠시 돌아보며 얻은 것, 느낀 점, 이후 방향 등에 대해 점검해보려 한다. 얻은 것 1. 팀 프로젝트 현실편 팀 프로젝트를 조금이라도 해봤다면 이상과 현실에 대해 깨닫게 될 것이다. 숱한 기업들에서 왜 개발직무에서의 협업의 중요성을 강조하는 지 여실히 깨달았다. 그냥 혼자해버리면 진작에 끝났을 과제들을 굳이 굳이 팀플로 하게 되는 이유들. 2. 앞으로 어떻게 공부를 해야할 지 판단할 수 있는 최소한의 지식 이제 어떻게 공부를 이어나가야할 지 감이 온다. 스프링 프레임워크를 활용해 개인/팀 프로젝트를 완료했다지만 이것만으로 이윤을 창출해야하는 기업에서 일을 할 수 있을까? 자문해봤다. 아무리 생각해도 'No'라는 대답 밖에 안 나온다... 2023. 9. 26.
WIL 230903 : 처음엔 낯설고 낯선게 어렵다. (+Redis도) FACTS 이번 일주일 동안 있었던 일, 내가 한 일 : 테스트 코드를 붙잡다가 단위테스트코드에서 우선 일단락했다. Redis 서버를 적용하는 방법을 계속해서 도전해보고 싶었고, 드디어 여러가지 파편된 정보들을 잘 분류하고 재조합해서 나만의 방식으로 습득했다. FEELINGS 나의 감정적인 반응, 느낌 : 처음이라 낯설지만 한번 날 잡아서 정면돌파해보고 싶었던 개념들이 계속해서 있었는데, 이번에도 S3서버, 테스트코드에 이어서 Redis에 도전해본 것인데, 역시나 처음엔 어렵지 않지만 낯선것들 투성이고, 결국엔 낯선게 나에게 어렵게 다가왔다. FINDINGS 그 상황으로부터 내가 배운 것, 얻은 것 : 이제 슬슬 정해진 명확한 정답이 있는 코드들보다는 오답만이 명확한 범위로 들어가고 있다고 느꼈다. 이번.. 2023. 9. 4.
TIL 230831 : 코딩테스트하며 쓰인 Map, Set 문법들 lv.1 로 올라가며 슬슬 Hash와 Set을 이용한 문제들이 등장한다. 이어서 정리해두고 이후로도 계속 수정 등록 해두려 한다. HashMap entrySet : 키-값을 entry에 담아서 전부 가져오기 keySet : 키값들만 가져올 때 values(); : value만 가져오고 싶을 때 LinkedHashMap() : 순서를 보장하는 hashmap을 생성한다. SET void add(); boolean contains(); String.hashCode(); "a".hashCode(); // 97 2023. 9. 1.
TIL 230828 : 테스트코드 3 - Mockito (의존성 있는 Bean객체가 넘나드는 패키지 테스트 실습) 이제 실전이다. Bean객체가 여기저기 넘나들며 주입된 스프링 프로젝트를 실습해보려 한다. +물론 스프링의 동작과정을 뜯어보기 위한 공부도 있지만, 계속 미뤄두고 있고 언젠간.. 돌파해본다. 우선 UserService 적용 Controller 테스트는 뭔가 머리아프다. 일단 Service로 간다. 그 중에서 User회원가입을 테스트 해본다. 문제 : Given - When - Then 작성하다보니.. 생각해보니 signup 메소드는 void 리턴하는 메소드이다. 무슨 값으로 검증을 하지? 회원이 가입되었는지 조회를 해야하나? 그건 Repository 를 조회해야하는 건데 Service단위만 테스트 하고 싶은데. 가짜 객체의 필요성 UserService를 생성하려고 하니, 기존 클래스에서는 주입받아왔던 것.. 2023. 8. 28.
WIL 230827 : 테스트 코드 정면돌파 FACTS 이번 일주일 동안 있었던 일, 내가 한 일 : 우선 S3서버 적용하는 법을 직접 클리어했다. 계속 미뤄왔다가 도전해봤는데 습득이 된듯해서 뿌듯하다. 이와 비슷하게 계속 외면해왔던, 이제는 정면돌파의 필요성을 느낀 '테스트 코드'. 튜터님의 코멘트와 함께 머릿속에 어지럽혀진 정보들을 정리해가며 하나하나 체화시키고 있다. FEELINGS 나의 감정적인 반응, 느낌 : 직접 기본부터 코드를 가지고 놀아보는 경험은 체화에 가장 좋은 방법이 아닌가 싶다. 실제로 동작하고 오류가 나지 않음을 확인해야 머릿속에 확실히 각인된다. FINDINGS 그 상황으로부터 내가 배운 것, 얻은 것 : 적절한 순간에 정면돌파를 하는 것. 진행을 위해 정면돌파를 미뤄두는 것. 이 사이의 균형을 잡아가며 성취를 얻는 법을 .. 2023. 8. 28.
TIL 230825 : 테스트 코드 2 - 의존성 없는 패키지 테스트 실습 +테스트 환경에서 Slf4j 사용 세팅 testCompileOnly 'org.projectlombok:lombok' testAnnotationProcessor 'org.projectlombok:lombok' +@SpringBootTest 없어도 동작한다. : 종종 단위테스트 할 때에도 추가되어있던데 뭔지 모르겠다. +지난 시간 실습 (기본 어노테이션, 생명주기, 반복 등) 패키지 가져와서 테스트 실습 테스트 예제 국룰, 계산기 클래스를 간단히 추가해줬다. 의존성이 없는 클래스인 계산기를 테스트해보는 단계. 셋업 메소드로 외부 패키지의 객체 생성하기 매 메소드 실행전 새로운 객체를 생성받게 된다. 궁금하니까 참조값도 같이 보려고 한다. Assertions로 결과 예측해보기 +JUnit5부터 Assert가 .. 2023. 8. 28.