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