SlideShare ist ein Scribd-Unternehmen logo
1 von 25
札幌でテンプレート

         株式会社fonfun
    尾形 鉄次 (OGATA Tetsuji)
         Twitter: @xtetsuji
 2012/09/19 Hokkaido.pm Casual#5
自己紹介
自己紹介
• 尾形 鉄次 (OGATA Tetsuji)
• Twitter: @xtetsuji
• Blog: http://post.tetsuji.jp/
• 得意技: mod_perl
• Perl歴9年だけど知識が偏っているので、
 今になって色々勉強しています><
自己紹介
•   Hokkaido.pmには、#5から毎回(#7まで)出席

•   Hokkaido.pm Casual は今回 #5 が初参加

•   大学(1997年)から上京、就職後もずっと東京

•   実家が帯広で今回帰省ついでに寄りました

•   Hokkaido.pm は私の故郷です!
所属紹介

• 株式会社fonfun(フォンファン)
 http://www.fonfun.co.jp/
 • 主力製品:リモートメール
   http://rmail.jp/
Casualの雰囲気がよく
分からないので緩く
やらせてもらいます
今回のテーマ:
テンプレート入門
Perlのテンプレート
• 入社当時の2003年からPerl使っていた→
 当時は簡単なログ処理程度のスキル

• 2004年頃からウェブ開発を任された
• まさかプログラマになるとは…
• ウェブ開発言語はもちろんPerl
Perlのテンプレート
• 2004年使ったのは社内で作られた社内
 独自のテンプレートエンジン

• 事実上マニュアル無し(´Д⊂ヽ
• 新規のサイトでの使用はあまり考え
  られた設計ではなかった
Perlのテンプレート
• 2005年頃から開発者は自分一人で新規
 開発を行っていくことになった

• まだWAF全盛の時代ではなかったの
 で、最初は見よう見まねで普通のPerl
 CGI (not mod_perl)
• HTML::Template を採用
HTML::Template
HTML::Template
• Perlに昔からあるテンプレートエンジン
• 他の高性能なテンプレートエンジンが
 後発で出てきた今も良く使われている

• 構文がHTMLっぽいのでそれ以外で使う
 と違和感があるかも程度
HTML::Template
HTML::Template
• HTML::Templateは1999年のリリース後の
 早い段階でテンプレートキャッシュを
 搭載していた (mod_perl永続環境等で)

 • キャッシュ→CPU(I/O)節約
 • 非キャッシュ→メモリ節約
HTML::Template
• 規模の大きいウェブアプリケーション
 の場合、テンプレートファイルの読み
 込みにコストがかかるケースでは
 キャッシュが有効

• 前述の自社テンプレートエンジンも
 キャッシュをサポートしています
設定ファイルとか
• 一部分だけが違うだけの大量の設定
 ファイルを一括生成する場合

• 最近はこの手のデプロイツールも隆盛
• Perlではないもののシンプルなコマンド
 ラインツールのm4が流用できるかも
m4
m4
• 元々はC言語等のプリプロセッサ
• 古い古いツールなので、build-essentialな
 環境が入っていれば入っているはず

• 真面目に使おうとすると大変だけど、
 表面的に使うだけでも面白い
m4
# 仮想的な設定ファイル - some.conf.m4
hostname: __HOSTNAME__
username: someuser
# ...以下略


#!/bin/bash
for hostname in sv{01..99} ; do
     m4 -D __HOSTNAME__=$hostname 
     some.conf.m4 > some.conf.$hostname
done
m4
• C言語のプリプロセッサ等として高度に
 利用されるm4だけど、こんな至極単純
 な作業用途に使ってもOKでしょう

• Perlじゃないけど、道具は適材適所
• モダンな設定ファイルデプロイツール
 もウォッチしたいですね
他のテンプレートの
 使い心地はどうだろう
• 様々なテンプレートエンジンがある
 • HTML::Template
 • Template-Toolkit (TT)
 • Text::Xslate …等々
• 時代によって流行りは様々
他のテンプレートの
 使い心地はどうだろう
• ポストモダンなWAFとセットになって
 いたりするテンプレートエンジン等、
 みなさんのオススメや最近の流行りを
 聞いてみたいです

• Text::Xslateとか名前だけ知っているだけ
 で実際に使ったこと無い怠け者です
ご清聴
ありがとうございました

Weitere ähnliche Inhalte

Ähnlich wie 札幌でテンプレート #hokkaidopm

英語の資料をITフル活用で乗り切る方法
英語の資料をITフル活用で乗り切る方法英語の資料をITフル活用で乗り切る方法
英語の資料をITフル活用で乗り切る方法
Iwasaki Yusuke
 
誕生日サイト企画120507
誕生日サイト企画120507誕生日サイト企画120507
誕生日サイト企画120507
Yuko Kondo
 
勉強会旅人のススメ
勉強会旅人のススメ勉強会旅人のススメ
勉強会旅人のススメ
and hyphen
 

Ähnlich wie 札幌でテンプレート #hokkaidopm (18)

東京近郊のPerlコミュニティのご紹介 #lcs2015
東京近郊のPerlコミュニティのご紹介 #lcs2015東京近郊のPerlコミュニティのご紹介 #lcs2015
東京近郊のPerlコミュニティのご紹介 #lcs2015
 
Oracle Code One 2019 ss
Oracle Code One 2019 ssOracle Code One 2019 ss
Oracle Code One 2019 ss
 
メイキング・オブ・ザ・さっぽろ保育園マップ
メイキング・オブ・ザ・さっぽろ保育園マップメイキング・オブ・ザ・さっぽろ保育園マップ
メイキング・オブ・ザ・さっぽろ保育園マップ
 
英語の資料をITフル活用で乗り切る方法
英語の資料をITフル活用で乗り切る方法英語の資料をITフル活用で乗り切る方法
英語の資料をITフル活用で乗り切る方法
 
2012年11月 レアジョブ学習法共有会
2012年11月 レアジョブ学習法共有会2012年11月 レアジョブ学習法共有会
2012年11月 レアジョブ学習法共有会
 
ものをつくれる人をつくれる場所をつくりたくて
ものをつくれる人をつくれる場所をつくりたくてものをつくれる人をつくれる場所をつくりたくて
ものをつくれる人をつくれる場所をつくりたくて
 
最近の話題から 〜2013年秋〜 #hachiojipm
最近の話題から 〜2013年秋〜 #hachiojipm最近の話題から 〜2013年秋〜 #hachiojipm
最近の話題から 〜2013年秋〜 #hachiojipm
 
誕生日サイト企画120507
誕生日サイト企画120507誕生日サイト企画120507
誕生日サイト企画120507
 
迷い彷徨った先で見つけた自分の進むべき道〜キャリアキーノート2017〜
迷い彷徨った先で見つけた自分の進むべき道〜キャリアキーノート2017〜迷い彷徨った先で見つけた自分の進むべき道〜キャリアキーノート2017〜
迷い彷徨った先で見つけた自分の進むべき道〜キャリアキーノート2017〜
 
メルマガシステム失敗談 #perlbeginners
メルマガシステム失敗談 #perlbeginnersメルマガシステム失敗談 #perlbeginners
メルマガシステム失敗談 #perlbeginners
 
圧倒的感謝LT
圧倒的感謝LT圧倒的感謝LT
圧倒的感謝LT
 
勉強会旅人のススメ
勉強会旅人のススメ勉強会旅人のススメ
勉強会旅人のススメ
 
2014.05.10.JAG中国支部 FirefoxOS勉強会やります!
2014.05.10.JAG中国支部 FirefoxOS勉強会やります!2014.05.10.JAG中国支部 FirefoxOS勉強会やります!
2014.05.10.JAG中国支部 FirefoxOS勉強会やります!
 
20171025_Tokyo_DG_LT_Road_to_Trailblazer
20171025_Tokyo_DG_LT_Road_to_Trailblazer20171025_Tokyo_DG_LT_Road_to_Trailblazer
20171025_Tokyo_DG_LT_Road_to_Trailblazer
 
北海道の南端で勉強会やります
北海道の南端で勉強会やります北海道の南端で勉強会やります
北海道の南端で勉強会やります
 
福岡姪浜国際交流シェアハウスコンセプト資料
福岡姪浜国際交流シェアハウスコンセプト資料福岡姪浜国際交流シェアハウスコンセプト資料
福岡姪浜国際交流シェアハウスコンセプト資料
 
Whta is asonas_?
Whta is asonas_?Whta is asonas_?
Whta is asonas_?
 
私の手帳紹介
私の手帳紹介私の手帳紹介
私の手帳紹介
 

Mehr von 鉄次 尾形

Mehr von 鉄次 尾形 (20)

Perl入学式 2018年度の報告
Perl入学式 2018年度の報告Perl入学式 2018年度の報告
Perl入学式 2018年度の報告
 
【公開版】AWS基礎 for 新卒エンジニア
【公開版】AWS基礎 for 新卒エンジニア【公開版】AWS基礎 for 新卒エンジニア
【公開版】AWS基礎 for 新卒エンジニア
 
俺のこだわりデスクのその後
俺のこだわりデスクのその後俺のこだわりデスクのその後
俺のこだわりデスクのその後
 
Hokkaido.pmと7年
Hokkaido.pmと7年Hokkaido.pmと7年
Hokkaido.pmと7年
 
WordPress 運用を支える Perl
WordPress 運用を支える PerlWordPress 運用を支える Perl
WordPress 運用を支える Perl
 
障害対応とその防止策
障害対応とその防止策障害対応とその防止策
障害対応とその防止策
 
働きやすい社内を目指す!二酸化炭素計測ツール
働きやすい社内を目指す!二酸化炭素計測ツール働きやすい社内を目指す!二酸化炭素計測ツール
働きやすい社内を目指す!二酸化炭素計測ツール
 
Perl ウェブ開発の中世〜CGI と Plack の間〜
Perl ウェブ開発の中世〜CGI と Plack の間〜Perl ウェブ開発の中世〜CGI と Plack の間〜
Perl ウェブ開発の中世〜CGI と Plack の間〜
 
コードの動的生成のお話
コードの動的生成のお話コードの動的生成のお話
コードの動的生成のお話
 
三角関数の加法定理はなぜ難しいのか
三角関数の加法定理はなぜ難しいのか三角関数の加法定理はなぜ難しいのか
三角関数の加法定理はなぜ難しいのか
 
Perlで生きる10年
Perlで生きる10年Perlで生きる10年
Perlで生きる10年
 
穏やかにファイルを削除する続き
穏やかにファイルを削除する続き穏やかにファイルを削除する続き
穏やかにファイルを削除する続き
 
日本全国ぶらりPerl旅
日本全国ぶらりPerl旅日本全国ぶらりPerl旅
日本全国ぶらりPerl旅
 
穏やかにファイルを削除する
穏やかにファイルを削除する穏やかにファイルを削除する
穏やかにファイルを削除する
 
最近のメールまわりのお仕事のお話
最近のメールまわりのお仕事のお話最近のメールまわりのお仕事のお話
最近のメールまわりのお仕事のお話
 
再帰、漸化式、差分方程式とアルゴリズム Gx#20
再帰、漸化式、差分方程式とアルゴリズム   Gx#20再帰、漸化式、差分方程式とアルゴリズム   Gx#20
再帰、漸化式、差分方程式とアルゴリズム Gx#20
 
超小規模環境のMySQL #mysqlcasual
超小規模環境のMySQL #mysqlcasual超小規模環境のMySQL #mysqlcasual
超小規模環境のMySQL #mysqlcasual
 
mod_perlプログラマーがYAPCで語るレガシー開発論
mod_perlプログラマーがYAPCで語るレガシー開発論mod_perlプログラマーがYAPCで語るレガシー開発論
mod_perlプログラマーがYAPCで語るレガシー開発論
 
4月16日だからFoursquare 位置情報とライフログ
4月16日だからFoursquare 位置情報とライフログ4月16日だからFoursquare 位置情報とライフログ
4月16日だからFoursquare 位置情報とライフログ
 
設定ファイルに使われそうなデータ形式
設定ファイルに使われそうなデータ形式設定ファイルに使われそうなデータ形式
設定ファイルに使われそうなデータ形式
 

札幌でテンプレート #hokkaidopm

Hinweis der Redaktion

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n