くりにっき

フルスタックキュアエンジニアです

AZusaar! を全面リファクタリングしました

全面リニューアルではなく全面リファクタリングです。

AZusaar!のjsがいろいろと酷かったので1ヶ月半くらいかけてちまちまリファクタリングしていました

Before
https://github.com/sue445/azusaar_js/tree/c87e7bb098b50ae3cc32b6b687f17f5bff7568b9
After
https://github.com/sue445/azusaar_js/tree/32f2f01a68cce667268853c586d6568b3189d137

全然原型をとどめてない(ノ∀`)

Github: https://github.com/sue445/azusaar_js
リファクタリング用に作ったリポジトリですが、Githubにコードを置いておくと(自分が)何かと便利なのでそのままにしておきますw


最初の頃は「テスト駆動JavaScript」を読んだ直後だったのでJsTestDriverでテストコードを書いていたのですが、日本語でassertすると文字化けするという問題にぶち当たり泣く泣くQUnitで全部書き直しましたorz

JavaにおけるJUnitみたいにjsのテストはデファクトスタンダードがない(気がする)ので手探りでやってました。

最終的にはQUnit + QUnit-TAP + phantomjs + prove という組み合わせに落ち着きました

参考にさせて頂いたサイト

ちなみにリファクタリングだけなので機能的には全く変わってないはずです。(地図を別ウィンドウで出せるようにしたくらいかな)

検索結果の取得方法を変えたため挙動が若干変わってるかもしれません。
例えば検索結果が2000件あった場合

  • 以前:100件ずつ×20回取得
  • 現在:2000件を一括取得

といった感じです

自分のマシンで確認した限りでは特に問題なかったですが(こくちーずの検索結果を描画する時に一瞬固まるくらい)、もし悪影響があるなら戻します

        • -

6/12追記
知り合いに聞いたらさすがにDOMを2000個一気に挿入するのはよろしくないということで戻しました。

テスト駆動JavaScript

テスト駆動JavaScript