次ã«ï¼GRASPãã¿ã¼ã³ãå®éã«ã©ã®ããã«ä½¿ããã説æããããããã§ã¯ï¼ã¯ã©ã¤ã¢ã³ãã»ã¢ããªã±ã¼ã·ã§ã³ã§ããã¯ã¼ããã»ã½ãããä¾ã«æãããã¯ã¼ããã»ã½ããã§ã¯ãã¡ã¤ã«ã®å°å·ãå®è¡ãããã¨ããã¨ï¼å°å·æ¹æ³ãè¨å®ããããã®ã¦ã¤ã³ãã¦ãç»é¢ã«è¡¨ç¤ºãããããã®ã¦ã¤ã³ãã¦ã¯ï¼ããã¹ãï¼ãã¿ã³ï¼ããã¹ãããã¯ã¹ãããªãããã®ã¦ã¤ã³ãã¦ããã¤ã¢ãã°ããã¯ã¹ã ã ãã®å ´åï¼ããã¹ãï¼ãã¿ã³ï¼ããã¦ããã¹ãããã¯ã¹ã¨ãã3ã¤ã®ãªãã¸ã§ã¯ãããçæãããã¨ãã責åã¯ï¼ã©ã®ãªãã¸ã§ã¯ãï¼ã¯ã©ã¹ï¼ã«å²ãå½ã¦ãã¹ãã ããããåè£ã¨ãã¦ãã¤ã¢ãã°ããã¯ã¹èªä½ã¨ã¯ã©ã¤ã¢ã³ãã»ã¢ããªã±ã¼ã·ã§ã³ã®2ã¤ãèããããã ããã§å½¹ã«ç«ã¤ã®ããCreatorãã¿ã¼ã³ãã§ããããã®ãã¿ã¼ã³ã¯ï¼ããªãã¸ã§ã¯ããçæãã責åã誰ã«ï¼ã©ã®ãªãã¸ã§ã¯ãã«ï¼å²ãå½ã¦ããããå¤æããå ´åã«ä½¿ãããã¿ã¼ã³ã«ãã解決çã¯ï¼ããã®ãªãã¸ã§ã¯ããéç´ã¾
ãªãã¸ã§ã¯ãæåè¨è¨ã§ã¯ï¼é©åãªã¯ã©ã¹ã«é©åãªå½¹å²ï¼è²¬åï¼ãå²ãå½ã¦ããã¨ãèå¿ã§ãããè¨è¨ä½æ¥ä¸ã«ééãããã¾ãã¾ãªé¸æè¢ããï¼å¯¾è±¡ã¨ãªãã·ã¹ãã ã«å¿ãã¦æé©ãªå¤æãä¸ãå¿ è¦ããããããã§ã¯ï¼å¤æã®ããã©ããã¨ãã¦æå¹ãªææ³ã§ãããGRASPãã¿ã¼ã³ããç´¹ä»ããã èªè ã®ä¸ã«ã¯ï¼å®éã«æ¥ã ã®æ¥åã®ä¸ã§ï¼ãªãã¸ã§ã¯ãæåè¨è¨ã«æºãã£ã¦ããITã¨ã³ã¸ãã¢ãå¤ããã¨ã ããããããã人ãã¡ã¸è³ªåããããæ確ãªæ¹éãæã£ã¦è¨è¨ãè¡ã£ã¦ããã ãããããè¨ããã¦ã¿ãã°ï¼ãã¾ãæèãããã¨ã¯ãªããªãã¨ãã人ãï¼æ¡å¤å¤ãã®ã§ã¯ãªãã ãããã ãªãã¸ã§ã¯ãæåè¨è¨ã¨ã¯ï¼ã·ã¹ãã ã«å¯¾ããæ§ã ãªæ¡ä»¶ãå¶ç´ãèæ ®ãï¼ãªãã¸ã§ã¯ãã®æé©ãªå½¹å²ã¨ï¼è¤æ°ã®ãªãã¸ã§ã¯ãã®å½¹å²ã«ã¤ãã¦å調é¢ä¿ãæ§ç¯ãã¦ããä½æ¥ã§ãããå½¹å²ã¨ã¯ï¼ããªãã¸ã§ã¯ããæããã¹ãæ©è½ãã®ãã¨ã§ï¼ãªãã¸ã§ã¯ãæåã§ã¯ã責åï¼Responsibilit
GRASPã¨ã¯ãGeneral Responsibility Assignment Software Patternãããã¯Principleï¼æ±ç¨ç責任æ§å²ãå½ã¦ãã¿ã¼ã³/ååï¼ã®é åèªã§ããããªãã¸ã§ã¯ãæåè¨è¨ã«åããä¹ã¤ã®ååã»ããã¾ãã¯ãã¿ã¼ã³ã»ããã§ãã[1]ãè¨ç®æ©ç§å¦è ã¯ã¬ã¼ã°ã»ã©ã¼ãã³ï¼è±èªçï¼ã®1997å¹´èä½ãå®è·µUMLãã¿ã¼ã³ -Applying UML and Patterns-ãã§åãã¦ç´¹ä»ããã¦ãã[2]ã ãã½ããã¦ã§ã¢éçºã«ããã¦æ±ºå®çãªè¨è¨ãã¼ã«ã«ãªãã®ã¯ãè¨è¨ã®ååã®ä¸ã§ç£¨ãä¸ããããã¡ã³ã¿ã«ã§ãã£ã¦ãUMLããã®ä»ã®ãã¯ããã¸ã¼ã§ã¯ãªãããã©ã¼ãã³ã®ä¸»å¼µã§ãã[3]ãGRASPã¨ã¯ãªãã¸ã§ã¯ãæåéçºãå©ããããã®ã¡ã³ã¿ã«ãã¼ã«ï¼mental toolï¼ã§ããã¨å®ç¾©ãã¦ãã[1]ã 質åï¼ãªãã¸ã§ã¯ãã«è²¬åãå²ãå½ã¦ãååã¨ã¯ä½ãï¼ åçï¼ãã®è²¬åãå ¨
ã³ã³ãã³ã 第1ç« åºæ¬çãªç¨èª 第2ç« ãªãã¸ã§ã¯ãæåéçº ç¬¬3ç« è¨è¨ã®åé¡ã 第4ç« ãªãã¸ã§ã¯ãæåè¨è¨ã®åå 第5ç« åä¸è²¬ä»»ã®åå 第6ç« Visitor ãã¿ã¼ã³ 第7ç« LSPãDIPãISP 第8ç« ãã¿ã¼ã³æè¡ ç¬¬9ç« ã¦ã¼ã¹ã±ã¼ã¹ 第10ç« å®ä¾ 第1ç« åºæ¬çãªç¨èª 第2ç« ãªãã¸ã§ã¯ãæåéçº ãªãã¸ã§ã¯ãæåéçº ãªãã¸ã§ã¯ãæååæ æ©è½å¤è¦æ± User ã¤ã³ã¿ãã§ã¼ã¹ Student ã¯ã©ã¹ã¨Teacher ã¯ã©ã¹ Student ã¯ã©ã¹ã®ã½ã¼ã¹ã³ã¼ã Teacher ã¯ã©ã¹ã®ã½ã¼ã¹ã³ã¼ã æ¼ç¿2-1 UserLocator ã¯ã©ã¹ã®ã½ã¼ã¹ã³ã¼ã æ¼ç¿2-2 æ¼ç¿2-2 ã®è§£ç Teacher.java UserLocator.class 第3ç« è¨è¨ã®åé¡ æ¼ç¿3-1 æ¼ç¿3-1 ã®è§£ç1ï¼è¿å´å¤ãå©ç¨ããæ¹æ³ï¼ æ¼ç¿3-1 ã®è§£ç2ï¼æ¡ä»¶åå²ã«ããæ¹
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}