본문 바로가기
728x90

하루일기11

전역변수 테스트가 문제다 Enum 사용시 static 메소드를 사용하게 된다 내부에 필드를 지정해주고 바꾸게 되는데 그렇게 되면 테스트 전체에 영향을 끼친다 어떻게 하면 좋을까... 2020. 6. 16.
쓸데 있는 것만 공부하자 당장 쓸거 아니면 공부해도 다 까먹는 심지어 어디에 적어놔도 어디에 적었는지 까먹는다 당장 사용할 것만 공부해놓으면 앞으로 계속 반복적으로 사용할건데 왜 쓰지도 않을 것을 그렇게 공부해놓고 나중에 까먹고 다시 돌아가서 시간낭비 하는가 시간이 금이다. 쓸 것만 하자 알고리즘은 간단히 알고리즘 풀 때는 최대한 받아온 값들을 사용하여 코드를 최소화하려고 해야겠다. for (int i = 0; i < m; i++) { int x = sc.nextInt(); broken[x] = true; }바로 값을 받아서 검증하는 과정을 넣어서 최대한 코드를 생략 그리고 전체 플로우를 함수의 input과 output을 사용해서 대략적인 그림을 그리고 개별적인 함수들을 구현하는 방식으로 가는 게 좋겠다. 하나에 집중하다보면 전.. 2020. 6. 15.
immutable 객체로만 연습해 봐야겠다 어제 문자열 덧셈 계산기 미션을 수행하면서 마지막에 if문 분기가 너무 많아졌다는 것을 느꼈다 물론 주어진 테스트 코드가 조건들을 테스트하는 것이였지만 같은 코드가 반복되는 것이 좋지 않은 것은 사실이다. 요즘 같은 미션을 하는 분들의 다른 코드를 보곤 하는데 공통적으로 많이 하셨던 것이 불변객체를 사용하는 것이었다. 사실 불변 객체에 대해 듣기만 들었지 실제로 와 닿지는 않았다. 평소에 회사에서 사용할 일이 있었다면 쓰겠는데 그러지 못하니 필요성은 당연히 느껴지지 않았겠지...심지어 불변 객체와 방어적 복사가 비슷한 것인지 알았다. TDD로 정리하는 것도 괜찮겠다 알고리즘과 TDD 평소 알고리즘에 대한 뭐랄까.. 항상 우선순위가 밀렸던 것 같다. 사실 시간을 많이 잡아 먹기에 시간대비 효율이 안나오는 .. 2020. 6. 10.
또 밤샜다 또 밤샜다 어제는 일찍 잘 줄 알았는데, 자동차 경주게임에서 마지막에 설계 부분이 발목을 잡았다. 사실 설계가 아니라 Random 객체를 생성하고 nextInt() 메소드를 사용할 때, Random(9) 이런 식으로 넣어놓고 잘됬다고 혼자 좋아하고 있었더라ㅎㅎ.... 필드에 대한 테스트를 작성은 했는데 2시 넘어가니까 자야된다는 생각에 테스트고 뭐고 막 했던 것 같다. 역시 캔트백 옹의 말은 진리인 것 같다. 조급함은 테스트와 반비례한다 사실 이렇게 이야기한 것은 아니지만 맥락상 비슷하다고 생각한다. 역시 조급하면 TDD가 안돼. 그대로 어느정도는 감이 왔으니까 로또 1단계를 조금 러프하게 가져가고 점점 정교하게 가다듬는 방향으로 가야겠다. 이것이 TDD의 묘미 아니겠는가 블로그 UI 개편 개편이라기엔 .. 2020. 6. 9.
TDD 참 어려운데 신기하다 한 2주 정도 TDD를 익힌다고 잠을 못잔 것 같다 엊그제 자바지기님께서 해주신 온라인 번개(?) 형식의 강의 덕분에 감이 많이 잡힌 것 같다. Todo 리스트를 작성하는 것이 뭔지 감이 안잡혔는데 진짜 말그대로 README에 해야 될 일을 적으시더라 "감도 찔러봐야 아냐"고 하던데 난 찔러 봐야 알겠더라... 테스트 주도 개발도 이제 한 50장 정도 남았다. 오늘은 제일 마지막 장의 실전 TDD를 구현해 보고 자려고 하는데 잠을 잘 수 있으련가 모르겠다ㅎㅎ 2주 동안 못했던 레이싱 게임도 한 열몇번 갈아 엎으니 이제는 in -> out 방식으로 어느정도 할 수 있게 되었다. 이제 하루에 미션 하나씩 한다는 마음으로 따라 잡아야겠다 짝 코딩을 하고 싶은데 단체 메세지에 말하기가 좀 그렇다는 생각이 문득 .. 2020. 6. 8.
728x90