JS

Mithril.js ソースコードリーディング前編〜Virtual DOMの実装を理解する 〜

前回はBackbone.jsの社内コードリーディング会でした。今回はVirtualDOMの軽量ライブラリとして少しずつ人気が出てきている気がするMithril.jsに関して行いますので、リーディング時のメモです。 Mithril https://lhorie.github.io/mithril/ ソースコード(執筆時点v0.2.0 2015/07/18) https://github.com/lhorie/mithril.js/blob/master/mithril.js Virtual DOMの実装は約300行でそこが今回のソースコードリーディングのメインとなります。 今回はそのbuild()周りを見てきます。バージョンは現時点で最新のv0.2.0です。 ビール片手にリーディングしつつ、確認程度にメモを見ていただければ。 (more…)

JS

npm linkが意外と便利だった

JSでライブラリを作って、そのライブラリを使うプロジェクトがあった時に、使う側がpackage.jsonのdepedenciesに依存を追加して、npm installしてbrowserifyとかでrequireしたりしています。(browserifyでのmoduleの依存解決について興味のある方は"Browserify dependencies in depth!"をご参照ください) gitのsubmoduleなんか使うよりはnpm installだけで済むので快適なのですが、絶賛開発中にライブラリ側を更新する度に、使っている側のプロジェクトのnode_modules以下の該当ディレクトリを削除してnpm installし直したりするのは面倒ですよねー そこでnpm linkを使うと良い感じになりますたのでメモ。意外と記事が少なかったのでまとめておきます。 (more…)