본문 바로가기

Develop

[리팩토링] 제1장 맛보기 예제 리팩토링 제 1장 맛보기 예제 설계가 조잡한 시스템은 어디를 수정해야 하는지 찾기 힘들어 수정도 어렵다. 수정할 위치를 찾기 힘들면 개발자가 실수할 가능성이 높아져서 버그가 생긴다. 코드를 복사해서 붙이게 되면 나중에 그 코드를 수정할 때마다 계속 같은 부분을 복사해서 붙여야 하기 때문에 아주 번거롭고 에러가 생길 수도 있다. 사용 기간이 길고 추후 수정해야 할 가능성이 있는 프로그램은 복사해서 붙이는 과정에서 큰 문제가 생길 수 있다. 그래서 매번 코드를 복사해서 붙일 필요가 없게 프로그램을 개선해야 한다. 프로그램이 당장은 문제가 없을지 몰라도 나중엔 사용자가 요구한 기능을 수정하기 힘들어서 애먹을 것이다. 이 상황이 리팩토링해야 할 시점이다. 프로그램에 기능을 추가해야 하는데 코드 구조가 조잡해서 ..
프로그래밍 면접 이렇게 준비한다 프로그래밍 면접 이렇게 준비한다 구직을 시작하기 전에 구직을 하기 전에, 스스로가 어떠한 업무를 원하는지 제발 파악해봐라. 지원하고자 하는 업무와 지원한 업무가 불일치하면 합격하기 어려운 건 당연하다. 어떤 스타일의 개발자인지 점검해볼 수 있는 질문 목록 나는 시스템 프로그래머일까, 애플리케이션 개발자일까? 나는 사용자 인터페이스 코딩을 좋아하는가? 나는 디버깅에 능숙한가? 나는 테스팅을 좋아하는가? 나는 아키텍트인가, 코더인가? 프로그래밍 외 질문 목록 나는 관리업무에 흥미를 느끼고 있을까? 대기업에서 일하는 편이 더 나을까, 중소기업에서 일하는 편이 더 나을까? 오픈 소스 프로젝트를 좋아하는가? 장기 프로젝트를 선호하는가, 단기 프로젝트를 선호하는가? 스스로에게 질문하고 답하면서 개발자로서의 정체성을..