Skip to content

Commit

Permalink
write(note): inlining-node-requireとremove-use-strictを追加
Browse files Browse the repository at this point in the history
  • Loading branch information
azu committed Jun 15, 2014
1 parent db56339 commit 3820f2a
Showing 1 changed file with 23 additions and 0 deletions.
23 changes: 23 additions & 0 deletions Appendix-Note/readme.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,29 @@

== Asciidoc

=== 表示用JavaScriptの生成

書籍のサンプルコードは外部ファイルにしたかった。
しかし、そのまま読み込む使い方だと、サンプルコードのモジュール化が難しくなってしまった。
モジュール化が上手くできないとテストを書くことが難しくなる。
そこで、サンプルコード(`src`)と表示用コード(`embed`)にわけることにした。

そのために、サンプルコードから表示用コードを生成するモジュールを書いた

- https://github.com/azu/inlining-node-require[azu/inlining-node-require]
- https://github.com/azu/remove-use-strict[azu/remove-use-strict]

__inlining-node-require__ はBrowserify等の既存のモジュールビルドツールではできない
CommonJSのキレイなコードの結合をするためのツール。

[NOTE]
ただし、あらゆるパターンに対応することはできないため、
ある程度の制限を持った書き方が必要になる。

サンプルコードは`"use strict"`を使ったコードとなっているが、
__inlining-node-require__ で結合した際に重複することや表示用コードではスペース的に余計なものとなる。
__remove-use-strict__ は不必要な`"use strict"`を取り除くことができるツール。

== Testing

=== サンプルコードのテスト
Expand Down

0 comments on commit 3820f2a

Please sign in to comment.