내가 속한 R & D 팀은 코딩 표준을 채택하기로 결정했습니다. 우리는 최근에 조직을 구성했으며, 팀에서 유기적으로 개발 한 내용과 자체 코드 등의 좋은 예를 기반으로 표준 / 수집 문서를 기반으로하는 코드와 공통 코딩 시간이 너무 적습니다.
이제 우리 모두는 과거 직장에서 경험을 쌓았습니다. "우리는 여기에서 우리가하는 일에 적합한 것으로 밝혀진 포괄적 인 문서를 여기에서 채택하겠습니다"(*). 또한, 우리 중 일부 (나 자신을 포함하여)는 공식적인 코딩 표준이 없거나 다른 환경에서 다른 언어로 글을 쓰는 경험이 있습니다 (연구 중심의 개발 작업이 아닌 주간 주간 릴리스 프로덕션 환경)
그래서 내가 생각한 옵션 중 하나는 상대적으로 유명하고 잘 알려진 문서를 가져 와서 관심없는 / 관리하지 않는 것을 없애고 선호도에 따라 수정하는 것입니다.
이것이 일반적인 관행입니까? 이것이 좋은 생각이라고 생각하십니까? 그렇다면 합리적인 '기준선'코딩 표준은 무엇입니까 (어느 것이 가장 좋은지 말하지 말고 여기서 종교적 갈등을 시작하고 싶지는 않습니다. 단지 종합적이거나 '중립적'인 것을 지적하기 만하면됩니다. .)
노트:
- 우리는 C, C ++, OpenCL, CUDA, Python과 함께 작동 할 것으로 기대합니다.
- 우리는 4 명 + 관리자로 구성된 팀으로 1 년 안에 약 5-6 명으로 성장할 것으로 예상됩니다.
- 우리 회사에서 팀은 거의 완전히 자율적이며 일반적으로 전혀 상호 작용하지 않습니다 (서로 다른 코드를 사용하더라도 전혀 다른 프로젝트에 있습니다). 따라서 회사 전체에서 고려해야 할 사항이 없습니다.
- 도구에 관해서는, 현재 우리가 알고있는 것은 Eclipse 를 사용할 것이므로 코드 포매터는 최소한 하나의 도구가 될 것입니다. Ctrl + Shift + F는 오랫동안 내 친구였습니다.
- Java를 작성할 때 Bloch의 Effective Java에 최대한 엄격하게 준수하는 관행을 채택했습니다 . 이제는 코딩 표준이 아니지만 코딩 표준으로 벽돌, 시멘트 및 박격포를 부를 수 있습니다. 나는 아마도 'mix'의 일부로 그런 것을 포함하려고 생각하고있었습니다 (Java를하지 않는다는 생각).
- 더 넓은 의미에서 코딩 표준을 의미합니다. 예를 들어이 P.SE 질문 에 대한 답변에서 제시된 제안 채택 .
- C ++ 코딩 표준 문서 의 큰 목록을 찾았습니다 . 어쩌면 나는 우리의 기준을 채굴해야합니다.
- (*) 사실이 아니지만이 질문을 너무 구체적으로 복잡하게하고 싶지 않습니다.