退屈なことはcodemodにやらせよう!自動リファクタリングツールの実装から学ぶJavaScriptとTypeScriptのAST by Hirai Shuta

フロントエンドカンファレンス北海道2024
レギュラートーク(20分)

退屈なことはcodemodにやらせよう!自動リファクタリングツールの実装から学ぶJavaScriptとTypeScriptのAST

did0es Hirai Shuta did0es
5

機械的に手を動かして書き換えるだけのリファクタリング作業は、なるべく避けたいものです。
ひとつふたつ書き換えるだけであれば問題ありませんが、それが幾多にも及ぶと手に負えません。

codemod はそういった作業を代行してくれる強力なツールです。
一方で、このツールの実装には抽象構文木(以下、AST) の知識が必要なことから、敷居が高いという印象を持たれてしまいがちです。

このセッションでは jscodeshift という Meta 製のライブラリを用いた codemod の開発方法をご紹介します。
開発を通して、jscodeshift がベースとしている Recast という ASTパーサーへの理解を深めつつ、JavaScript と TypeScript の ASTをマスターし、面倒なリファクタリングを苦もなくこなす便利な codemod を作れるようになりましょう!