클래스 인터페이스 설계에 대한 모범 사례를 찾고 있습니다.다른 내부 함수를 호출하는 클래스 인터페이스 함수를 사용해야합니까?
이미지를로드하는 클래스 함수가 있다고 가정하면 예외 검사가 수행되고 전달되면 맵 클래스에 추가됩니다.
public void SomeClass::Load(Type::Something ID //enum, std::string& fileName)
{
// Load file from string
// Do Exception checking
// Add to map
// Assert std::map.insert
}
2 기능 :
는 가장 한 기능을 가지고하는 것입니다
public void SomeClass::Load(Type::Something ID //enum, std::string& fileName)
{
// Load file from string
// Do Exception checking
// Call insert
}
private void SomeClass::Insert(Type::Something ID //enum, std::string& fileName)
{
// Map.insert
// assert check
}
개인 기능을
또는 3 함수를 호출 한 공공 기능 :
public void SomeClass::Load(Type::Something ID //enum, std::string& fileName)
{
// Call Load
// Call insert
}
private void SomeClass::LoadFromFile(Type::Something ID //enum, std::string& fileName)
{
// Load file from string
// Do Exception checking
// Call insert
}
private void SomeClass::Insert(Type::Something ID //enum, std::string& fileName)
{
// Map.insert
// assert check
}
을
한 가지 기능 그것은 공개적으로 2 개의 개인 기능을 호출합니다.
귀하의 질문은 의견을 기반으로 생각합니다. 예를 들어,이 간단한 작업에서는 예외를 사용하지 않을 것입니다. 허버트 (Herbert)는 예외적 인 경우 (예 : 총알이 CPU에 영향을 미침)에 예외가 있다고 말했습니다. – 101010
진짜 질문은 소프트웨어의 목표가 무엇인지, 또한 그러한 캡슐화 (예 : 보안 또는 데이터 구조 보호)의 이유입니다. – TheBetaProgrammer