2010å¹´ç¾å¨ã®ã¢ã¯ã»ã¹ã¬ãã«ã®éç
前提条件を破った場合、どのような挙動をするのか? - 都元ダイスケ IT-PRESSã§è¨åãããã£ãã®ã§
ç¾ä»£ã¯ï¼ã¤ã®ã¢ã¯ã»ã¹ã¬ãã«ã§ã®å¯è¦æ§å¶å¾¡ã®éçãåããã¦ãã¦ãæç ´ããããã«ãããã模索ãã¦ããã¨ãã
はてなブックマーク - Nagiseのブックマーク / 2009年12月24日
ã«ã¤ãã¦ã¡ãã£ã¨å ·ä½çãªè©±ããã¦ãããã
ããã®ããã¯ãã¼ã¯ã³ã¡ã³ãã¯可視性と公開APIと非公開(内部)APIと - 都元ダイスケ IT-PRESSã«å¯¾ãã¦ã¤ãããã®ã ã£ãããã®ã¨ã³ããªã¯è¨è¨ããéã«Javaã®4ã¤ã®ã¢ã¯ã»ã¹ã¬ãã«ãã©ã使ãåããããæ¸ããè¯ã¨ã³ããªã ã¨æãã
privateã§å°ãä¾ï¼èªåãã¹ã
ãJUnitã¨ãã£ãèªåãã¹ãã³ã¼ããæ¸ããã¨ãèãã¦ã¿ãããã¯ã©ã¹å ã ãã§åå©ç¨ãããåé·ã³ã¼ããprivateã¡ã½ããã¨ãã¦æ¬ãåºããããã®ã¡ã½ãããåä½ç¬ç«ã§åä½æ¤è¨¼ãå¯è½ãªã®ã§ããã°ããã®I/Oãèªåãã¹ãã§æ¤è¨¼ã§ããããã«ãã¦ãããããã¨èããã®ã¯èªç¶ãªåºæ¥äºã ããã
ãããããprivateã¢ã¯ã»ã¹ã¬ãã«ã ã¨é½åãæªãã®ã§ãå®ç¨ä¸ã¯ããã±ã¼ã¸ãã©ã¤ãã¼ãã«ã¢ã¯ã»ã¹ã¬ãã«ãåºãã¦ãããã¨ã«ãªããããããããã¯å®ç¨ä¸ã®å¦¥åã®ç£ç©ã§ãã£ã¦ããã®ã¡ã½ããã¯æ¬è³ªçã«ã¯å¤ããã¢ã¯ã»ã¹ãããªããã¨ãæ³å®ããè¨è¨ãªã®ã ã
ãããã«ãèªåãã¹ãã®ãã¬ã¼ã ã¯ã¼ã¯ã«ã¯ç¹æ¨©çã«ã¢ã¯ã»ã¹ããããããæ¬è³ªçã«ã¯å¤é¨ããã¢ã¯ã»ã¹ããããããªãã¨ããã·ãã¥ã¨ã¼ã·ã§ã³ãçã¾ããã
épublicã§å°ãä¾ï¼DIã³ã³ãã
ãDIã³ã³ãããã©ã®ãããªè¦ç¹ã§æããããã¨ããã®ã¯å¤èª¬ããã¨ããã ããã
ãã²ã¨ã¤ã®è¦æ¹ãã¨ããæãã®ä¸ã§ã ããæ¨æ§é ãæã¤ãªã©æ¯è¼çè¤éãªã¤ã³ã¹ã¿ã³ã¹ã®æ§ç¯ã宣è¨çã«è¡ãããã¨ããè¦ç¹ã§DIã³ã³ãããå©ç¨ããã±ã¼ã¹ãããã
ã宣è¨çã«ãã¨ããã®ãããããå°éç¨èªçãããã¨ãã°æ¨æ§é ã®ãããªé層ãæã¤ãã¼ã¿ãä½ãã¨ããã®ã«æç¶ãåè¨èªã¨ããã®ã¯åãã¦ããªããé çªã«æµãã¦å¦çãè¡ãããããªãã¦ã®ã¯ã©ãã§ãè¯ãã¦ãã©ã®ãã£ã¼ã«ãã«ã©ã®å¤ãå ¥ãããã宣è¨ã§ããã°äºè¶³ãããã¨ããããä½è¨ãªãã®ãããã¨ãããè¦ã«ããã
ãXMLå½¢å¼ã¨ãJSONå½¢å¼ã¨ãã¯é層æ§é ãæã¤ãã¼ã¿ã表ç¾ããæ段ã¨ãã¦ã¯ãã¿ã¼ãªææ³ã ãããã°ã©ã ã§ãã¡ãã¡setterã§ãã¼ã¿ãæå ¥ããã®ã«æ¯ã¹ãã°ã¨ã¦ãè¦éããããã
ãã§ãã¯ã©ã¹ã®ã¤ã³ã¹ã¿ã³ã¹ãæ§ç¯ããã®ã«ããããã宣è¨çãªè¡¨ç¾ã使ããã°è¯ãã®ã ãã©ãä»ç¾å¨ã®ããã°ã©ã è¨èªã§ã¯ãããã宣è¨åã¨ãããã©ãã¤ã ã¯ã¾ã æ¬æ ¼çã«åãå ¥ãããã¦ããããé渡æã«ããã¨è¨ãããããã®ä»£æ¿ã¨ãã¦ã®DIã³ã³ãããã¨ããè¦æ¹ããããã¨ããã話ã
ããããªDIã³ã³ããã ããã¤ã³ã¹ã¿ã³ã¹ãæ§ç¯ããã®ã«ãã¾ãã¯newãã¦ã¤ã³ã¹ã¿ã³ã¹ãçæãã¦setterãªããã£ã¼ã«ãã¸ã®ç´æ¥ã¢ã¯ã»ã¹ãªãã§ä¸ä½ã®ãã¼ã¿ãæå ¥ããã¨ãã£ããã¨ãããªãã¦ã¯ãªããªãããã®éã«ãã¢ã¯ã»ã¹ã¬ãã«ãpublicã§ãªãã¨å°ãã
ããã¼ã¿ã®æ§ç¯ã¨ããç¹ä¾ã ãç¹æ¨©çã«ã¢ã¯ã»ã¹ã¬ãã«ãç·©ãããããé常å¤ããã¯å¤æ´åºæ¥ãªãã§ãã£ã¦æ¬²ãããã¨ãããã£ã¼ã«ããåå¨ããã
æ°ãã解決æ¡ï¼ã¹ã¼ãã¼ããã±ã¼ã¸
ãç¾å¨ææ¡ããã¦ããæ¹åæ¡ã¨ãã¦ã¯ãã¹ã¼ãã¼ããã±ã¼ã¸ã¨ãããã®ããããhttp://journal.mycom.co.jp/column/jsr/037/index.htmlããããåç §ãã¦è²°ãã¨ããã ããã
- ããã±ã¼ã¸ãä»ã®ã¹ã¼ãã¼ããã±ã¼ã¸ã¨ãã®ã¿ã¤ãã®éå
- æ示çã«"Export"ãããã¡ã³ãã®ã¿å¤é¨ããã¢ã¯ã»ã¹ã§ãã
- "Export"ããã¦ããªãã¡ã³ãã¯ãåãã¹ã¼ãã¼ããã±ã¼ã¸å ã®ä»ã®ã¡ã³ãããã®ã¿ã¢ã¯ã»ã¹ã§ãã
- Javaã½ã¼ã¹ãã¡ã¤ã«ã«ãã£ã¦å®ç¾©ããJavaã³ã³ãã¤ã©ã«ãã£ã¦ã³ã³ãã¤ã«ã§ãã
ããã«ãã£ã¦ãããããã±ã¼ã¸ãå ¬éãããé è½ãããããããã±ã¼ã¸ãã¨ã«å¶å¾¡ãããã¨ãå¯è½ã«ãªã
http://journal.mycom.co.jp/column/jsr/037/index.html
ã¨ãã£ã代ç©ã ãããã決å®æã«ãªãã¨ã¯èãã¦ããªãããããããã¯æ¹åãããã ããã
ã2010年代ã«ã¯ã©ã®ãããªãã©ãã¤ã ã§ããã°ã©ã è¨èªãé²åãã¦è¡ãã®ã ãããã