[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: ¥í¡¼¥«¥ëÊÑ¿ô¤È¥Õ¥£¡¼¥ë¥É




In article <37FE1493.D16F1E3@xxxxxxxxxx>
Toru TAKAHASHI wrote:
>---------------------- °úÍÑ ---------------------------------
>What Makes Up a Good Name
>We will be discussing naming conventions throughout the standards,
>so let's the stage with a few basics:
>¡ÊÃæÎ¬¡Ë
>7. Avoid leading or trailing underscores. Names with leading or 
>trailing underscores are usually reserved for system purposes,
>and may not be used for any user-created names except for pre-
>processor defines(NPS, 1996). More importantly, underscores are
>annoying and difficult to type so I try to avoid their use 
>whenever possible.
>----------------------- °úÍѽª¤ï¤ê ---------------------------

JLS¤Î3.8 Identifiers¤Ë¡¢

The Java letters include uppercase and lowercase ASCII Latin letters
 A-Z (\u0041-\u005a), and a-z (\u0061-\u007a), and, for historical r
easons, the ASCII underscore (_, or \u005f) and dollar sign ($, or \
u0024). The $ character should be used only in mechanically generate
d Java code or, rarely, to access preexisting names on legacy system
s.

¤Ã¤Æ½ñ¤¤¤Æ¤Þ¤·¤¿.'$'¤Ï¼«Æ°À¸À®¤µ¤ì¤¿¼±Ê̻Ҥ˻Ȥï¤ì¤ë¤Ù¤­¤È½ñ¤¤¤Æ¤¤¤Þ
¤¹¤¬¡¢'_'¤Ë¤Ä¤¤¤Æ¤Ïµ¬Äꤵ¤ì¤Æ¤Þ¤»¤ó¤è¤Í.
¥×¥ê¥×¥í¥»¥Ã¥µ±¾¡¹¤È¤¤¤¦¤¢¤¿¤ê¤ÏC¤Î´·½¬¤«¤éÍ褿²ò¼á¤Ê¤Î¤Ç¤·¤ç¤¦¤Í.
# C¤Ç¤Ï¥×¥í¥°¥é¥Þ¤¬'_'¤ò¼±ÊÌ»Ò(¤ÎÀèÆ¬/ËöÈø)¤Ë»ÈÍѤ·¤Æ¤Ï¤¤¤±¤Ê¤¤¤È¤¤
# ¤¦µ¬Äê¤Ï¤¢¤ê¤Þ¤·¤¿¤Ã¤±?MS¤ÎC¤ÏÆÈ¼«³ÈÄ¥¤Î´Ø¿ôÀèÆ¬¤Ê¤É¤Ë_¤òÉÕ¤±¤Æ¤¤
# ¤ë¤è¤¦¤Ç¤¹¤¬...

¥¿¥¤¥×¤·¤Å¤é¤¤¤«...»ä¤â¸µ¡¹Ìܰõ¤ò¤Ä¤±¤ë¤³¤È¤À¤±¤ò½ÅÍ׻뤷¤Æ¤¤¤Æ¡¢Ëö
Èø'_'¤Ë¤·¤¿¤Î¤Ï¡Ö¤¸¤ã¤Ð¤¸¤ã¤Ð¡×¤ò¸«¤Æ¤«¤é¤Ê¤Î¤Ç¡¢ºÇ½é¤Ï¤½¤ó¤Ê¤³¤È¤â
»×¤Ã¤¿¤«¤â:)

>> _¤¬¤­¤ì¤¤¤È¤Ï»×¤ï¤Ê¤¤¤Î¤Ç¤¹¤¬¡¢¥¯¥é¥¹Æâ¤ÎÁ´¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤Ë
>> getter/setter¤òÉղ乤뤳¤È¤Ç¡¢ÊÑ¿ô̾¤ËÌܰõ¤òÉÕ¤±¤ë»ö¤è¤ê²ÄÆÉÀ­¤¬
>> ¾å¤¬¤ë¤È¤Ï»×¤¨¤Þ¤»¤ó.
>> ¤Ä¤Þ¤ê¡¢¤à¤À¤Ë¥½¡¼¥¹¥³¡¼¥É¤¬Ä¹¤¯¤Ê¤ëʬ²ÄÆÉÀ­¤¬Íî¤Á¤ë¤³¤È¤Ë´Ø¤·¤Æ
>> ¤Ï¸ÀµÚ¤µ¤ì¤Æ¤¤¤Ê¤¤¤Ç¤¹¤è¤Í.
>¤³¤³¤Ï¤É¤Á¤é¤¬²ÄÆÉÀ­¤¬¤è¤¤¤«µÄÏÀ¤ÎÊ̤ì¤ë¤È¤³¤í¤Ç¤¹¡£¥Õ¥£¡¼¥ë¥É̾¤Ë
>set¤«get¤È()¤¬Áý¤¨¤ë¤À¤±¤Ê¤Î¤Ç¡¢¡Ö¤à¤À¤Ë¡×¤È¤¤¤¦¤Û¤É¤Ë¤ÏŤ¯¤Ê¤é¤Ê
>¤¤¤È»×¤¤¤Þ¤¹¡£null¥Á¥§¥Ã¥¯¤·¤Æ¤«¤é¥Õ¥£¡¼¥ë¥É¤Ë¥¢¥¯¥»¥¹¤¹¤ë¤È¤·¤¿¤é
>ifʸ¤¬²ðºß¤·¤Æ¤«¤¨¤Ã¤Æ²ÄÆÉÀ­¤¬Íî¤Á¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¤·¡£¡£¡£

¤¦¡¼¤ó.»ä¤Ï¥á¥½¥Ã¥ÉÄêµÁ¤¬Áý¤¨¤ë¤³¤È¤òµ¤¤Ë¤·¤¿¤ó¤Ç¤¹¤±¤É¡¢¤¢¤ó¤Þ¤êµ¤
¤Ë¤¹¤ë¤³¤È¤¸¤ã¤Ê¤¤¤Î¤«¤Ê¤¢¤È¤â»×¤¦¤Î¤Ç¤ä¤Ã¤Ñ¤ê¤À¤ì¤â¸ÀµÚ¤·¤Ê¤¤¤Î¤Ç¤·
¤ç¤¦¤«¤Í?
# ¤¿¤¤¤·¤¿¤³¤È¤¸¤ã¤Ê¤¤?º£»þ¤ÏIDE¤¬¼«Æ°À¸À®¤·¤Æ¤¯¤ì¤ë¤«¤é¤«¤Ê¤¢.
# private¥á¥½¥Ã¥É¤Ê¤ó¤«²¼¤ÎÊý¤Ë¸Ç¤á¤È¤¤¤ÆÉáÃʤϸ«¤Ê¤¤¤«¤éÁý¤¨¤Æ¤â¤¤
# ¤¤¤ä¤Ã¤Æ¤³¤È¤«¤â¤·¤ì¤Ê¤¤¤Ç¤¹¤Í.(¼ñÌ£¤ÎÌäÂê)
# »ä¤Ï'_'½ñ¤¯¤è¤êprivate Foo getFoo() {¡¦¡¦¡¦¤ò½ñ¤¯Êý¤¬ÌÌÅݤǤ¹.
##### '_'¤Ã¤Æ²¿¤«¤Î´é? :)

ÊÑ¿ô¤Î»²¾È²Õ½ê¤ògetFoo()¤Ë¤¹¤ë¤³¤È¼«ÂΤϳä¤È¸«¤ä¤¹¤¯¤Ê¤ë¤«¤Ê¤È»×¤Ã¤Æ
¤¤¤Þ¤¹.
ñ¤Ëreturn foo;¤Ê¤é¥¤¥ó¥é¥¤¥óŸ³«¤ÇƱ¤¸·ë²Ì¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¤·.

¤·¤«¤·¡¢get???()¤¬¾ï¤Ënull¤òÊÖ¤µ¤Ê¤¤¤³¤È¤òÁ´¤Æ¤Î¥Õ¥£¡¼¥ë¥É¤Ë¤Ä¤¤¤ÆÊÝ
¾Ú¤¹¤ë¤è¤¦¤Ê(lazy initialization)Ìó«¤òºî¤ë¤Î¤Ï¤Á¤ç¤Ã¤ÈÀ­Ç½Åª¤ËÌäÂê
¤Ë¤Ê¤ëµ¤¤¬¤·¤Þ¤¹.
get???()¤¬null¤òÊÖ¤¹¤³¤È¤¬¤¢¤Ã¤¿¤ê¡¢ÊÖ¤µ¤Ê¤¤¤³¤È¤òÊݾڤ·¤Æ¤¤¤¿¤ê¤Þ¤Á
¤Þ¤Á¤Ç¤¢¤ë¤³¤È¤Ïº£¤Ç¤âÊѤï¤é¤Ê¤¤¤Î¤ÇÊÌÌäÂê¤Ç¤Ï¤¢¤ê¤Þ¤¹¤¬...


¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡
mailto:shin@xxxxxxxxxx
mailto:shinq@xxxxxxxxxx
°ìǯȾ¤¯¤é¤¤¥á¥ó¥Æ¥Ê¥ó¥¹Ãæ°·¤¤¤À¤Ã¤¿URL¤ò¤½¤í¤½¤í¸ø³«¤·¤è¤¦¤«¤Ê.
¼è¤ê¹ç¤¨¤º¤³¤Ã¤Á¤Ç¤À¤±:)
http://village.infoweb.ne.jp/~shinq/
¤³¤ì¤ÇÄøÅÙ¤¬¤Ð¤ì¤Æ¤·¤Þ¤¦¤Î¤Ç¤¹¤¬...
¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡¨¡