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