분류 전체보기
(41)
TDD의 장점은 무엇일까?
한참 TDD를 공부할 때 A가 물었다. A: TDD가 뭐에요? 왜 써야 하죠? 나: TDD는 테스트 코드를 먼저 작성하고 프로덕션 코드를 작성하는…. (중략) 설계 기법이고요. ~~한 장점이 있습니다. A: 어? 그거 테스트 코드 작성했을 때의 장점 아니에요? 먼저 프로덕션 코드 작성하고 테스트 코드 작성하면 되지 않아요? 저는 테스트 코드 작성은 필수지만, TDD는 안 해도 된다고 생각해요. '어 그러네..? 분명 TDD만의 장점이 있는데….' 나는 할 말을 잃었다. 왜 쓰는 걸까? 그 당시 나는 TDD의 장점을 이렇게 말했다. 피드백이 빠르다. 변화에 대한 두려움을 줄여준다. (리팩토링이 편하다) TDD를 하면 코드 복잡도가 떨어진다. 디버깅 시간을 줄여준다. 동작하는 문서 역할을 한다..
Test
2019. 12. 28. 19:28
자바 리플렉션이란?
작년 이맘때 궁금하지만 어려워서 넘어갔던 기술들이 있었습니다. 대표적으로 엘라스틱 서치와 리플렉션이 있었는데 최근에 하나씩 공부하면서 지난번과 달리 비교적 쉽게 체득할 수 있었는데요. 그 이유는 학습 방법의 변화 덕분입니다. 작년에 리플렉션을 공부할 때는 무작정 개념과 사용방법만 익히려고 했는데 이번에는 Why 에 초점을 맞춰서 공부했더니 더 쉽게 이해하고 활용을 잘할 수 있게 되었습니다. '이 기술은 왜 나왔을까? 왜 사용할까?' 를 이해하는 것은 중요합니다. 그래서 작년의 저와 같은 사람에게 도움이 되었으면 해서 리플렉션이 무엇인지 정리를 해보기로 했습니다. 리플렉션의 사용방법은 다루지 않습니다. 사용 방법은 아래 링크를 추천합니다 https://www.baeldung.com/java-reflecti..
Java
2019. 12. 28. 19:06
우아한테크코스 레벨2 회고
우아한테크코스 레벨2(7~8월)가 끝났다. 기념으로 회고를 작성하기로 했다. 지난 두 달간 배운 것들 레벨1 때는 자바, 클린코드, TDD, 페어프로그래밍을 위주로 배웠다면, 레벨2에서는 스프링을 위주로JPA, 배포, AJAX를5주간 배운 뒤에3주간 미니 프로젝트를 했다. 스프링은 개발하면서 조금씩 깊이 익히는 목적으로 스프링부트로 진행했다. 간단한 미션을 주고 원하는 사람에 한해서 추가 미션이 있었다. 사실 스프링을 조금 알고 있었는데도 막상 해보니 아주 간단하지도 않았다. 특히 이번에 처음으로 ControllerAdvice, Interceptor, ArgumentResolvor도 처음 사용하면서 많이 배울 수 있었다. JPA는 매커니즘과 관계매핑을 배웠다. 배포는 EC2에 올리고 쉘스크립트를 작성했다..
우아한테크코스
2019. 12. 28. 18:53

