답변:
소프트웨어를 전문적으로 개발하는 경우 아마도 일부 버전 제어 시스템 (svn, hg, git 등)을 사용하고있을 것입니다. 이 경우 프로젝트에서 코드를 커밋 할 수있는 코더 계정이 이미 있으므로 코드에 개인 정보를 남겨 두는 것이 중복되는 것으로 나타났습니다.
그러나 오픈 소스 커뮤니티의 일부 사람들은 연락을 위해 이름과 이메일 주소를 남겨 두는 것이 흥미 롭습니다. 이것은 전혀 나쁜 생각이 아닙니다. 이 예를 확인하십시오.
FFmpeg에서 :
/*
* Interplay C93 video decoder
* Copyright (c) 2007 Anssi Hannula <anssi.hannula@gmail.com>
*
* This file is part of FFmpeg.
*/
DirectFB에서 :
/*
(c) Copyright 2001-2009 The world wide DirectFB Open Source Community (directfb.org)
(c) Copyright 2000-2004 Convergence (integrated media) GmbH
All rights reserved.
Written by Denis Oliver Kropp <dok@directfb.org>,
Andreas Hundt <andi@fischlustig.de>,
Sven Neumann <neo@directfb.org>,
Ville Syrjälä <syrjala@sci.fi> and
Claudio Ciccani <klan@users.sf.net>.
*/
그러나 분명히 내 이름과 이메일을 남겨두면 내 코드에 주석을 작성해야한다고 생각합니까? 죄송합니다. 답변이 아닙니다. 실제로 나는 보통 doctype 주석을 남긴다 ...
/**
* @author PurplePilot
* @package
* @etc
*/
내 이름은 있지만 이메일 주소는 없습니다. 예,이 코드는 잘라내어 붙여 넣을 수 있지만 복사기가 작성자 이름을 변경하지 않으면 다른 사항은 변경되지 않으며 유지되지 않은 주석임을 분명히 알 수 있습니다.
나는 때때로 사용하는 이메일 시그마를 가지고 있습니다.
/* Anything you put in comments is not tested and easily goes out of date. */
이 글에서 다른 많은 글을 반영한 것 같습니다. 그러나 주제에 대한 규칙이 없기 때문에 프로그래머는 가장 편안한 느낌을 가지고 행동해야합니다.
나는 종종 이니셜을 의견에 적지 만 (적절한 경우), 더 이상 남길 이유가 없다. 여전히 코드를 소유 한 회사에서 일하고 있다면 사람들은 나와 연락하는 방법을 알아야합니다.
회사를 떠나 다른 곳에서 일하는 경우, 마지막 회사 (경쟁 업체 일 수 있음)에서 소프트웨어에 대한 전화를받는 경우 새 고용주에게 실제로 공평하지 않습니다.
코드가 다른 방식으로 공유 된 경우 (예 : 오픈 소스, 온라인 게시) 연락처 세부 정보를 보유 할 가치가 있지만 코드가 다른 방식으로 전달 된 경우 코드를 제공 한 사람은 이미 연락처 세부 정보를보고 몇 년 전에 작성한 코드에 대해 물어 보는 임의의 낯선 사람 전화를 원하십니까?
다음과 같은 생각이 있습니다. 소스 제어에 포함되어야하는 소스 코드를 넣지 마십시오.
저작권 정보는 이러한 것들 중 하나입니다. 시간이 지남에 따라 많은 사람들이 파일 세분 미만으로 코드를 수정하기 때문입니다. 책임 로그는 당신이 알아야 할 모든 것을 알려줄 것입니다.
즉, 많은 회사는 원본 파일 작성자를 나열하고 변경하지 않는 전환을 따릅니다. 사람들이 회사를 떠날 때 실제로 유용한 지 여부는 모르겠습니다.
주된 가치는 인식을 구축하는 것입니다. IDE에 가서 각 파일을 작성한 사람을 알려달라고 요청하지는 않지만 그룹 코드베이스에서 시간이 지남에 따라 파일을 만나면 프로젝트의 책임과 전문 지식에 대한 아이디어를 얻을 수 있습니다.
공개 도메인의 경우 이점은 "광고"이며, 단점은 나중에 누군가 파일을 손상시킬 수 있지만 여전히 귀하의 이름을 지니고 있다는 것입니다.
연락처 정보를 코드에 남기지 않습니다. 그것은 항상 구식이며 더 많은 문제를 일으키는 것 같습니다.
다른 사람들은 문제의 상당 부분을 지적했지만 가장 교묘 한 영향이라고 생각하는 것을 언급하고 싶었습니다.
팀 작업과 코드 품질을 파괴 할 수 있습니다.
어떻게 요청할 수 있겠는가, 그것은 모두 집단 코드 소유권과 관련이 있습니다. 코드 이름을 입력하면 다음에 오는 사람이 "내 코드가 아니고 X 만 할 것입니다"라고 말합니다. 여기서 X는 해킹하거나 무시할 수 있습니다. 그런 다음 수정하면 수정합니다. 물론 그들이 코드를 개선했기 때문에 그들의 이름을 코드에 넣기를 원합니다. 그러나 당신은 생각할지도 모릅니다.이 코드에서 몇 주를 보냈고 그들은 왜 내 이름으로 이름을 얻었습니까? 시간이 지남에 따라이주기가 계속되고 사람들은 누가 코드에 대한 신용을 얻어야하는지에 대해 논쟁합니다.
팀에게는 잘 작동하지 않습니다. 대신 팀이 집단 소유권에 초점을 맞추고 소유권없이 모든 코드를 훌륭하게 만들면 시스템의 품질 인 실제로 중요한 것에 집중할 수 있습니다. 누가 작업했는지 추적해야 할 경우 언제든지 VCS를 사용하여 세부 사항을 얻을 수 있습니다.
참고 : 저작권 헤더조차도 개발자 이름이있는 경우, 특히 개발자가 다른 기고자만큼 활동적이지 않은 경우 이러한 파괴적인 영향을 줄 수 있습니다. 그렇기 때문에 오픈 소스 프로젝트에서 저자 또는 기고자에있는 작성자 만 프로젝트의 한 곳에만 언급하려고합니다.
VCS가 책임을 맡기 때문에 연락처 정보를 소스 코드에 남기는 경향이 없습니다.
즉, 코드를 사용하는 사람들 이 귀하 에게 직접 연락하여 피드백을 제공 할 수 있도록 귀하의 연락처 정보를 어딘가에 두는 것이 좋습니다 . README 파일의 프로젝트 웹 사이트에 대한 링크는 일반적으로 좋은 습관입니다.
이 규칙은 Usenet과 IRC가 정기적으로 소스 코드를 공유하는 데 사용되었던 시대에서 비롯되었습니다. 코드가 VCS에서 거의 연결되어 있지 않고 직접 전송되는 경우가 많으므로 피드백을 원하면 연락처 정보를 어딘가에 포함시켜야합니다.