TOPSoftware > 大規模開発に適した言語、TypeScriptとは何か(後)

Software

大規模開発に適した言語、TypeScriptとは何か(後)

2017/11/30

Jon Udell InfoWorld

TypeScriptとテスト

 JavaScriptのような動的型付け言語が広まっていった頃、たまたま時を同じくして、セルフテスティングコードを作成する習慣への評価も広がった。結果として、この2つの流れを融合する傾向も生じた。テストの範囲が十分に万全であれば、静的型付けのオーバーヘッドが発生するわけはないと言う人もいる。

 静的型付けが不要になるようなテストの作成が可能かどうかについては議論の余地がある。だが、大規模開発では型安全性が重要になるという意見に同意するのであれば、TypeScriptはテストへの取り組み方を検討する契機になる。

 テストは、結局のところ新たな種類のオーバーヘッドをもたらす。すなわち、さらなるコードの作成と保守が必要になる。私見では、機械的にテストできることは、機械的にテストすべきだ。2つのオブジェクトが互換かどうかをコンピュータが判断できるのであれば、その仕事はコンピュータに任せたほうがいい。テストの作成は、テスト対象のソフトウエアの作成と同じで、創造的な作業だ。人間の知性が必要であり、人間の知性から恩恵を得られる。その観点で言えば、自動的な型チェックは、人間の創造性を解放して、より重要な用途に注ぐための方法の1つだ。

 そうした重要な用途の1つが、効果的な命名だ。「コンピュータサイエンスで難しいことが2つだけある。キャッシュ無効化と命名だ」という言葉がある。変数、関数、クラス、モジュールの名前は、最も根本的な種類の記録だ。

↑ページ先頭へ