일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 반복문
- 2차원 리스트
- JDK 8
- 파이썬
- 코드업
- CodeUP
- java
- 리팩터링
- 버튼 이벤트
- 점심
- 안드로이드
- 27G2
- 예제
- JavaScript
- 에러
- 자바스크립트
- 안스
- 맛집
- 방법
- Android Studio
- python
- 자바
- 출력
- 설정
- 설치
- 시작
- r
- spring boot
- 변경
- 안드로이드 스튜디오
- Today
- Total
목록소프트웨어 개발론 (2)
기루 기룩 기록
리팩터링 시 주의사항 1. 기능 추가를 목적으로 소스를 수정하는 것과 리팩터링을 위해 소스를 수정할 때 서로의 영역을 침범해서는 안된다. 2. 기능 추가시는 기존의 코드를 건들지 않아야 하고 리팩터링 시에는 기능 추가를 하지 않는다 다짐하고 해야 한다. 3. 리팩터링 시 테스트 케이스또한 새로 만들거나 수정하지 않고 진행해야 한다.(부득이한 경우 제외) 리팩터링시 장점 1. 소프트웨어의 설계가 좋아진다. 2. 소프트웨어를 이해하기 쉬워진다. 3. 버그를 찾을 수 있다. 4. 프로그래밍 속도를 높일 수 있다. 리팩터링 시점 1. 기이한 이름 코드는 단순하고 명료하게 작성해야 한다. 코드를 명료하게 표현하는 데 가장 중요한 요소는 "이름"이다. 프로그래머가 가장 힘들어하는 일이 이름 짓기일 만큼 변수 이름,..
리팩터링을 왜 해야 하는가? 기존에 코드가 있다. 이 코드는 하나의 함수로 이루어진 코드이며 수정이 일어나면 해당 함수를 수정해야만 하는 구조다. 이 함수를 수정했을 때 테스트해야 하는 영역이 세 곳이 있다고 할 때 요청사항으로 인해 수정이 빈번하게 일어난다면 기존 함수와 변경된 부분을 수정하고 테스트해야 하는 입장에서는 죽을 맛일 것이다. 만약 요구사항이 1~2개씩 들어오는 상황이라는 이상적인 경우라면 시간이 들더라도 할 수 있겠지만 실제로 요구사항은 1~2개가 아닌 n개가 들어온다. 이 n개의 요구사항을 다 테스트하고 수정한다면 소모되는 시간은 기하급수적으로 늘어날 것이다. 리팩터링이 필요한 이유가 바로 앞에 말한 상황이 있기 때문이다. 잘 작동하고 변경할 일이 없는 코드도 언젠가는 변경할 일이 생길..