[t:/]$ 지식_

필요한 만큼만 짜기

2018/05/23

https://blog.naver.com/knix008/221280953687

링크 참조.

매우 어려운 문제이고 반드시 생각해 볼 문제다. "소프트웨어 장인"의 경지에 이르면 필요한 만큼을 통찰력으로 판단할 수 있다. 그리고 개별 근거도 제시할 수 있으나 이미 장인의 경지에 이르렀기에 이것을 일일이 명세하지는 않을 것이다. 그것도 비용이므로. 단, 팀내외의 공격과 질의에 대해 언제나 답변이 가능한 만반의 태세를 갖출 경지에 이르렀어야 한다. 자신이 장인의 경지에 이르렀다고 착각하는 단계에서는 큰 문제가 된다. 이거저거 빼도 문제 없을 것. 내 짬빱이 증명함. 그렇게 그렇게 작성된 코드에 테스트가 빠지고 어썰트가 빠지고 문제가 생긴다. 사실 나도 어썰트를 쓰지는 않는다. 하아.. -_-; 그래서 어느정도 숙련자가 됐다고 자기 판단이 섰을때는 보수적인 입장에서 테스트 커버리지를 올리는 쪽이 좋겠다. 중급 숙련자라면 어떨까. 오만가지 테스트 코드는 기본이고 자동화 테스트 툴이 생성한 거대한 테스트 커버리지의 숫자를 들고 의기양양할 것이다. 상세한 주석과 닥시젠 등을 위한 예쁜 포맷팅도 기본이다. 이것은 이것대로 문제가 된다. 검증되지 않은 자뻑 장인과 이제 막 모든 것을 짤 수 있게 된 중급 숙련자가 만나면 가장 어려운 상황이 된다. 저 꼰대 쥐뿔도 모르면서 구닥다리 철학으로 저품질 코드를 자뻑으로 짜고 있다 vs. 하.. 저렇게까지 할 필요는 없는데 저 오버헤드를 어찌할꼬. 의 충돌 정도가 될 것 같다.

얼마전에 간만에 커널의 mm 코드를 까봤다. 이 도사 놈들은 주석 한 줄도 없을 뿐더러 이 코드를 오랫동안 보아온 사람이 아니라면 변수명이나 함수명으로는 이게 뭐하는 놈인지 상상조차 할 수 없다. 레거시와 멀티 아키텍쳐 지원을 위해 헤더에 오만가지 컴파일 분기가 ....그만 쓰자.. 여튼, 커밋 라인을 보니 역시나 토발즈가 자주 눈에 띈다. 하아.. 장인들은 그래도 된다. 쪼렙들은 힘들지만 뭐 어쩌랴.









[t:/] is not "technology - root". dawnsea, rss