가상함수가 동일한 멤버함수를 호출하고자 할 경우 결정된 함수가 아니라 프로그램 실행중에
지연 바인딩을 유도하게 해야 하는데 그방법으로 베이스 클래스 내의 멤버 함수와 같은 이름의
엠버 함수가 파생 클래스 쪽에 정의될 때 베이스 클래스내의 멤버함수를 가상함수라고 칭하고있는데
다른 번역으로는 제 생각으로는 딱히 '가상함수'이외에는 생각을 못해보겠습니다.
윗글 객체지향을 포함해서 찾아보면 몇몇 번역의 이질감이 상황을 종종 난해하게 만드는 경우가 있는데
이런 경우는 무슨 방법으로든 고쳐졌으면 하고 생각한 경우가 있습니다
이런 경우가 비교가 될려는지는 몰라도.
중화요리 식당 간판을 '중국집' 이라고 걸어놓았는데 그 가게가 중화요리를 판매하는
가게라고 알고있는(대부분 누군가를 통해 전해듣거나 직접 알게되는) 사람을 제외한
중국집에 대한 정보가 없는 사람이 얼핏본다면 그것에 대해 쉽게 이해하지 못할것입니다.
중국요리를 파는 가게를 왜 중국집이라고 했는지도 의문이지만
어찌보면 그 이외에 중화요리를 판매하는 곳을 가장 쉽게 어필할 수 있기에
그리 사용되어 오지 않았나 생각하고 있습니다.
이렇게 주절주절 적어놓고도 딱히 뭐라 감히 잡히지는 않는군요.
학규님 생각이 궁금합니다.
2004.05.01 12:48:16 (*.187.227.126)
Excelsis
가상함수라는 단어의 경우에는 사실 가상함수를 사용하는 '목적'보다는 가상함수가 '시스템상에서 어떻게 존재하는지'
(정적 바인딩이 아닌 동적 바인딩이라는것...) 에 대한 서술에 가깝기 때문에 수정의 여지가 있지 않나 생각합니다.
제 생각에는 '사용목적'에 중점을 둬서 '재정의 가능 함수' 라든가 기타등등으로 하는게 좋지 않나 싶네요.
2004.05.11 02:03:31 (*.49.186.51)
holywall
에... 가상함수라는 이름이 사실 virtual 키워드 때문에 붙여진 이름인 듯 한데요.
사실 함수의 이름으로 전체적이고 일반적인 기능만을 설명해주는... 사실상 내용물은 없고 이름만 붙여놓은 함수라서 미리 상정(Virtually)해놓은 것이니 약간 문제의 소지가 있군요.
선언자체는 알맹이 없는 미구현의 상태지만 상속을 거듭하면서 계속 구체적으로 기술할 수도 있고 하니...
"이름만 떨렁 함수", "미구현 함수"나 "추가적으로 구체화가 가능한 상속 함수" 정도면 될런지 모르겠군요.
머리속에 빙빙도는 개념을 딱 정리할만한 적당한 단어가 떠오르지가 않는군요. 역시 국어실력에 문제가 있네요.
2004.07.01 04:30:16 (*.155.56.225)
버서크 나이트
죄송합니다만...(프로그래밍 쪽은 아직 손을 대지 않아서 잘 모름 -_-;;) "가상함수"가 원래 뭐라고 불리는건가요? 설마...virtual function??? 그렇다면 용도/기능은...?? -ㅁ-;;
2004.08.02 09:34:53 (*.110.29.212)
해키스트
패던 디자인시 가장 중요한 역할을 합니다. virtual 선언을 한 함수는 런타임시에 그 함수의 대상이 바뀔 수 있습니다. 대개는 베이스 클래스의 특정 함수들을 virtual선언하고(인터페이스화 한다고도 합니다) 해당 베이스 클래스를 상속받은 서브 클래스들에서 재정의(override)하는 방법을 많이 사용합니다. 자세한 내용은 디자인 패턴 관련 책을 참고하세요 ^^
2004.08.02 09:36:49 (*.110.29.212)
해키스트
저도 가상함수란 용어를 처음 들었을때 실제 그 용도가 바로 떠오른게 아니라서, 제가 생각하는 좋은 번역은 '기능변환가능 함수'인듯 합니다.
가상함수가 동일한 멤버함수를 호출하고자 할 경우 결정된 함수가 아니라 프로그램 실행중에
지연 바인딩을 유도하게 해야 하는데 그방법으로 베이스 클래스 내의 멤버 함수와 같은 이름의
엠버 함수가 파생 클래스 쪽에 정의될 때 베이스 클래스내의 멤버함수를 가상함수라고 칭하고있는데
다른 번역으로는 제 생각으로는 딱히 '가상함수'이외에는 생각을 못해보겠습니다.
윗글 객체지향을 포함해서 찾아보면 몇몇 번역의 이질감이 상황을 종종 난해하게 만드는 경우가 있는데
이런 경우는 무슨 방법으로든 고쳐졌으면 하고 생각한 경우가 있습니다
이런 경우가 비교가 될려는지는 몰라도.
중화요리 식당 간판을 '중국집' 이라고 걸어놓았는데 그 가게가 중화요리를 판매하는
가게라고 알고있는(대부분 누군가를 통해 전해듣거나 직접 알게되는) 사람을 제외한
중국집에 대한 정보가 없는 사람이 얼핏본다면 그것에 대해 쉽게 이해하지 못할것입니다.
중국요리를 파는 가게를 왜 중국집이라고 했는지도 의문이지만
어찌보면 그 이외에 중화요리를 판매하는 곳을 가장 쉽게 어필할 수 있기에
그리 사용되어 오지 않았나 생각하고 있습니다.
이렇게 주절주절 적어놓고도 딱히 뭐라 감히 잡히지는 않는군요.
학규님 생각이 궁금합니다.