blog.bouzuya.net

2015-07-22 余白という機能についてかんがえた

余白という機能

いろいろあって最も重要な機能は「余白」だという結論に達した。

bouzuya/dotfiles

新しい Macbook Air にスクリプトがいろいろ足りなくてつらい。 bouzuya/dotfiles に post-hatena-blog を追加した。

bouzuya/dotfiles はまじめに更新していなくて会社で使っている最新の dotfiles と同期できていない。簡単に同期できなくてつらい。

bouzuya/fgb-admin

昨日も書いたとおり Vue.js に入りたいので AngularJS で書かれているこの bouzuya/fgb-admin をはやく終わらせたい。

一方で中途半端なままにするのはなるべくやめたいので通信機能をつけようとしている。

ぼくは以下の問題に悩んでいる。

  • ぼくは Karma をその速度を理由に使いたくない。
  • AngularJS は Karma でないとまともにテストできない。
  • AngularJS で普通にアプリケーションをつくると View だけでなく Model まで AngularJS (特に DI を必要とすることで) に依存してしまう。
  • ブラウザに依存しなくていいはずの Model まで Karma でテストすることになる。

これを回避するためにはいくつかの方法がある。

  • Karma を使う。
    • AngularJS に依存する部分をすべて View と考える。
      • これはブラウザ依存の View だから仕方ないんだ。仕方ないんだ。
    • 必要なら AngularJS で (View のために) wrap する。
      • Model は別途テストする。
    • AngularJS ではなく Vue.js を使う。
      • どう考えても AngularJS の機能は View としてはオーバースペックだ。
  • Karma を使わない。
    • AngularJS のテストの機構は無視する。
    • AngularJS の DI を無視してすべて sinon などで mock する。

ぼくはもう AngularJS Way は無視して sinon で mock でも良い気がしている。