🐙
今日のコード(3)
mustache
同じようなコードを何度も書きたくなくて - 色んなツールを駆使してソースコードを作ります。手順はJavaじゃなくても使えます。
-
mustache
のインストールにnpm
コマンド使うのでNodeJSは別途インストールしてください。
(他のプログラミング言語でインストールしたい場合はご自分でどうぞ)
今回の手順
元データ側
mustache
側
- Excelで横並びのデータをコピーし、縦並びへ貼り付ける
- 縦並びにしたセルをコピーし、テキストエディタへ貼り付ける
- 正規表現で
mustache
に渡すJSON用に置き換える - 置き換えた文字列群をJSONファイルとして作る
-
mustache
テンプレートファイルを作る -
mustache
をインストール -
mustache
で実行する
1. Excelで横並びのデータをコピーし、縦並びへ貼り付ける
範囲コピー -> 「形式を選択して貼り付け」 -> 「行列を入れ替える」 -> 貼り付け
2. 縦並びにしたセルをコピーし、テキストエディタへ貼り付ける
省略
mustache
に渡すJSON用に置き換える
3. 正規表現で ^(.*)$
-> "\1",
4. 置き換えた文字列群をJSONファイルとして作る
元ファイル
{
"data": [
]
}
置き換えた文字列を貼り付けた後 data.json
{
"data": [
"項目A",
"項目B",
"項目C"
]
}
mustache
テンプレートファイルを作る
5. {{.}}
に配列の要素が入ります。以下のコードはサンプルなので意味ないコードです。
template.mustache
{{#data}}
put("{{.}}", "{{.}}");
{{/data}}
mustache
をインストール
6. npm --install --global mustache
mustache
で実行する
7. mustache data.json template.mustache output.java
実行結果 output.java
put("項目A", "項目A");
put("項目B", "項目B");
put("項目C", "項目C");
サンプルは単純なものですが、フレームワーク作っちゃえば高速なコード生成が可能になります。
もし煩雑なコーディングをしている場合は mustache
で高速化してしまいましょう。
煩雑なコーディングは設計をシンプルに出来るチャンスでもありますから。
(複雑なコードは百害あって一利なし・・・)
Discussion