CWN(CHANGE WITH NEWS) - [독점] 코드 작업 생산성 저하, 오해와 진실 파헤쳐보기

  • 구름많음고산15.6℃
  • 맑음정선군3.4℃
  • 맑음대관령5.0℃
  • 맑음청주10.3℃
  • 맑음의성3.6℃
  • 맑음양평6.9℃
  • 구름많음양산시9.3℃
  • 맑음세종9.2℃
  • 맑음백령도10.3℃
  • 맑음춘천3.8℃
  • 맑음영주3.4℃
  • 맑음동두천7.1℃
  • 맑음안동6.6℃
  • 맑음이천8.9℃
  • 맑음추풍령7.4℃
  • 구름많음북부산9.5℃
  • 구름조금고흥7.8℃
  • 맑음흑산도12.8℃
  • 맑음여수12.5℃
  • 구름조금포항10.1℃
  • 맑음홍천5.0℃
  • 구름조금경주시6.7℃
  • 맑음목포12.7℃
  • 맑음수원8.0℃
  • 맑음인천10.7℃
  • 맑음임실6.5℃
  • 맑음거창4.8℃
  • 맑음광주11.1℃
  • 맑음문경8.4℃
  • 맑음파주6.5℃
  • 구름많음부산13.9℃
  • 구름많음김해시12.2℃
  • 맑음울릉도13.3℃
  • 맑음함양군5.3℃
  • 맑음상주10.6℃
  • 맑음영덕8.1℃
  • 맑음해남8.2℃
  • 맑음장흥6.0℃
  • 맑음서울10.2℃
  • 맑음서산6.4℃
  • 구름조금밀양7.1℃
  • 맑음태백4.2℃
  • 맑음구미7.5℃
  • 맑음고창7.7℃
  • 구름많음창원12.0℃
  • 맑음북강릉11.4℃
  • 맑음광양시10.8℃
  • 맑음고창군8.3℃
  • 맑음홍성9.3℃
  • 맑음영천5.6℃
  • 맑음보성군8.5℃
  • 맑음장수4.0℃
  • 맑음대구8.2℃
  • 구름많음서귀포15.4℃
  • 맑음천안6.0℃
  • 맑음강릉11.3℃
  • 맑음완도12.9℃
  • 맑음강진군8.6℃
  • 맑음보은4.3℃
  • 맑음진주7.2℃
  • 구름많음성산11.3℃
  • 맑음산청6.8℃
  • 맑음부안10.3℃
  • 맑음정읍8.5℃
  • 맑음의령군5.6℃
  • 맑음금산7.5℃
  • 맑음동해9.2℃
  • 맑음청송군2.7℃
  • 맑음인제4.2℃
  • 맑음영월5.9℃
  • 맑음전주9.8℃
  • 구름많음울산10.9℃
  • 맑음부여6.8℃
  • 맑음영광군8.6℃
  • 구름조금통영14.1℃
  • 맑음진도군8.8℃
  • 맑음순천4.5℃
  • 맑음보령7.0℃
  • 구름조금철원6.6℃
  • 맑음북춘천3.1℃
  • 맑음속초11.1℃
  • 맑음서청주5.5℃
  • 맑음울진7.6℃
  • 구름많음제주14.9℃
  • 맑음봉화0.7℃
  • 구름조금강화7.7℃
  • 맑음합천7.5℃
  • 맑음군산9.4℃
  • 맑음원주9.9℃
  • 맑음대전10.4℃
  • 구름많음거제12.9℃
  • 맑음남원7.4℃
  • 맑음제천3.1℃
  • 맑음남해9.8℃
  • 맑음순창군6.6℃
  • 맑음충주6.5℃
  • 구름많음북창원12.3℃
  • 2025.11.25 (화)

[독점] 코드 작업 생산성 저하, 오해와 진실 파헤쳐보기

이선영 / 기사승인 : 2022-02-24 16:57:00
  • -
  • +
  • 인쇄

코드 작성 작업 시 종종 코드를 복사하여 붙이기도 한다. 그러나 일각에서는 단순한 복사 붙이기 작업이 생산성 저하의 원인이 될 수 있다고 주장한다. 실제로 복사 붙이기가 코드 작업에 독이 될까? 이에, 해외 IT 온라인 포럼 더넥스트웹이 코드 작업의 생산성 향상과 관련된 오해와 진실을 아래와 같이 설명했다.

코드 복사 붙이기는 잘못된 일이다?
오픈소스 애호가와 코드 작업 순수주의자는 코드 복사 붙이기 작업을 비판한다. 그리고 복사된 코드에서 무슨 일이 일어나는지 이해하지 못할 수도 있기 때문에 어떤 것도 복사해서는 안 된다고 주장할 것이다. 틀린 이야기는 아니다.

그러나 구글 검색 시 복사 기능의 매뉴얼 페이지를 확인하게 된다. 또한, 몇 가지 변수 이름을 조정하고 코드 조각을 삽입할 부분을 이해해야 한다. 코드 복사 붙이기 작업이 단순한 일처럼 보이지만, 사실 기본적인 지식이 없다면 불가능한 일이다.

또, 순수주의자가 주장하는 부분으로 복사하여 붙여 넣는 코드에 인쇄할 수 없는 문자가 포함되었을 위험성을 언급할 수 있다. 이러한 문자는 백스페이스나 가로 탭과 같은 문자로 화면에 표시되지 않지만 출력에 영향을 미칠 수 있다. 하지만 실무에서 복사 붙이기 과정에서 오타를 잡지 못하는 실수가 발생해도 인쇄할 수 없는 문자를 확인하지 않아 코드를 망치게 된 사례는 없다.

오히려 오픈소스 코드의 장점을 사용한 뒤 심각한 보안 위험이 발생하는 사례가 더 많다. 대표적인 사례로 시스템 관리자에 로그 정보를 시스템 관리자에게 구문 분석하는 오픈 소스 코드의 한 부분인 로그4j(Log4j)의 보안 문제를 언급할 수 있다. 지난해 말, 로그4j의 문제 때문에 클라우드플레어, 마인크래프트, 트위터 등의 서버 해킹을 유발할 수 있는 취약점이 발견되었다.

개인이 작성한 코드, 타인과의 공유는 금물?
일부 전문가는 개발자가 작성한 코드를 언제든지 활용할 수 있으며, 평생 책임져야 한다고 언급하면서 다른 이와의 코드 공유를 금기시한다. 그러나 직접 작성한 코드를 타인이 사용하도록 하는 것이 좋다. 실질적으로 다른 여러 프로젝트를 진행하면서 개인이 작업한 코드를 언제나 즉시 책임지기 어렵기 때문이다.

물론, 코드 작성자가 코드를 가장 잘 이해할 것이다. 그러나 타인이 활용하도록 하면서 이를 통해 더 많이 배우고 실력을 향상할 수 있다. 또한, 많은 개발자가 타인이 공유한 코드 작업 프로젝트에 중요한 피드백을 제공한다.

만약, 코드 작성자가 직접 작성한 코드를 책임지도록 한다면, 작성자는 코드에 대한 중요한 피드백과 참신한 아이디어를 놓치게 된다.

유닛 테스트, 자칫하면 시간·비용 낭비 지름길로 전락
2008년, 스택오버플로(StackOverflow) 설립 당시 대규모 Q&A 사이트를 구축할 확실한 방법이 없었다. 지금은 교과서적인 작업이 진행되지만, AWS 이전에는 코드 없는 웹 개발과 그래픽 포인트 앤 클릭 데이터베이스 관리가 가능했다. 무엇보다도 스택오버플로는 사용자에게 적합한 웹사이트 개발을 위해 성능을 최우선순위로 두면서 테스트를 중요도가 가장 낮은 작업으로 분류했다.

대다수 개발자가 테스트가 필수라고 주장하는 것과는 전혀 다르다. 테스트를 하지 않고도 코드 작동 여부를 확인할 수 있을까? 그러나 많은 전문가가 유닛 테스트는 비효율적인 작업이라고 입을 모아 주장한다.

테스트 실행 시간이 매우 길어 개발자의 개발 시간을 빼앗기 때문이다. 개발자가 새로운 기능을 추가하고자 할 때마다 필요한 테스트를 추가하거나 맞춤 제작하여 기존 테스트 제품군에서 테스트에 적합한 위치를 찾아야 한다.

게다가 시간이 지날수록 테스트 비용 부담 수준이 증가하는 문제도 있다. 이에, 개인 개발자 아리 주리(Ari Joury)는 매우 불안정하게 들리지만, 여러 차례에 걸친 테스트보다는 아키텍처 자체를 더 견고하게 만들어 테스트 필요성을 최소화해야 한다고 주장한다.

[저작권자ⓒ CWN(CHANGE WITH NEWS). 무단전재-재배포 금지]

최신기사

뉴스댓글 >

- 띄어 쓰기를 포함하여 250자 이내로 써주세요.
- 건전한 토론문화를 위해, 타인에게 불쾌감을 주는 욕설/비방/허위/명예훼손/도배 등의 댓글은 표시가 제한됩니다.

댓글 0

Today

Hot Issue