ãããã¬ã使ãã®ã¯å¹çãããã®ã
ãããã話ã§ã:
ç¾ä»£ã«ããã¦printãããã°ãªãã¦æ¥ãããããã®ããããã¬ã¼ã使ãããªããªãã¨ãããªããã£ã¦èªèãã¦ããã©ã以å¤ã¨printãããã¯ã®æ¹ããµã¯ãã¨æ°è»½ã«ã§ãã¦è¯ãã¨ãã£ã¦ã人ãå¤ãã¦å®å¿ãããï¼vim-jpãã
— ã¦ãã¾ã (@teramako) 2022å¹´3æ28æ¥
以ä¸ã®è¨äºã«ä»¥åæ¸ãããã¨ããã£ããã©ãå¥ãªè©±é¡ã1ã¤ã®è¨äºã«æ··ãã¦ããã¨å¾ããåç §ãã¥ãããããç¬ç«ããè¨äºã«èµ·ãããã ãã§ãã¨ãã«æ°ãã話ã¯ããã¾ããã
ãã®è¨äºã¯Emacsã®dap-mode (debug adapter protocolã®ããã®ãã©ã°ã¤ã³)ãScalaã§æå¹ã«ããæ¹æ³ãæ¸ãããã®ã§ããããããã¯æ¬å½ã«è¦ãã®ã? ã¨ããçåãããã¾ãã
ãããã¬ã¯æ¬å½ã«ä½¿ãã®ã
ãã¹ãã®åä½å®è¡ã¯(debug
ã§ã¯ãªãrun
ã®æ¹ã§)æ¯æ¥ä½¿ã£ã¦ããã©ãdap-modeã®ãããã¬ã¯æ£ç´ã¾ã ä¸åº¦ãå½¹ç«ã£ããã¨ããªãã§ãããããã°ã©ãã³ã°ãåãã¦ããã®ã¯Visual C++ 6.0ä¸ã ã£ãã®ã§ãã¹ãããå®è¡ãã¦ãã¼ã«ã«å¤æ°ã®ç¶æ
ã確èªããªãããããã°ã§ããã®ãåå¦è
ã«ã¨ã£ã¦å½¹ç«ã¤ã®ã¯éã
æ¿ç¥ãã¦ãããã®ã®ãè·æ¥ã½ããã¦ã§ã¢ã¨ã³ã¸ãã¢ããã£ã¦ãã¦æãã®ã¯ãããã¬ã«ãããããã°ã¯ããªãã¨ãããé
ããå人çã«ã¯ãããã°æ¹æ³ã¯ä»¥ä¸ã®é ã§æ©ãã¨æã£ã¦ãã¾ãã
- 念åãããã°
- ç¾è±¡ã ããè¦ã¦ãã³ã¼ããå
¨ãè¦ãªãã§ãã°ã®åå ç®æãå½ã¦ã
- ããããã®ã³ã¼ãããããªã£ã¦ããããã®ãã°ãå¼ãèµ·ãããããã¨ãã仮説ãç«ã¦ã
- å®éãã®ã³ã¼ããè¦ã«è¡ã£ã¦ãã»ããã£ã±ããããªã£ã¦ããããããã¡ã ãããç´ãããã¨ãã
- (åå ç®æãå½ã¦ãã®ã ããã£ã¦ãã³ã¼ãã®ç¢ºèªã¨ä¿®æ£ãä»äººã«ä»»ããã®ãçã®å¿µå)
- çç¥ããã³ã¼ããã¼ã¹ã®ã·ã¹ãã ã«å¯¾ãã¦ããã§ããªã
- ç¾è±¡ã ããè¦ã¦ãã³ã¼ããå
¨ãè¦ãªãã§ãã°ã®åå ç®æãå½ã¦ã
- ã³ã¼ã«ããªã¼ãã£ã³ã° (æ¬æ¥ã®æå³ã¨ã¯éãã¨æããã©èªåã®é ã®ä¸ã§ããå¼ãã§ãã¾ã£ã¦ã)
- ã³ã¼ãã ãèªãã§ãå®è¡ã¯ããã«ãã°ã®åå ãç¹å®ãã
- ãã³ã¼ã«ããã¨ãããéç
- printfãããã°
- é¢ä¿ãããããªå¤ãæ ¹ãããåºåãã¦ãã
- å®è¡ãçµãã£ãå¾ã§è½ã¡ã¤ãã¦ä¸ã¤ãã¤è¦ã¦ãã£ã¦ãããããªãç®æãæ¢ã
- ãã°ã¬ãã«
DEBUG
ã¨ãã§ããããåãããã«ãã¦ããã¦ãããçºããã®ãå«ã - DBã«æãã¦ãSQLãããã¶åºåããç
- ãããã¬ã§è¿½ã
ãããã¬ã使ãå ´åãã¾ãããããããã®ãé ãããã¬ã¼ã¯ãã¤ã³ãã§æ¢ã¾ã£ããã©ãããããã®åãããªãã¦ãã£ã¨å¾ã§åãã¡ã½ãããå¼ã°ããæã«ãã¶ããããããã ããªãããããè¡ããããããã£ãããããããã¼ã¨ãã®å¤æ°ããããªã£ã¦ãããããã¡ãã£ã¨å ã§ãã¡ã«ãªããããªãããããããã¿ã¤ã ã¢ã¦ãããããããããç´ã...... ã¿ããã«ãªããã§ããããåã ãããªã使ãæ¹ãä¸æãªãã ããã¨ã¯æããã©ããã£ã¦ããã¡ã«ããã¼ãããã鬱é¶ãã! ãããªããé¢ä¿ãããããªå¤ãããã¶åºåãã¦ããã¦å®è¡ãçµãã¦ããè¦ãã£ãããããã!ãã¨ãã¬ã¦ãã¾ãã
ãã¾ã使ãã°ãã£ã¨printfãããã°ããå¹çããã£ãããããã ãããã©ãããã§ãåçä¸ã念åãããã°ã¨ã³ã¼ã«ããªã¼ãã£ã³ã°ããæ©ããã¨ã¯çµ¶å¯¾ã«ãªãã¦ãä»äºã§é·ãã¡ã³ããã¦ããã·ã¹ãã ã®ãããã°ãããã¨ããªããã¯ã ãããããã§æ¸ãã§ã¾ããã
å®éã«ä½¿ããããªå ´é¢
ãã¡ããå ¨ã使ããªãããã§ã¯ãªãã¦ãæè¿ã ã¨ãã¨ãã°renovateã«pull requestããã¨ãã«ãæåãããããããªãã¦æå³éãã«ãããªãã£ãã®ã§ãããã¬ã§è¿½ãã¾ãã(ãã ãNode.jsç°å¢ãdap-modeã§ãããã°ããã®ããã¾ããããããã©ã¦ã¶ãããããã°ç¨ã®ãã¼ãã«æ¥ç¶ãããã¤ã§ãã£ã¦ãã¾ã£ã)ã
ã¾ãããã¨ããã¨ãã®ããã«ä½¿ããããã«ãã¦ããã«è¶ãããã¨ã¯ãªãã¨ã¯æãã¾ãã
ãããã¬ã使ãããªãã¦ã¦ãã£ã¡ã®æ¹ãã ãããæ©ãæ¸ãã£ã¦ãã人ãããããããéã«è©±ãèãã¦ã¿ãã(ãããã°ãã¦ãæ§åãé£ã§çºãã¦ã¿ãã)ã
https://twitter.com/oarat/status/1508325821882150912