My External Storage

Oct 30, 2018 - 6 minute read - Comments - review go

[書評] Go言語でつくるインタプリタ を読んだ #go

Go言語でつくるインタプリタを読んだのでメモ。 プログラマなら一度はやる(?)であろうインタプリタの実装をGoで行う本書では、優れた設計は拡張性が高く「小さく作る」・「常に動くものを作る」を可能にすること、テスト駆動開発とテーブル駆動テストを用いることで検証を繰り返しながら着実に開発を進めることができることを実感することができる。

Oct 22, 2018 - 3 minute read - Comments - vim go

vim-goの自動補完が効かないときの調べ方(gocode が Error parsing input file (outer block)) #vim #go

goimportsなどが更新されていたので、vim-goGoUpdateBinariesコマンドを実行したらvimで自動補完が効かなくなった。
結局はgocodeの調子が悪いことが多いので、原因の調べ方をまとめる。
(今回の場合は let g:go_gocode_propose_source = 0 で解決した。)

Oct 10, 2018 - 4 minute read - Comments - react redux

redux-actionsのcreateActionでFlux Standard Actionに則ったerror=trueなActionを作る #react

redux-actionsを使うと、Flux Standard Action(FSA)に則ったActionを簡単に作れる。
が、エラーがあったときのAtionはどう作ればよいのだろう。
よく読めば公式に書いてあるのだが、直接的なコードはなかったのでメモ。

Sep 28, 2018 - 6 minute read - Comments - react test

Jest( >23.0.0 )、enzymeでReactのテーブル駆動テストを行う #react #test

Reactでもテーブル駆動テスト(データ駆動テスト)がしたいと思い、Jestを使ってみた。 ステートレスなコンポーネントがちゃんと設計できていれば入出力は冪等になるので、Reactとテーブル駆動テストは非常に相性がよさそう。 enzymeを使えばDOMアクセスも簡単だった。 ただ、Jestのバージョンが23.0.0以上じゃないとeachメソッドが使えないので、create-react-appで作ったプロジェクトの場合はejectする必要があった。

JestはJavascriptでrspecのようなテストが書けるツール。enzymeはairbnbが作成したいい感じにDOMにアクセスできるAPIライブラリ。