우리 팀에서는 몇 명의 소프트웨어 설계자와 긴밀히 협력하고 있습니다. 그들은 우리 프로젝트의 모든 디자인 결정을 승인하고 코드 검토 등을 수행합니다.
우리 프로젝트는 주로 Symfony 2 프레임 워크를 사용하여 PHP로 구현 된 백엔드 기능으로 구성됩니다. 따라서 구문, 코드, 명명 규칙 및 프로젝트 구조는 Java의 모양과 거의 동일하게 보입니다 (Symfony 2는 이러한 구조를 권장합니다). Java 관련 규칙이 가능한 경우에도 적용되기 때문에 이것을 언급하고 있습니다.
최근에, 그들은 내가 아주 이상한 찾을 수 있다는 것을 제안 : 모든 방법은 자신의 이름 등의 접속사가 있어야 getEntityOrNull
, setValueOrException
등
이러한 명명 규칙은 나에게 매우 잘못 느껴지지만 구체적으로 논란이되는 구체적인 주장이나 온라인 기사 / 페이지를 생각해 낼 수는 없습니다.
내가 생각해 낸 유일한 것은 :
- 이러한 정보는
@return
또는@throws
- 분석법 이름에 연결 ( "및", "또는"등)을 사용하면 일반적으로 단일 책임 원칙이 제대로 준수되지 않음을 나타냅니다.
이 명명 규칙에 대한 다른 구체적인 주장은 무엇입니까?
the use of conjunctions ("and", "or" etc.) in method names usually suggest that the Single Responsibility Principle is not properly respected
나열된 예제의 경우에는 해당되지 않습니다. 여기서 연결은 실패를 처리하는 데 사용되는 메커니즘을 명확하게하는 데 사용되며 하나의 작업을 수행 할 수 있음을 나타내지 않습니다. 가장 좁게 정의 된 함수조차도 빈 스택을 터뜨리는 등의 합법적 인 실패 조건을 가질 수 있습니다.
Int32.TryParse
과 Int32.Parse
- 모두 구문 분석 정수에 캐릭터지만, 전 반환 부울 성공을 나타내는 후자는 실패가 발생합니다.
Try...
, ...OrNull
, ...OrDefault
. @EricLippert .net의 유일한 규칙은 아닙니다. 제안 된 OP에 매우 가까운 Single
vs.를 고려하십시오 . SingleOrDefault
OrNull