Carpe Diem

備忘録

2018-03-01から1ヶ月間の記事一覧

Event LoopとMicrotasksについて

概要 以前 christina04.hatenablog.com でMacrotasksとMicrotasksについて触れました。 ただこの時使ったのがPromise、setTmeout()だけで、他の種類の非同期関数を使った場合どうなるのだろう、と気になり検証してみました。 環境 Node.js v8.9.0

Angularでのコンポーネント→ビューのバインディング

概要 Angularではコンポーネント→ビュー方向のバインディングは以下の4種類があります。 プロパティバインディング 属性バインディング クラスバインディング スタイルバインディング これらの違いと使い分けを説明します。 環境 Angular v5.2.9 angular-cli…

BigQueryのデータをUpdateする

概要 BigQueryは基本的にはログなど解析目的で利用するため、データ自体を更新することはありません。ただ 一部間違ったログが入ってしまった データの洗い替えが必要になった みたいなケースが起き、解析結果が期待するものにならない場合は更新処理が必要…

GoでFacebook OAuthログインをセキュアに実装する

概要 Facebookを用いたOAuthログインの実装方法はネット上に多々ありますが、セキュリティに関してあまり考慮されてないものが多いです。 今回はセキュアに実装する例を示します。 環境 golang 1.10 facebook graph api v2.12 成果物 今回のソースコードはこ…

Goのcontext.Contextはいつ使うべきか

概要 go 1.7からcontextパッケージが標準パッケージになりました。 タイムアウト、キャンセルなどのハンドリングができることから、ブロッキングする処理や外部APIリクエストなどを扱う時は基本的に第一引数に置くべきです。 またAPIやプロセス間通信のリク…