豆腐とコンソメ

豆腐とコンソメ

もろもろのプログラム勉強記録

useEffectでrace conditionとdebounceに対応する

useEffectでrace conditionとdebounceに対応する ReactのHooksに入門した。 useEffectのクリーンアップは再レンダー時に毎回行われるんだよ!という公式ドキュメントをみて、ほーんという感じだったけど race conditionとdebounceをhooksを使ってシンプルに…

Typescriptのtargetについて調べてみた

Typescriptでは、tsconfig.jsonでtargetを指定できる。 targetには、ES5だったり、ES6、ES2016と、ECMAScriptのバージョンを指定できる。 これは、TypescriptをコンパイルしてJavascriptに変換したときに、どのECMSScriptのバージョンにするかを指定できるオ…

ジェネレーターと非同期処理があんまりわかってなかったのでメモ

redux-saga に入る前に redux-sagaのサンプルを見ていて、function*をみた瞬間、これなんぞ!となったのでメモ。 ジェネレーター function*はジェネレータ関数。 他の言語でも、見たことはあったけど、ちゃんと使ったことがなかった。 こんな感じに使える。 …

jest + Vue.js でテストコード入門に至る道のり

jest + Vue.js でテストコード入門に至る道のり フロントエンドでもテストコード書いてったほうがよさそうだから、Vue.jsでもテストコード書いてみるか!ということでいざ始めてみると、書けはするんだけどなにやら設定やら必要なモジュールが多くってねぇ、…

Cコンパイラ作成に入門してみた

C言語のコンパイラを作成する以下の記事に入門してみたのだけれども、それがとてもよかったので夏休みの宿題のごとく感想文を書くことにするよ! www.sigbus.info 内容としては、C言語を使って、少しずつC言語のコンパイラを実装していく、というもの。 アセ…

webpackの設定を行う対話ツールをつくる

webpackの設定をちょっと変更して起動したいとき、webpack.config.jsを直接書き換えるか、それ用のwebpack.config.hoge.jsとかを用意したりすればいいよね。 なんだけど、yarn hogehogeってしたらCLIツールが立ち上がって、対話形式で設定を変更できたらすこ…

分割代入で少しハマった

しょうもない話。 Reactにだいぶ慣れて、最近はVueに戻ってVuexを久しぶりさわっていた。 Vuexのmutationsでnameステートを更新したい場合は、こんな書き方をすると思う。 state: { name: "" }, mutations: { changeName: (state, value) => { state.name = …