米GitHubは2月3日、コードパスをリファクタリングするRubyライブラリ「Scientist 1.0」を公開した。重要なコードの書き直しと置き替えを安全かつ確実に行うことができるツールを目指すという。 Scientistはコードのリファクタリングを行う際に利用するツール。最初のバージョンは2014年2月に公開された。 数年前、GitHub内でアプリケーションにおいてアクセス制御のパーミッションコードなどの最も重要なシステムを書き換えるにあたって、作業を確実に行うために開発されたという。リファクタリングでは抽出レイヤを挿入する「Branch by Abstraction(BBA)」手法があるが、この手法では新しいシステムの振る舞いが置き替えたいシステムと同等かを確認できないという問題点を指摘している。一方で、テストについても、すべての可能性を網羅できないなど限界があるとしている。 Sci
![米GitHub、Ruby向けのリファクタリング支援ツール「Scientist 1.0」を発表 | OSDN Magazine](https://cdn-ak-scissors.b.st-hatena.com/image/square/4196864a37518a8c4219cc80d90c0a0b1a82a491/height=288;version=1;width=512/https%3A%2F%2Fmag.osdn.jp%2Fimages%2Fmag%2Fmagazine-200x200.png)