ã¯ããã« è¬ç¾©ãªã©ã§åãã¦ãã¯ãã«è§£æãç¿ã£ãæï¼âé£ããâï¼âããããããâã¨æã£ãçµé¨ãããã¾ãããï¼å®ã¯ç§ããã®ä¸äººã§ãï¼ãã¾ã ã«è©³ããã¯ãããã¾ãããï¼ããã¾ã§ç§ãæ©ãã éç¨ãããã«ãç´¹ä»ãã¦ï¼ãããåèã«ãªãã°ã¨æãã¾ãï¼ åè¬ç¾©åæ¥ ãã¯ãã«è§£æã£ã¦ï¼ãã¯ãã«ã使ã£ã¦åé¡è§£ãããããã®ã§ããããï¼ãã¯ãã«ãªãé«æ ¡ã®æ°å¦ã§ç¿ã£ããï¼è¦ããã«å¤§ããã¨ï¼æ¹åï¼åãï¼ãæã¤æ¦å¿µã§ãããï¼ç¢å°ä½å³ãã¦è¶³ãç®ãããï¼å¼ãç®ãããï¼å¤§ãããå®æ°åãããï¼ç¹ã«å§ç¹ãåç¹ ã«ããã°çµç¹ã®åº§æ¨ ã§ãã¯ãã«ã表ãã¡ããã¾ãï¼ä½å³ããªãã¦ãï¼ãããã風ã«æå表示ããã°è¶³ãç®ï¼å¼ãç®ãç°¡åã§ãï¼å ç©ã ã£ã¦ãããã¾ãï¼æåã§æ¸ã㨠ã¨ããã°ããã®ã§ãï¼ç°¡åï¼ãªã¯ãã§ãï¼ ããããäºãªãã§ããï¼ãã£ã¨ï¼å®ã¯ææ¥ãã¯ãã«è§£æã®åè¬ç¾©ãªãã§ããï¼äºç¿ãªãã¦ããªãã§å¯ã¡ããã£ã¨ã»ã»ã»ï¼ ç¿æ¥åè¬ç¾©çµäºï¼ã¨ãããï¼
ã使ãã®ãã©ã¦ã¶ã¯ã¤ã³ã©ã¤ã³ ãã¬ã¼ã ããµãã¼ããã¦ããªãããã¾ãã¯ã¤ã³ã©ã¤ã³ ãã¬ã¼ã ã表示ããªãããã«è¨å®ããã¦ãã¾ãã
éçã³ã¼ã解æ (ããã¦ãã³ã¼ããããããstatic code analysis) ã¾ãã¯éçããã°ã©ã 解æ (static program analysis) ã¨ã¯ãã³ã³ãã¥ã¼ã¿ã®ã½ããã¦ã§ã¢ã®è§£æææ³ã®ä¸ç¨®ã§ãããå®è¡ãã¡ã¤ã«ãå®è¡ãããã¨ãªã解æãè¡ããã¨ãéã«ã½ããã¦ã§ã¢ãå®è¡ãã¦è¡ã解æãåçããã°ã©ã 解æã¨å¼ã¶[1]ãéçã³ã¼ã解æã¯ã½ã¼ã¹ã³ã¼ãã«å¯¾ãã¦è¡ããããã¨ãå¤ãããå°æ°ãªãããªãã¸ã§ã¯ãã³ã¼ãã«å¯¾ãã¦è¡ãå ´åããããã¾ãããã®ç¨èªã¯ä»¥ä¸ã«åæãããã¼ã«ã使ç¨ãã解æãæå³ãããã¨ãå¤ãã人éãè¡ãä½æ¥ã¯ã¤ã³ã¹ãã¯ã·ã§ã³ãã³ã¼ãã¬ãã¥ã¼ãªã©ã¨å¼ã¶ãæ¥æ¬èªã§ã¯éçã³ã¼ãåæã¨ã訳ããã[2]ã ãã¼ã«ãè¡ãéçã³ã¼ã解æã®æ´ç·´åº¦ã¯ãåã ã®æã宣è¨ã ããæ¤è¨¼ãããã®ãããããã°ã©ã å ¨ä½ã解æãããã®ã¾ã§æ§ã ã§ããã解æçµæã®å©ç¨ãæ§ã ã§ãLintã®ããã«åã«ææããã ãã®
ã¯ããã« ããã°ã©ãã«ã¯ãããã¥ã¡ã³ããã¨ãã«ããã°ã©ã ã®å é¨ä»æ§æ¸ãæ¸ãã®ãè¦æã ã¨ãã人ãå¤ãã ãã®çç±ã¯æããã§ãã£ã¦ããããããã½ã¼ã¹ã³ã¼ãã« (ãã°ãå«ãã¦)*1 ãã¹ã¦ã®ä»æ§ãåç´°ããããæ¸ããã¦ããã®ã«ããªããããã«ããã¨ç¬ç«ããä»æ§æ¸ãå¿ è¦ãªã®ãã¨ã (åã°æ¬æ°ã§) æã£ã¦ãã¾ãããã§ããã ã½ã¼ã¹ã³ã¼ãã¨ç¬ç«ã«ã¡ã³ããã³ã¹ãããªããã°ãªããªããããªä»æ§æ¸ã¯ã ãããã½ã¼ã¹ã³ã¼ãã¨æ´åæ§ãåããªããªã£ã¦ãç¡æå³ãªãã¾ã ããã ããã£ã¦å®³ããªãåå¨ã¨ãªãæã¦ããã¨ããããã¨ãããã¨ãã å½¼ãã¯çµé¨çã«ç解ãã¦ããã®ã§ããã (*1) Ruby ã®ä½è ã§ãããã¾ã¤ãã¨ããã²ãæ°ã¯ã ãã®èè ããªãã¸ã§ã¯ãæåã¹ã¯ãªããè¨èª Rubyãã®ä¸ã®ãä»é²C Ruby ç¨èªéãã§ã 次ã®ããã«æ¸ãã¦ãã: ããã¥ã¡ã³ã ã¾ã¤ãã¨ã®è¦æãªãã®ãå½¼ã¯æ®æ®µãããã½ã¼ã¹ãããã¥ã¡ã³ãã ã
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}