<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=SmalltalkBestPracticePatterns%3A6.2</id>
	<title>SmalltalkBestPracticePatterns:6.2 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://trans.onionmixer.net/wiki/index.php?action=history&amp;feed=atom&amp;title=SmalltalkBestPracticePatterns%3A6.2"/>
	<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=SmalltalkBestPracticePatterns:6.2&amp;action=history"/>
	<updated>2026-05-02T05:55:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.3</generator>
	<entry>
		<id>https://trans.onionmixer.net/wiki/index.php?title=SmalltalkBestPracticePatterns:6.2&amp;diff=3546&amp;oldid=prev</id>
		<title>Onionmixer: SBPP 6.2 간단한 슈퍼클래스명 페이지 추가</title>
		<link rel="alternate" type="text/html" href="https://trans.onionmixer.net/wiki/index.php?title=SmalltalkBestPracticePatterns:6.2&amp;diff=3546&amp;oldid=prev"/>
		<updated>2013-07-29T09:17:17Z</updated>

		<summary type="html">&lt;p&gt;SBPP 6.2 간단한 슈퍼클래스명 페이지 추가&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;;6.2 간단한 슈퍼클래스명&lt;br /&gt;
&lt;br /&gt;
==간단한 슈퍼클래스명==&lt;br /&gt;
&lt;br /&gt;
* 상속 계층구조의 루트(root)로 예상되는 클래스를 어떻게 명명하는가?&lt;br /&gt;
&lt;br /&gt;
모든 명명 결정에는 공통적으로 몇 가지 제약이 있다. 가능한 한 짧게 명명해야 입력, 포맷, 부르기가 쉽다. 동시에 코드를 읽는 사람들이 많은 정보를 머릿속에 보관한 채 다니지 않아도 되도록 이름마다 가능한 한 많은 정보를 전달해야 한다. 은유나 비유를 통해 독자들이 이미 가진 정보를 활용하기 위해서는 친숙한 이름을 원할 것이다. 하지만 당신이 정한 이름을 독자가 무심코 선택하는 일이 없도록 유일한 이름을 정하고 싶을 것이다. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
필자가 따르는 첫 번째 규칙은 축약어를 사용하지 말자는 것이다. 축약어는 읽기보다는 (20년 작업에서 1000-10000회) 타이핑을 (20년 작업에서 10-100회) 최적화한다.&amp;lt;ref name=&amp;quot;역자주1&amp;quot;&amp;gt;이 부분 원본의 의미가 모호합니다. Times의 의미와 Over 위치를 확인 부탁드립니다. 읽기의 횟수가 더 많은데 타이핑을 더 잘 최적화한다고 되어 있습니다. 일반적으로 times는 ~배(배수) 또는 ~회(횟수)를 의미합니다만 a 10-100 times 또는 a 1000-10000 times라는 용어가 프로그래밍 용어인지 확인부탁드립니다.&amp;lt;/ref&amp;gt;축약어는 2단계 과정ㅡ문자가 무엇을 의미하는지, 그리고 그 단어들이 무엇을 의미하는지ㅡ으로 이름을 해석한다. 본문에 실린 클래스 및 메서드의 명명 패턴들은 절대로 축약해서는 안 될 이름들을 소개한다. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
거대한 계층구조에서 루트 클래스의 명명은 매우 중요한 일이다. 향후 20년간 사람들의 대화에선 당신이 선택하는 단어를 사용하게 될 터이니 당연히 올바른 이름을 정하길 원할 것이다. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
불행히도 많은 사람들은 슈퍼클래스를 명명할 때 형식적으로 정한다. 있는 그대로 붙이기는 충분치 않나보다. 복잡하게, 컴퓨터 과학적이면서 인상 깊은, 그렇지만 결국엔 의미가 없는 Object, Thing, Component, Part, Manager, Entity, Item과 같은 단어들을 꼭 덧붙인다. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
명명은 프로그램을 쓰는 것이 아니라 어휘를 만드는 것이다. 이 순간만큼은 시인이 되어보라. 간단하고 효과적이면서 쉽게 기억할 수 있는 이름이야말로 모든 정보를 포함하지만 너무 길어서 누구도 부르고 싶지 않은 이름보다 장기적으로 볼 때 훨씬 효과적이다. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* 설계 시 목적을 전달하는 하나의 단어로 슈퍼클래스를 명명하라. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
여기 이미지에서 몇 가지 예를 소개하겠다:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;smalltalk&amp;quot;&amp;gt;&lt;br /&gt;
Number&lt;br /&gt;
Collection&lt;br /&gt;
Magnitude&lt;br /&gt;
Model&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;이 클래스 상에 여러 개의 변형(variation)을 생성해도 좋은데 각 변형에는 Qualified Subclass Name(p.169)를 사용하라.&amp;#039;&amp;#039;&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Notes==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:SmalltalkBestPracticePatterns]]&lt;/div&gt;</summary>
		<author><name>Onionmixer</name></author>
	</entry>
</feed>