SlideShare une entreprise Scribd logo
1  sur  54
テンプレ管理ツール r3
 2007/06/24 第25回 PHP勉強会
  http://d.hatena.ne.jp/i_ogi/




           photo: flickr.com/photos/maxpower/130960194/
内容
• r3とは
• r3のキーワード、dimensionと継承
• インストール
• デモプロジェクトの作成
 –初期設定 (dimensionの作成と継承設定)
 –ターゲットの作成
 –特殊化 (specialize)
 –翻訳 (translation)
• まとめ
前置き
• まとめてみたら、使えねーという結論
  に達しましたが、とりあえずやります
 –正直、どう使えばいいか分からないツー
  ルです
• PHPで作られてるけど、CLIツールなの
  でPHPの話出てこない!
r3とは
• Yahoo!からオープンソースで公開され
  たテンプレート管理システム
 –「テンプレートエンジン」では無い
 –PHP以外のテンプレやCSS・JS等もOK
• 社内で利用されていたRosettaという
  ツールを元にゼロから書き直し
• 今のところアルファ版

        http://www.appulsus.com/w/?p=18
Rosetta Stone
英語では、ロゼッタ・ス
トーンを隠喩として使う。
解読することや翻訳、難問
などを表す。
出典: フリー百科事典『ウィキペディア (Wikipedia)』




 webアプリケーションの
  国際化に特化している
                                   http://flickr.com/photos/jbarton/466497735/
r3とは?
• 複数のサイト(products)と、
• 複数の⾔語・地域(intl)
のある、テンプレートを
• 「継承」と
• 「掛け合わせ」で
効率よく管理、⽣成するCLIツール
テンプレートを生成?
• r3形式のテンプレを書いて、任意のテ
  ンプレを作る。
 –テンプレからテンプレを⽣成
• テンプレのプリコンパイラ的な仕組み
• 対象とするターゲット
 –テンプレート (PHP/Smarty etc…)
 –ヘルパー的関数ファイル (PHP) など
  • ⽇付をフォーマットして出⼒する関数など、
    画⾯表⽰に関わる補助的なPHPスクリプト
r3のテンプレート例
<html>
<head></head>
<body>
<table width=quot;100%quot; border=quot;2quot;>
<tr>
 <th colspan=quot;2quot;><r3:trans>Container</r3:trans></th>
</tr>
<tr>
 <td colspan=quot;2quot;><r3:include path=quot;header.rosquot; /></td>
</tr>
<tr>
 <td width=quot;30%quot;><r3:include path=quot;navigation.rosquot; /></td>
 <td width=quot;70%quot;><r3:include path=quot;content.rosquot; /></td>
</tr>
</table>
</body>
</html>
なぜそんなことするのか?
• Flexibleな国際化のため
 –細かい調整を可能とする
 –先に各⾔語用のテンプレートを⽣成して
  しまうので、gettextより負荷が少ない
• 国際化しないなら、必要ないかも。
  (´・ω・`)ショボーン
r3のキーワード

  dimension
継承 (inheritance)
様々な出力先→dimension
• 様々な出⼒の種類をdimensionと呼ぶ
• r3で使うdimensionは2つ
 –プロダクト (product)
 –国際化 (intl)
• 各dimensionを掛け合わせてサイトが
  ⽣成される
 –productが3個で、intlが4個なら12サイト
product と intl の掛け合わせ
                           •cookery/us
                           •cookery/ca
                           •cookery/fr
                intl
product                    •cookery/jp


           ×           =
                           •wine/us
               •us
•cookery                   •wine/ca
               •ca
•wine                      •wine/fr
               •fr
•car                       •wine/jp
               •jp
                           •car/us


                                  12
   3            4
                           •car/ca
                           •car/fr
                           •car/jp
掛け合わせると言っても…
• 掛け合わせるって⾔っても、別々に作
  るんじゃ意味がない
• そこで継承!
• 継承を使って、変更が無いところは親
  のモノをそのまま使うことで、⼿間が
  減らせる!
継承 (inheritance)
• クラスの継承と同じ考え
• 各dimension (productとintl)について、
  それぞれ別の継承関係が設定できる
• intlについては、さらにdomainという
  継承関係の細分があり、別に継承可能
 –page (ページ)
 –template (テンプレ)
 –translation (翻訳)
プロダクトの継承の例
    • ブランディングのため
      の基本ルールが統⼀
    • その中でも遷移上、UI
      が統⼀されているプロ
      ダクトもある
    • 似てるけど少し違う
intlの継承の例
         intl (4ヶ国)
   •us (アメリカ) •ca (カナダ)
   •fr (フランス) •jp (⽇本)

• ⾔語的視点からは、フランス語圏で、
  ca(カナダ)は fr(フランス)を継承
• 地域的視点からは、北⽶エリアで、
  ca(カナダ)は us(アメリカ)を継承
• 実際に作っていく流れを⾒ていきます
• その前にインストール
r3のインストール
導入
• 動作環境
 –PHP5
 –PDOで、MySQL or SQLiteが利用可能
• インストール
 –SourceForgeからr3とsticklebackのアー
  カイブをダウンロード
  • sourceforge.net/projects/rthree
  • sourceforge.net/projects/stickleback
 –PEARでそれぞれインストール
r3 CLI
$ r3
usage:r3 [-c <arg>] [-u] [-x]
the r3 command line interface
    -c    override the default configuration, use your own
    -u    display utf8 chars with unicode values
    -x    display utf8 chars with hex values

usage                  general help
version                r3 version
setup                  administrative commands
template               template control
translation            dictionary utilities
target                 target tools
generate [-a] [-v...   generate targets
dimension              dimension tools (dimension is one of
product,intl)
inheritance            inheritance tools
ホームディレクトリ設定
• 適当な場所で、r3用のディレクトリを
  作成

  $ mkdir ~/r3

• セットアップコマンドを叩く
  $ r3 setup setuphome ~/r3
  setting up environment
• $R3HOMEを環境変数に設定しておく
DB設定
• デフォルトのSQLite利用なら、そのま
  まコマンド叩くだけで完了
    $ r3 setup installdb
    installing r3 db
    creating r3 db
    connecting to r3 db
    creating r3 tables
• MySQLを使うときは、r3conf.xmlで設
  定
導入まとめ
• ⽐較的簡単にセットアップできます
デモプロジェクトの作成

 ここからけっこう⻑い
作成するもの
• 3つの独⽴したプロダクト(だけれど、関連
  がある)を4つの⾔語で作成します。
• プロダクト
 – cookery (料理), wine (ワイン), cars (⾞)
• 地域
 – アメリカ (us)
 – フランス語圏のカナダ (ca)
 – フランス (fr)
 – ⽇本 (jp)
product と intl の掛け合わせ
                           •cookery/us
                           •cookery/ca
                           •cookery/fr
                intl
product                    •cookery/jp


           ×           =
                           •wine/us
               •us
•cookery                   •wine/ca
               •ca
•wine                      •wine/fr
               •fr
•cars                      •wine/jp
               •jp
                           •car/us


                                  12
   3            4
                           •car/ca
                           •car/fr
                           •car/jp
初期設定
• productとintlを必要なだけ作成
 –基底とする仮想的なproduct/intlも作成
   • サイト全体のブランディングに利用

     product             intl
                    •generic_intl
 •generic_product
                    •us
 •cookery
                    •ca
 •wine
                    •fr
 •car
                    •jp
productの作成
• まず、productを作成します
• 継承関係はこんなの
 –料理と⾞が基底を継承
 –ワインは料理を継承


generic_product-+-cookery--wine
                |
                +-cars
productの作成
$ r3 dimension product create generic_product
product generic_product created

$ r3 dimension product create cookery -p generic_product
product cookery created with parent generic_product for
page, template and translation domains.

$ r3 dimension product create wine -p cookery
product wine created with parent cookery for page,
template and translation domains.

$ r3 dimension product create cars -p generic_product
product cars created with parent generic_product for page,
template and translation domains.
intlの作成
• 同じようにintlも作成します
• 継承関係は、domainで分かれる

 translation(翻訳)     page/template
generic_intl       generic
                     _intl-+-fr
fr-+-ca
                           |
us
                           +-us--ca
jp                         |
                           +-jp
intlの作成
$ r3 dimension intl create generic_intl
intl generic_intl created

$ r3 dimension intl create us -p generic_intl
intl us created with parent generic_intl for
page, template and translation domains.

$ r3 dimension intl create ca -p us
...
$ r3 dimension intl create fr -p generic_intl
$ r3 dimension intl create jp -p generic_intl
translationの継承設定
• この時点ではintlの継承はこう
     translation/page/template
     generic_intl-+-fr
                  |
                  +-us--ca
                  |
                  +-jp

• translationドメインで、caはfrを継承
  するように設定する
translationの継承設定
$ r3 dimension intl parent ca set fr -d translation
parent of intl ca changed to fr in the translation
domain

# 翻訳ドメインに基底っていらないよなってことで
# translationドメインで基底の継承関係を削除
$ r3 dimension intl parent fr unset -f -d translation
intl fr set with no parent in the translation domain
$ r3 dimension intl parent us unset -d translation
intl us set with no parent in the translation domain
$ r3 dimension intl parent jp unset -d translation
intl jp set with no parent in the translation domain
設定完了
• これで、productとintlの作成と、継承
  関係の設定が完了
• 次にターゲットを作成します
• ターゲットとは、最終的に⽣成される
  ファイルのことです
ターゲットの作成
• target create [location]で作成
  $ r3 target create ¥
  generic_product/generic_intl/index.html
  page created (1)

• locationとは、product名/intl名/ペー
  ジ名で構成するUNIXパス的なもの
• generic_product/generic_intl な の で 、
  最上位のlocationとなる
 –継承している⼦孫にも適用される
ターゲットの編集
• $R3HOME/templates/generic_prod
  uct/generic_intl/index.html/index.h
  tml.ros にターゲットの空テンプレー
  トが作られる
  –これを適宜編集していく
• ⼀回、全⽣成してみる
  –$R3HOME/htdocs下に作成されます

     $ r3 generate -a
いっぱい出来る (4×5で20サイト)
$ r3 generate -av
generating cars/ca
    cars/ca/index.html
generating cars/fr
    cars/fr/index.html
generating cars/generic_intl
    cars/generic_intl/index.html
generating cars/jp
    cars/jp/index.html
generating cars/us
    cars/us/index.html
generating cookery/ca
    cookery/ca/index.html
ターゲットの編集
<html>
<head></head>
<body>
<table width=quot;100%quot; border=quot;2quot;>
<tr>
 <th colspan=quot;2quot;><r3:trans>Container</r3:trans></th>
</tr>
<tr>
 <td colspan=quot;2quot;><r3:include path=quot;header.rosquot; /></td>
</tr>
<tr>
 <td width=quot;30%quot;><r3:include path=quot;navigation.rosquot; /></td>
 <td width=quot;70%quot;><r3:include path=quot;content.rosquot; /></td>
</tr>
</table>
</body>
</html>
テンプレートとターゲット

      template                 target

     index.php.ros             index.php

                     include

header.ros     footer.ros

     include

brand.ros
とりあえずできた
• とりあえずファイルが出来たけど、各
  サイトの内容は同じ
• 継承先で、特殊化(specialize)して内容
  を各product/intlで変えていきます
searchpath
• ターゲットを⽣成するのに参照するパ
  ス
$ r3 template searchpath cookery/us/index.html

0   cookery/us/index.html
1   cookery/us/generic
2   cookery/generic_intl/index.html
3   cookery/generic_intl/generic
4   generic_product/us/index.html
5   generic_product/us/generic
6   generic_product/generic_intl/index.html index.html.ros
7   generic_product/generic_intl/generic
特殊化 (specialize)
• cookery/us/index.htmlのcontent.ros
  テンプレートを0レベルで特殊化
  $ r3 template specialize ¥
  cookery/us/index.html content.ros 0

• これで、cookery/usだけcontent.ros
  の内容が別になる
 –$R3HOME/cookery/us/index.html/con
  tent.rosを適宜編集
特殊化 (specialize)
$ r3 template specialize cookery/us/index.html
content.ros 0
Template specialised from
generic_product/generic_intl/index.html to
cookery/us/index.html

 0   cookery/us/index.html          content.ros
 1   cookery/us/generic
 2   cookery/generic_intl/index.html
 3   cookery/generic_intl/generic
 4   generic_product/us/index.html
 5   generic_product/us/generic
 6   generic_product/generic_intl/index.html content.ros
 7   generic_product/generic_intl/generic
特殊化 (specialize)
• こんな感じで、適切なレベルで特殊化
  を繰り返していきます
• 端折ってますが、ここが⼀番やること
  多い
• 次、翻訳していきます
翻訳 (translation)
• テンプレ中で、<r3:trans />で囲んだ
  箇所が翻訳するところ
• 翻訳も継承関係があるので、親で翻訳
  すれば⼦孫にも適用されます
• 流れとしては、指定した⾔語について
 –翻訳用ファイルをエクスポート
 –翻訳して、そのファイルをインポート
 をやっていく感じ
翻訳ファイル
• 翻訳用のファイルは、”XLIFF”という
  OASISで標準化されているローカライ
  ズのXMLファイルフォーマット
• 標準化されているので、GUIツール等
  もあり扱いやすい
 –SunのOLT(open language tools)とか
• ⾔語ごとに分けてエクスポートできる
  ので、翻訳業者さんに投げやすい
翻訳ファイルの出力
• エクスポート
$ r3 translation save inherited ¥
generic_product/fr fr.xml
generic_product/fr and inherited
dictionary data saved in file 'fr.xml'
• マージ
$ r3 translation merge fr.xml
dictionary data merged from file 'fr.xml'
翻訳ファイルの中身
<?xml version=quot;1.0quot; encoding=quot;UTF-8quot;?>
<xliff version='1.1' …>
    <file original='generic_product/fr/generic'
          source-language='en' target-language='fr'
          datatype='plaintext'>
        <body>
            <trans-unit id='1'>
                <source>Cars Navigation</source>
                <target>Cars Navigation</target>
            </trans-unit>
            <trans-unit id='2'>
                <source>Cars Site Branding</source>
                <target>Cars Site Branding</target>
            </trans-unit>
        </body>
    </file>
</xliff>
翻訳終了
• これで終了
• ここで⽣成したファイルをアプリで使
  うことになります
• なんとなく分かりました?
使う
•ここまでやって再⽣成すれば、各
  product×各intlのサイトがhtdocs下に
  できます
• 使うには
 –アプリ側で、productをマッピング
 –intlは、ブラウザのAccept-Languageで
  も⾒て判断
まとめ
今後の機能追加予定
• Web GUI
 –画⾯を修正するのに、エンジニアが介さ
  なくてもOKというのが重要
• CLI及びGUI用のプラグインAPI
 –例: カスタムのテンプレートタグや、出⼒
  ハンドラ
まとめ
• まず国際化ありき
• かなりニッチなツール
 –必要とする⼈は限られているかと
• 現在はアルファ版。これから?
 –引き続き様⼦⾒
ありがとうございました!
• 詳しいところは、はてダで書いてます
 –http://d.hatena.ne.jp/i_ogi/archive?w
  ord=*[r3]

Contenu connexe

Tendances

Sciencecafe Niigata(20090913)
Sciencecafe Niigata(20090913)Sciencecafe Niigata(20090913)
Sciencecafe Niigata(20090913)
真 岡本
 
Windows 7兼容性系列课程(1):Windows 7兼容性概述
Windows 7兼容性系列课程(1):Windows 7兼容性概述Windows 7兼容性系列课程(1):Windows 7兼容性概述
Windows 7兼容性系列课程(1):Windows 7兼容性概述
Chui-Wen Chiu
 
PMT-006-生產計劃與管理
PMT-006-生產計劃與管理PMT-006-生產計劃與管理
PMT-006-生產計劃與管理
handbook
 
Five Minutes Introduction For Rails
Five Minutes Introduction For RailsFive Minutes Introduction For Rails
Five Minutes Introduction For Rails
Koichi ITO
 
Windows 7兼容性系列课程(5):Windows 7徽标认证
Windows 7兼容性系列课程(5):Windows 7徽标认证Windows 7兼容性系列课程(5):Windows 7徽标认证
Windows 7兼容性系列课程(5):Windows 7徽标认证
Chui-Wen Chiu
 

Tendances (12)

قیمت ماسک فلت فولد
قیمت ماسک فلت فولدقیمت ماسک فلت فولد
قیمت ماسک فلت فولد
 
Reloaded
ReloadedReloaded
Reloaded
 
IPV9人类共同的理想/IPv9 - The common ideal for human being
IPV9人类共同的理想/IPv9 - The common ideal for human beingIPV9人类共同的理想/IPv9 - The common ideal for human being
IPV9人类共同的理想/IPv9 - The common ideal for human being
 
Sciencecafe Niigata(20090913)
Sciencecafe Niigata(20090913)Sciencecafe Niigata(20090913)
Sciencecafe Niigata(20090913)
 
Gpl 과 Ccl
Gpl 과  CclGpl 과  Ccl
Gpl 과 Ccl
 
Windows 7兼容性系列课程(1):Windows 7兼容性概述
Windows 7兼容性系列课程(1):Windows 7兼容性概述Windows 7兼容性系列课程(1):Windows 7兼容性概述
Windows 7兼容性系列课程(1):Windows 7兼容性概述
 
PMT-006-生產計劃與管理
PMT-006-生產計劃與管理PMT-006-生產計劃與管理
PMT-006-生產計劃與管理
 
Five Minutes Introduction For Rails
Five Minutes Introduction For RailsFive Minutes Introduction For Rails
Five Minutes Introduction For Rails
 
动态金融风险度量,稳型中心极限定理和G-Brown运动
动态金融风险度量,稳型中心极限定理和G-Brown运动动态金融风险度量,稳型中心极限定理和G-Brown运动
动态金融风险度量,稳型中心极限定理和G-Brown运动
 
第42PHP勉強会Ethna 発表資料
第42PHP勉強会Ethna 発表資料第42PHP勉強会Ethna 発表資料
第42PHP勉強会Ethna 発表資料
 
Referat aspiranta
Referat aspirantaReferat aspiranta
Referat aspiranta
 
Windows 7兼容性系列课程(5):Windows 7徽标认证
Windows 7兼容性系列课程(5):Windows 7徽标认证Windows 7兼容性系列课程(5):Windows 7徽标认证
Windows 7兼容性系列课程(5):Windows 7徽标认证
 

En vedette

20101211 インフラエンジニアlt大会 冬の陣」
20101211 インフラエンジニアlt大会 冬の陣」20101211 インフラエンジニアlt大会 冬の陣」
20101211 インフラエンジニアlt大会 冬の陣」
Masahito Yoshida
 
プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)
プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)
プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)
Yasushi Osonoi
 
僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜
僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜
僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜
Takuto Matsuu
 
インフラエンジニアデイ Sousousha20100520 01
インフラエンジニアデイ Sousousha20100520 01インフラエンジニアデイ Sousousha20100520 01
インフラエンジニアデイ Sousousha20100520 01
真一 藤川
 
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
Kei Mikage
 

En vedette (19)

20101211 インフラエンジニアlt大会 冬の陣」
20101211 インフラエンジニアlt大会 冬の陣」20101211 インフラエンジニアlt大会 冬の陣」
20101211 インフラエンジニアlt大会 冬の陣」
 
プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)
プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)
プレゼン インフラエンジニア、アプリ開発者集まれ!今注目のクラウド 「Bluemix」、「soft layer」をはじめよう!(OSC福岡2015)
 
僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜
僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜
僕と契約してセキュアなインフラエンジニアになってよ 〜Gnukのススメ〜
 
インフラエンジニアデイ Sousousha20100520 01
インフラエンジニアデイ Sousousha20100520 01インフラエンジニアデイ Sousousha20100520 01
インフラエンジニアデイ Sousousha20100520 01
 
インフラエンジニアとはなんぞ?
インフラエンジニアとはなんぞ?インフラエンジニアとはなんぞ?
インフラエンジニアとはなんぞ?
 
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
新インフラエンジニアに捧ぐ職業○のおはなし - qpstudy 2014.04 LT資料
 
パワーポイントを作るときに抑えておきたい色んなところ
パワーポイントを作るときに抑えておきたい色んなところパワーポイントを作るときに抑えておきたい色んなところ
パワーポイントを作るときに抑えておきたい色んなところ
 
パワポのテンプレート
パワポのテンプレートパワポのテンプレート
パワポのテンプレート
 
プレゼンテクニック(ガイドつき)PPT版
プレゼンテクニック(ガイドつき)PPT版プレゼンテクニック(ガイドつき)PPT版
プレゼンテクニック(ガイドつき)PPT版
 
パワポ作成外注のすすめ ドキュメントプラス
パワポ作成外注のすすめ ドキュメントプラスパワポ作成外注のすすめ ドキュメントプラス
パワポ作成外注のすすめ ドキュメントプラス
 
目標を達成するための技術「PDCFAサイクル」を学ぶ 先生:永谷 研一
目標を達成するための技術「PDCFAサイクル」を学ぶ 先生:永谷 研一目標を達成するための技術「PDCFAサイクル」を学ぶ 先生:永谷 研一
目標を達成するための技術「PDCFAサイクル」を学ぶ 先生:永谷 研一
 
ビジネスファシリテーション研修Part1
ビジネスファシリテーション研修Part1ビジネスファシリテーション研修Part1
ビジネスファシリテーション研修Part1
 
ファシリテーションの基本をやってみよう
ファシリテーションの基本をやってみようファシリテーションの基本をやってみよう
ファシリテーションの基本をやってみよう
 
マジカルドリームライトを制御してみた @ni_gata
マジカルドリームライトを制御してみた @ni_gataマジカルドリームライトを制御してみた @ni_gata
マジカルドリームライトを制御してみた @ni_gata
 
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
続・パワポは「最後」に開く-もっとみがく!プレゼン資料作成術「大掃除編」
 
明治維新の原動力、高杉晋作が奇兵隊の募集要項をパワポで作ってみたら
明治維新の原動力、高杉晋作が奇兵隊の募集要項をパワポで作ってみたら明治維新の原動力、高杉晋作が奇兵隊の募集要項をパワポで作ってみたら
明治維新の原動力、高杉晋作が奇兵隊の募集要項をパワポで作ってみたら
 
フリーでやろうぜ!セキュリティチェック!
フリーでやろうぜ!セキュリティチェック!フリーでやろうぜ!セキュリティチェック!
フリーでやろうぜ!セキュリティチェック!
 
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
[AWSマイスターシリーズ] AWS CLI / AWS Tools for Windows PowerShell
 
しょぼいプレゼンをパワポのせいにするな! by @jessedee
しょぼいプレゼンをパワポのせいにするな! by @jessedeeしょぼいプレゼンをパワポのせいにするな! by @jessedee
しょぼいプレゼンをパワポのせいにするな! by @jessedee
 

Similaire à テンプレート管理ツール r3

【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
devsumi2009
 
Tcl/Tk+ハッシュリスト
Tcl/Tk+ハッシュリストTcl/Tk+ハッシュリスト
Tcl/Tk+ハッシュリスト
Hiromu Shioya
 
20090313 Cakephpstudy
20090313 Cakephpstudy20090313 Cakephpstudy
20090313 Cakephpstudy
Yusuke Ando
 
【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法
【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法
【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法
devsumi2009
 
How To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPHow To Create Custom DSLs By PHP
How To Create Custom DSLs By PHP
Atsuhiro Kubo
 
創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟
創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟
創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟
taiwanweb20
 

Similaire à テンプレート管理ツール r3 (20)

【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
【13-C-4】 「もう業務はとまらない!オフライン機能を使った業務アプリケーションの実例と最新 Curl 情報」
 
Development toolsforteamdevelopment
Development toolsforteamdevelopmentDevelopment toolsforteamdevelopment
Development toolsforteamdevelopment
 
Tcl/Tk+ハッシュリスト
Tcl/Tk+ハッシュリストTcl/Tk+ハッシュリスト
Tcl/Tk+ハッシュリスト
 
20090418 イケテルRails勉強会 第2部Air編 解説
20090418 イケテルRails勉強会 第2部Air編 解説20090418 イケテルRails勉強会 第2部Air編 解説
20090418 イケテルRails勉強会 第2部Air編 解説
 
20090313 Cakephpstudy
20090313 Cakephpstudy20090313 Cakephpstudy
20090313 Cakephpstudy
 
【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法
【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法
【12-D-6】 Silverlight によるハイグレードなLOB/BI実現のためのコンポーネント活用法
 
20090522 Candycane
20090522 Candycane20090522 Candycane
20090522 Candycane
 
[Oracle DBA & Developer Day 2014] しばちょう先生による特別講義! RMANの運用と高速化チューニング
[Oracle DBA & Developer Day 2014] しばちょう先生による特別講義! RMANの運用と高速化チューニング[Oracle DBA & Developer Day 2014] しばちょう先生による特別講義! RMANの運用と高速化チューニング
[Oracle DBA & Developer Day 2014] しばちょう先生による特別講義! RMANの運用と高速化チューニング
 
How To Create Custom DSLs By PHP
How To Create Custom DSLs By PHPHow To Create Custom DSLs By PHP
How To Create Custom DSLs By PHP
 
Webken 03: Project Design for Optimaizing User Experience
Webken 03: Project Design for Optimaizing User ExperienceWebken 03: Project Design for Optimaizing User Experience
Webken 03: Project Design for Optimaizing User Experience
 
Where20 2009report
Where20 2009reportWhere20 2009report
Where20 2009report
 
P2P Bug Tracking with SD
P2P Bug Tracking with SDP2P Bug Tracking with SD
P2P Bug Tracking with SD
 
20090418 イケテルRails勉強会 第1部Rails編
20090418 イケテルRails勉強会 第1部Rails編20090418 イケテルRails勉強会 第1部Rails編
20090418 イケテルRails勉強会 第1部Rails編
 
Ltdd For Xp2008 検閲版
Ltdd For Xp2008 検閲版Ltdd For Xp2008 検閲版
Ltdd For Xp2008 検閲版
 
20090410 Gree Opentech Main
20090410 Gree Opentech Main20090410 Gree Opentech Main
20090410 Gree Opentech Main
 
Revisited
RevisitedRevisited
Revisited
 
sigfpai73-kaji
sigfpai73-kajisigfpai73-kaji
sigfpai73-kaji
 
PHP超入門@LL温泉
PHP超入門@LL温泉PHP超入門@LL温泉
PHP超入門@LL温泉
 
20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)20090410 Gree Opentech Presentation (opening)
20090410 Gree Opentech Presentation (opening)
 
創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟
創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟
創業家研習營-7分鐘創意簡報技巧,Mr.6劉威麟
 

Plus de Ippei Ogiwara (6)

いままで使ってきた携帯電話
いままで使ってきた携帯電話いままで使ってきた携帯電話
いままで使ってきた携帯電話
 
コミュニティでの動画配信の広がり、それらをささえるツール
コミュニティでの動画配信の広がり、それらをささえるツールコミュニティでの動画配信の広がり、それらをささえるツール
コミュニティでの動画配信の広がり、それらをささえるツール
 
第1回PHP拡張勉強会
第1回PHP拡張勉強会第1回PHP拡張勉強会
第1回PHP拡張勉強会
 
PHP型変換の世界
PHP型変換の世界PHP型変換の世界
PHP型変換の世界
 
3分くらいで分かるassert()
3分くらいで分かるassert()3分くらいで分かるassert()
3分くらいで分かるassert()
 
PHP at Yahoo! JAPAN
PHP at Yahoo! JAPANPHP at Yahoo! JAPAN
PHP at Yahoo! JAPAN
 

Dernier

Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
daisycvs
 
Mckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for ViewingMckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for Viewing
Nauman Safdar
 
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al MizharAl Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
allensay1
 

Dernier (20)

Arti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdfArti Languages Pre Seed Teaser Deck 2024.pdf
Arti Languages Pre Seed Teaser Deck 2024.pdf
 
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTSDurg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
Durg CALL GIRL ❤ 82729*64427❤ CALL GIRLS IN durg ESCORTS
 
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdfDr. Admir Softic_ presentation_Green Club_ENG.pdf
Dr. Admir Softic_ presentation_Green Club_ENG.pdf
 
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
Unveiling Falcon Invoice Discounting: Leading the Way as India's Premier Bill...
 
PHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation FinalPHX May 2024 Corporate Presentation Final
PHX May 2024 Corporate Presentation Final
 
Falcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business PotentialFalcon Invoice Discounting: Unlock Your Business Potential
Falcon Invoice Discounting: Unlock Your Business Potential
 
Buy gmail accounts.pdf buy Old Gmail Accounts
Buy gmail accounts.pdf buy Old Gmail AccountsBuy gmail accounts.pdf buy Old Gmail Accounts
Buy gmail accounts.pdf buy Old Gmail Accounts
 
How to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League CityHow to Get Started in Social Media for Art League City
How to Get Started in Social Media for Art League City
 
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
Lundin Gold - Q1 2024 Conference Call Presentation (Revised)
 
Ooty Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Avail...
Ooty Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Avail...Ooty Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Avail...
Ooty Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Avail...
 
WheelTug Short Pitch Deck 2024 | Byond Insights
WheelTug Short Pitch Deck 2024 | Byond InsightsWheelTug Short Pitch Deck 2024 | Byond Insights
WheelTug Short Pitch Deck 2024 | Byond Insights
 
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
Quick Doctor In Kuwait +2773`7758`557 Kuwait Doha Qatar Dubai Abu Dhabi Sharj...
 
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDINGBerhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
Berhampur 70918*19311 CALL GIRLS IN ESCORT SERVICE WE ARE PROVIDING
 
Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024Marel Q1 2024 Investor Presentation from May 8, 2024
Marel Q1 2024 Investor Presentation from May 8, 2024
 
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur DubaiUAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
UAE Bur Dubai Call Girls ☏ 0564401582 Call Girl in Bur Dubai
 
Uneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration PresentationUneak White's Personal Brand Exploration Presentation
Uneak White's Personal Brand Exploration Presentation
 
Mckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for ViewingMckinsey foundation level Handbook for Viewing
Mckinsey foundation level Handbook for Viewing
 
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al MizharAl Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
Al Mizhar Dubai Escorts +971561403006 Escorts Service In Al Mizhar
 
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service AvailableBerhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
Berhampur Call Girl Just Call 8084732287 Top Class Call Girl Service Available
 
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
Chennai Call Gril 80022//12248 Only For Sex And High Profile Best Gril Sex Av...
 

テンプレート管理ツール r3