読者です 読者をやめる 読者になる 読者になる

What one likes, one will do well 〜好きこそ物の上手なれ〜

寄り道しながらも、最後は昔から好きな物理とプログラミングに戻ってくる。そんな男の思いをつづるブログです。

twitterをはてなブログに投稿するgemを改善


以前にtwitterのつぶやきをブログに残していきたいと思って、gemを作成しました。

 

takus4649.hatenablog.com

 

最初は毎日ブログにつぶやきを投稿していたのですが、twitterの利用頻度が増えるとブログ記事がつぶやきで埋まってしまうので、1ヶ月に1回の投稿に変えました。その時gemを直していたのですが、急いで直したこともあり使い勝手がよくなかったです。

自分の使い方に合わせてgemを修正して、やっと使いやすくなりました。自分用ですが、改善した内容をまとめておきます。

ちなみに投稿はslack経由でrubotyに実行してもらっています。

使い勝手が悪かった点は以下の2点です。

1つ目は、

post_between 開始日 最終日

という形の命令が長く日付指定が面倒だったという点につきます。

postという形の命令にしたかったのですが、毎日の投稿用使っていたため長い命令になっていました。そこで今や使っていない毎日の投稿処理をなくし、postで前月の投稿するように変更しました。

実処理はruboty用のgemとは、別のgemとして作成していたため変更は楽でした。

2つ目は、ruboty-twitterToHatenaからEditTwitterとPostToHatenaの2つのgemを呼んでいました。でも2つに分ける必要ないと思い統合しました。2つのgemを使っていた時はrubotty-twitterToHatenaで制御する処理が必要になっていたのですが、統合することで1つのメソッドを呼ぶだけのシンプルな作りになりました。

PostToHatena1つに統合したのですが、それに合わせてリファクタリングも実施持しました。DRY原則を適用して重複の部分を大きく減らせました。

動いているものを変更して改善するのは重い腰を上げないといけないのですが、改善した後の爽快感は最高です。

こう感じる事ができるようになったのは、テストを書くようになった事、リファクタリングをするようになった事が大きいと思います。テストなしだとやりたいとは思いません。

みんなもテストを書いてリファクタリングしましょう。

一応コードを公開しておきます。

github.com