태그 보관물: database-development

database-development

저장 프로 시저 명명 규칙? [닫은]

수석 개발자 중 한 명이 “verbObject”유형의 이름 지정 ( “GetMemberByID”) 대신 “objectVerb”스타일의 이름 지정 ( “MemberGetById”)과 함께 저장 프로 시저에 이름 지정 규칙을 사용해야한다고 언급했습니다. 이 표준의 이유는 모든 관련 저장 프로 시저가 작업이 아니라 개체별로 그룹화되기 때문입니다.

이러한 방식으로 사물을 명명하는 방식에 대한 논리를 볼 수 있지만, 이것이 이런 식으로 명명 된 저장 프로 시저를 처음 본 것입니다. 명명 규칙에 대한 나의 의견은 이름을 자연스럽게 읽을 수 없으며 단어의 말과 절차를 결정하는 데 시간이 걸린다는 것입니다.

이것에 대한 당신의 테이크는 무엇입니까? 저장 프로 시저의 이름을 지정하는 가장 일반적인 방법은 무엇이며 어떤 유형의 저장 프로 시저 명명 규칙을 사용 했습니까?



답변

이렇게 봐 메소드는 코드로 어떻게 구성되어 있습니까? 방법에 따라 개체와 함께.

MyObject.GetById(int)
MyObject.Save()

저장된 procs가 해당 이름을 모방하도록하면 소스 코드와의 관계를 훨씬 쉽게 알 수 있습니다.

MyObjectGetById
MyObjectSave

답변

나도 그 논리를 볼 수있다. 엔티티별로 조치를 그룹화합니다. 그러나 작업이 항상 GET, PUT 및 DELETE 인 경우 이름 변경이 그다지 중요하지 않을 수 있습니다. “AccountTransferMoney”와 같은 고유 한 작업 이름이있을 때 발생하는 새로운 명명 표준의 이점이 가장 좋습니다.

가장 중요한 것은 단일 표준이 있으며 모든 표준이 따르는 것입니다.


답변

더 큰 발행자가 무엇인지 결정하고 찾고자하는 프로세스를 찾거나 그 의미를 빨리 해독해야합니까?

네가 본다면:

memberGetID memberGetName memberGetThis memberListSomething memberDelete

어떤 시점에서, 당신이 이미 ‘회원’을 찾았다면 당신은 그것을 무시하고 거기에서 가십시오.

전화 번호부를보십시오. John Smith를 찾으려면 Smith, Dave Smith, John Smith, Robert입니다.

정말 열심히? 제임스 본드가 아니라면 사람들을 성으로 부르고 이름을 부르지 않습니다.


답변

“objectVerb”대신 “namespace_verbObject”를 사용할 수 있습니다 Member_GetById.
네임 스페이스별로 프로 시저를 그룹화하고 여전히 전통적인 “verbSomething”이름 지정을 사용합니다.


답변