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

  • 흐림정읍23.9℃
  • 구름많음함양군22.3℃
  • 흐림순창군21.8℃
  • 구름조금청송군26.5℃
  • 구름조금영덕24.6℃
  • 구름많음장수22.4℃
  • 구름많음남원22.0℃
  • 흐림김해시26.5℃
  • 맑음제천24.4℃
  • 맑음서청주23.8℃
  • 구름많음합천23.5℃
  • 맑음동해23.9℃
  • 맑음파주23.9℃
  • 흐림장흥24.2℃
  • 구름많음서산24.7℃
  • 흐림강진군23.7℃
  • 흐림통영24.4℃
  • 구름조금태백22.2℃
  • 맑음천안23.9℃
  • 구름많음금산22.6℃
  • 구름많음추풍령23.1℃
  • 흐림북부산25.4℃
  • 구름조금의성24.7℃
  • 구름많음서귀포29.2℃
  • 흐림산청21.3℃
  • 흐림진주22.9℃
  • 구름많음군산24.0℃
  • 흐림거제23.3℃
  • 흐림보성군25.4℃
  • 구름많음영천24.1℃
  • 맑음상주24.3℃
  • 흐림고창23.9℃
  • 흐림양산시25.9℃
  • 구름조금대관령20.6℃
  • 구름많음인천23.6℃
  • 흐림창원24.5℃
  • 맑음충주24.9℃
  • 구름많음대전24.1℃
  • 맑음문경24.5℃
  • 비흑산도21.8℃
  • 구름조금영월25.4℃
  • 구름조금철원24.1℃
  • 흐림임실23.0℃
  • 구름많음이천25.5℃
  • 구름많음홍천24.3℃
  • 맑음울진24.4℃
  • 구름많음부여24.5℃
  • 구름많음구미23.8℃
  • 구름많음북창원25.0℃
  • 흐림전주24.4℃
  • 맑음북강릉23.7℃
  • 맑음강릉24.9℃
  • 흐림남해23.2℃
  • 구름많음부안23.9℃
  • 구름많음양평24.2℃
  • 구름조금영주24.6℃
  • 맑음청주24.7℃
  • 구름조금인제24.3℃
  • 흐림고창군23.3℃
  • 흐림고산26.9℃
  • 구름조금보은22.5℃
  • 구름많음북춘천23.7℃
  • 흐림의령군22.3℃
  • 구름조금서울25.7℃
  • 흐림영광군24.0℃
  • 맑음봉화25.0℃
  • 구름조금정선군26.7℃
  • 비목포23.6℃
  • 구름조금안동25.0℃
  • 구름많음수원25.6℃
  • 구름조금동두천24.5℃
  • 흐림홍성23.9℃
  • 구름많음거창23.7℃
  • 구름조금원주26.1℃
  • 구름많음성산27.0℃
  • 흐림보령25.1℃
  • 흐림밀양24.3℃
  • 구름조금속초22.7℃
  • 흐림여수23.3℃
  • 흐림고흥24.6℃
  • 구름많음대구23.7℃
  • 구름많음강화23.5℃
  • 흐림울산24.5℃
  • 구름많음춘천23.8℃
  • 흐림완도24.2℃
  • 흐림광양시24.4℃
  • 흐림해남23.4℃
  • 흐림제주27.1℃
  • 흐림경주시24.5℃
  • 구름조금세종24.6℃
  • 흐림부산26.1℃
  • 흐림백령도22.2℃
  • 흐림순천23.1℃
  • 구름많음울릉도24.9℃
  • 구름많음포항25.2℃
  • 흐림광주23.0℃
  • 흐림진도군23.5℃
  • 2025.10.02 (목)

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

이선영 / 기사승인 : 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