17년 Google 개발자들이 참여한 논문인 Detecting Argument Selection Defects에 따르면, 5개 이상 인자(argument)을 받을때 개발시 생기는 오류가 급속도로 늘어남을 확인했다고 한다.
By analyzing the defects found, we are able to quantify best practice advice for API design and show that the probability of an argument selection defect increases markedly when methods have more than five arguments.
5개 이상 인자가 아닐때도 개발 중 오류를 낼 수 있음을 google내부 프로젝트들에 대해 분석하면서 알게되었는데 아래가 그 예이다.
class JanitorFn {
static Value configure(String fileUser , . . . ) { . . . }
}
public class KeywordSink {
private String fileUser;
public Value write(String stageName , . . . )
{ ...
return JanitorFn.configure(stageName , . . . );
}
}
JanitorFn class는 configure method호출시 첫번째 인자가 fileUser이여야하는데 개발자가 잘못 적은 것이다. 이는 argument selection defects(인자 선택 오류) 중 하나이다. 상기와 같은 인자 선택 오류는 실제 구글내부 프로젝트에서 84건의 실제 사례를 확인 할 수 있었다.
논문에서는 파라미터의 인자 개수와 오류 발생수치간의 관계를 파악하기 위해 실험을 했고, Figure 11과 같이 인자가 5개 이상일때 급속도로 오류 발생률이 증가됨을 확인 할 수 있다.
< 출처 >
반응형
'개발이야기' 카테고리의 다른 글
shell script - apache access log에서 접근 url top 10 추출하기 (0) | 2019.08.30 |
---|---|
Intellij에서 줄바꿈 간격 화면에 맞게 custom 조정하기 꿀팁 (379) | 2019.08.08 |
결혼식 청첩장 Github blog로 세련되게 만들기. 후기! (380) | 2019.06.04 |
특정 문자가 들어간 line만 뽑아내는 정규식 (405) | 2019.04.01 |
Back-end 개발자라면 답변가능한 Questions (258) | 2019.02.11 |
지난 2년(17, 18년) 동안의 개발 블로그 운영 회고 (372) | 2018.12.04 |