Deno向けのささやかな契約プログラミングユーティリティ、"Code Contract Deno"をGitHubに公開しました。
コードを見ていただければおわかりかと思いますが、Proof of Conceptというかネタです。JavaScriptなら契約プログラミングを関数のラップで実現できるのでは?と思いついたので試してみたもの。記述が冗長になるので全面適用には向かないなと自分でも思いますが、重要な関数だけ厳しく検証したいときには十分使えるのではないかと作ってみて思いました。よろしければどうぞ。
……とはいえDenoで何かするという人はまだ多くはないかもしれません。ターゲットをnpmではなくDenoにしたのは、登録がDenoのほうが圧倒的に簡単なのと、Denoの公式レジストリに契約プログラミング関連のモジュールが見当たらなかったから(npmには複数存在)。開発者体験(DX)という面から見るとnode.jsよりDenoのほうが圧倒的によいということもありました。 package.json
のことなどをあれこれ考えなくてよいのはすごい楽。
いまのところDenoで何かしようというアイディアはなく、もうすこしエコシステムが整わないとむずかしいかなという思いもあるのですが、もっと実用的になってきたらこちらを活用したいと思います。