golang-spec icon indicating copy to clipboard operation
golang-spec copied to clipboard

unqualified type name

Open dakeshi opened this issue 7 years ago • 5 comments

체크리스트

Issue 설명

unqualified type name 에 적합한 번역 용어를 찾기 위한 토론입니다. 적합한 번역 용어가 있으면 제안해주시고 공감하는 의견에 의사표시를 해주시길 바랍니다.

원문 (제목, 링크)

struct types

The unqualified type name acts as the field name.

기존 번역

unqualified 타입 이름은 필드 이름처럼 사용된다.

번역 제안 및 토론

  • 패키지이름을 동반하지 않은 unqualified 타입 이름이 필드 이름처럼 사용된다. @jhonghee qualified는 unambiguous라는 뜻으로 이해하면 될 것 같습니다. 패키지를 동반한 이름은 그렇지 않은 이름들보다 unambiguous하다.

  • unqualified 타입 이름은 필드 이름처럼 사용된다. @dakeshi unqualified는 인터페이스 챕터에서도 논의되었지만, qualified identifier와 관련있는 내용이라 일단 unqualified 로 유지합니다.

dakeshi avatar Dec 18 '17 00:12 dakeshi

개인적으로 독자의 입장에서, unqualified 타입의 의미를 바로 알 수 있게 하는 것이 좋을 것 같습니다. 저 역시도 저 구문을 읽으면서 "도대체 unqualified가 뭘까" 하면서 갸우뚱했었거든요.

voidsatisfaction avatar Dec 18 '17 04:12 voidsatisfaction

unqualified를 이해하려면 qualified가 어떻게 정의 되었는지를 보면 됩니다.

A qualified identifier is an identifier qualified with a package name prefix.

결국 unqualified type name은 package 이름을 동반하지 않는 타입 이름을 가리키는 말입니다.

jhonghee avatar Dec 18 '17 05:12 jhonghee

의미를 풀어쓰는 게 좋을 것 같습니다.

package 이름이 없는 타입 이름이 필드 이름처럼 사용된다.

이게 어떨까요?

ezaurum avatar Dec 19 '17 05:12 ezaurum

패키지 이름없이 사용된 타입 이름이라는게 import 한 패키지에 있는 타입의 이름을 의미하는 건가요? 아니면 외부 패키지가 아니라 해당 소스 코드에서 선언한 type의 이름을 사용한 경우를 말하나요?

dakeshi avatar Dec 19 '17 05:12 dakeshi

저는 해당 문맥상에서의 사용만 말씀드린 겁니다.

type Sample struct  {
	T1        // field name is T1
	*T2       // field name is T2
	P.T3      // field name is T3
	*P.T4     // field name is T4
	x, y int  // field names are x and y
}

같은 게 선언되어 있을 때,

sample.T1

처럼 T1이 패키지 이름이 없이 사용되어서 그냥 필드이름처럼 쓰일 수 있다는 의미로 이해했습니다.

해당 단어는 다른 문맥에서는 다른 번역이 필요하다고 봅니다.

ezaurum avatar Dec 19 '17 05:12 ezaurum