ts.createProgram()のパフォーマンス改善
TypeScriptのモジュールを使って80個ほどの型定義を作成しようとしたとき、パフォーマンスがかなり悪かった。
Before: 1m30s
function extract(path: string, config: Config): Docs {
const program = ts.createProgram(path, {})
const source = program.getSourceFile(path)!
...
}
After: 1.5s
createProgramが遅いので、複数回呼び出すのを避ける。
const program = ts.createProgram(paths, {})
function extract(path: string, config: Config): Docs {
const source = program.getSourceFile(path)!
...
}