우아한테크코스에서 진짜 아무것도 안 한 것 같으면서도 너무 많은 것들을 한 느낌이 드네요. 생각보다 시간이 빨리 지나가 버렸어요 우아한테크코스에서 1주일이 진짜 세상에서 제일 빨리 지나가는 것 같네요 회고를 적기로 결심했던 것은 정말 당행인 것 같네요. 1주일을 어떻게 보냈는지도 되돌아볼 수도 있는 것 같고 이번 주에 했던 실수를 쭉 되돌아볼 수도 있고, 다음 주차를 더 깔끔하게 만들려면 무조건 써야될 것 같습니다 이번주에는 저번주 미션 리팩토링을 했고, 2단계 페어프로그래밍을 진행했습니다 자동차 페어프로그래밍 리팩토링을 진행하면서 나왔던 부분들입니다 1. 입출력 어디까지 테스트해야 하는가? https://be-student.tistory.com/43 java에서 입출력 어디까지 테스트 해야할까요? 글을..
우아한테크코스를 하면서 정말 많은 변화가 있었고 배우고 있습니다 실제 제출했던 소감문을 바탕으로 작성되었습니다 실제로 작성했던 코드는 여기에서 확인하실 수 있습니다 알게 되었던 점 1. 기능 목록은 진행 순서와 관계가 없다 2. 변경을 고려해서 추상화 해야 한다 3. 주석을 다는 작업이 생각보다 커다란 효용을 준다 4. 코드에 제약을 걸 수록 좋은 코드가 나온다 5. 모든 코드를 테스트 할 필요는 없다 1. 기능 목록은 진행 순서와 관계가 없다 1주차에는 진행 순서를 그대로 기능 목록으로 작성하려고 했었는데 그 순서대로 커밋을 하려니 진짜 너무너무 힘들고, 작성하기가 힘들었었던 경험이 있습니다 2주차 문제를 3번째로 새롭게 작성할 때 기능 목록과 진행 순서를 분리하고, 기능 목록을 작성하기 시작했는데 그..
이 글에는 문제에 대해서만 딱딱하게 적혀있습니다 개인 복습용 노트 느낌으로 작성한 것이기 때문에 큰 도움이 되지 않을 수도 있습니다 2주차를 통해서 얻을 수 있었던 것 1. 전체 프로그래밍 과정의 프로세스에 대한 정립 전체 흐름 작성 흐름 속에서 생길 수 있는 모든 개념 작성 개념들에 대해서 단위 테스트를 작성함 2. 추상화를 통한 테스트 가능한 코드들 출력같은 경우 바로 System.out.println을 통해 출력하게 된다면 이 부분을 테스트 하기 정말 어려움 중간에 객체가 하나 있고, 그 객체에 제대로 값이 전달되는 것만 확인한다면 그 자체로 충분할 수 있음 3. 중간 구현체를 두는 상황에서의 인터페이스의 유효성 중간 구현체는 당연하지만 실제 클래스가 되었을 경우 너무 강하게 결합되어서 추후 분리가..