SlideShare a Scribd company logo
1 of 16
Download to read offline
2014.01  /  アゼロス
概要(このプレゼンの趣旨)
コンテンツ制作者こそ
⽂文書変換のフローを書くべき
サイト統合の⼒力力をもつXML/XSL、ただし制作の現場で使うには⼊入出⼒力力のフロー記述も必要
コンテンツ制作者はプログラムになじみがなく、プログラム開発者はコンテンツへの関⼼心が薄く
コンテンツ制作者もXSLTを使えばフロー記述が容易易に、プログラム開発者は、⼊入出⼒力力を⽀支援
1.
2.
3.
2014.01  /  アゼロス
⽣生き抜くためのマークアップ技術
〜~  キャリアパス編(補⾜足)  〜~
	
 
<vox:src>get:simple.xml</vox:src><!--	
 内容を読む	
 -->	
 
<vox:via>app:simple.xsl</vox:via><!--	
 体裁を適用	
 -->	
 
<vox:dst>set:simple.htm</vox:dst><!--	
 結果を生成	
 -->	
 
⼿手順(フロー):simple.xml
2014.01  /  アゼロス
背景#1
W3Cが提唱する、コンテンツのデータ〜~プレゼン層統合:
XML    ……  内容(データ)  の標準/⽊木構造データ
XSLT  ……  体裁(スタイル)の標準/関数型の処理理
・
・
	
 
<con>代表の○○です。よろしくお願いいたします。</con>	
 
	
 
<section>	
 
<h1>代表挨拶</h1>	
 
<p><xsl:value-of	
 select="con"/></p>	
 
</section>	
 
内容(データ):simple.xml
体裁(スタイル):simple.xsl
XML/XSLはコンテンツ統合の⼒力力をもつが……
2014.01  /  アゼロス
問題#1
ウェブブラウザ上でできること:
媒体  ……………  ファイル/ウェブブラウザ・
XML/XSLだけでできることはかぎられる
ファイル(XML) ファイル(XSLT) ウェブブラウザ
<con>代表の○○です。よろしくお願いいた
します。</con>	
 
<section>	
 
<h1>代表挨拶</h1>	
 
<p><xsl:value-of	
 select="con"/></p>	
 
</section>	
 
<section>	
 
<h1>代表挨拶</h1>	
 
<p>代表の○○です。よろしくお願いいたし
ます。</p>	
 
</section>
2014.01  /  アゼロス
問題#1
制作の現場で求められるコンテンツ処理理:
媒体  ……………  ファイル/ウェブブラウザ/データベー
                  ス/ネットワーク/メール/……
処理理  ……………  繰り返し/条件分岐
・
・
しかし業務では多媒体や⾃自動化が求められ……
ファイル(XML) ファイル(XSLT)
メール
データベース(RDB) ファイル
ウェブブラウザ
…… ……
ネットワーク
2014.01  /  アゼロス
ビュー(プレゼンテーション層の⼀一部)への変換など
コントローラのフロー/モデルのロジック層など
コントローラの⼊入⼒力力部/モデルのデータアクセス層など
問題#1
現場で求められるが可能にするコンテンツ処理理:
⼊入出⼒力力  …………  ファイル/ウェブブラウザ/データベー
                  ス/ネットワーク/メール/……
フロー  …………  繰り返し/条件分岐
・
・
XML/XSLに加え⼊入出⼒力力のフローが不不可⽋欠
スタイル(XSLT)
データ(XML)
汎⽤用プログラム:フロー
汎⽤用プログラム:⼊入出⼒力力
橋
渡
し
2014.01  /  アゼロス
背景#2
⼀一般に⼊入出⼒力力とフローはプログラマが書くが……
スタイル(XSLT)
データ(XML)
コンテンツ制作者
プログラム開発者/プログラマ 汎⽤用プログラム:フロー
汎⽤用プログラム:⼊入出⼒力力
2014.01  /  アゼロス
問題#2
プログラマはコンテンツへの関⼼心が薄くなりがち
スタイル(XSLT)
データ(XML)
プログラム開発者/プログラマ 汎⽤用プログラム:フロー
汎⽤用プログラム:⼊入出⼒力力
2014.01  /  アゼロス
背景#3
コンテンツ制作者  ……  プログラムになじみがない(プロ
グラムになにができるか、⼗十分に理理解しづらい)
プログラム開発者  ……  コンテンツへの関⼼心が薄い(コン
テンツをこうしたい、という動機づけに⽋欠ける)
・
・
データ〜~プレゼン層の統合を阻むふたつの障壁
XML/XSLによる
データ〜~プレゼン層の統合
プ
ロ
グ
ラ
ム
開
発
者
コ
ン
テ
ン
ツ
制
作
者
コンテン
ツへの関
⼼心が薄い
プログラ
ムになじ
みがない
2014.01  /  アゼロス
問題#3
制作者と開発者は、指向と⾔言葉葉の壁を乗り越え、
XML/XSLで、データ〜~プレゼン層を統合
・
・
制作者と開発者の協業が期待されるも……
プ
ロ
グ
ラ
ム
開
発
者
コ
ン
テ
ン
ツ
制
作
者
コンテン
ツへの関
⼼心が薄い
プログラ
ムになじ
みがない
コミュニケーション
2014.01  /  アゼロス
問題#3
指向の壁、⾔言葉葉の壁
失われた10年年(この間、ウェブはさらに複合化)
・
・
現実には、コミュニケーションは難しい
XML/XSLによる
データ〜~プレゼン層の統合
プ
ロ
グ
ラ
ム
開
発
者
コ
ン
テ
ン
ツ
制
作
者
コンテン
ツへの関
⼼心が薄い
プログラ
ムになじ
みがない
2014.01  /  アゼロス
対策#3
XSLT=プログラミング⾔言語(チューリング完全)
ただし⼊入出⼒力力のない(専⽤用プログラミング⾔言語/DSL)
・
・
ところで、XSLTもプログラミング⾔言語
2014.01  /  アゼロス
対策#3
⼊入出⼒力力のないプログラミング⾔言語=繰り返し/条件分岐
コンテンツ制作者も、XSLTを使えばフローは書ける
・
・
制作者と開発者の分担の境界を⾒見見直す
スタイル(XSLT)
データ(XML)
専⽤用プログラム:フロー(XSLT)
汎⽤用プログラム:⼊入出⼒力力
コンテンツ制作者
プログラム開発者/プログラマ
2014.01  /  アゼロス
対策#3
コンテンツ制作者……フローをXSLTで書く
プログラム開発者……⼊入出⼒力力の部品を提供する
・
・
制作者=フロー、開発者=⼊入出⼒力力
XML/XSLによる
データ〜~プレゼン層の統合
プ
ロ
グ
ラ
ム
開
発
者
コ
ン
テ
ン
ツ
制
作
者
⼊入出⼒力力の部品化 フローを書く
2014.01  /  アゼロス
効果#3
コンテンツ制作者……プログラミングへの理理解が増す
プログラム開発者……コンテンツ処理理への要望を、より具体
                    的に聞けるようになる
・
・
制作者と開発者のコミュニケーションも改善
2014.01  /  アゼロス
懸念念
コンテンツ制作者にプログラミングは可能か?
XSLTはパターンマッチによる関数的な処理理。宣⾔言的という点ではマーク
アップ⾔言語に近く、通常の処理理なら<繰り返し>を意識識する必要もない
オブジェクト指向やMVC2はどうする?
汎⽤用プログラミング⾔言語の部分的な取り⼊入れや全⾯面移⾏行行ができる
汎⽤用プログラミング⾔言語にはなにが使える?
純粋関数型やオブジェクト指向など、複数の下位⾔言語を選べる(実装する⾔言
語によるバリエーション)
Q
A
Q
A
Q
A
疑問への回答

More Related Content

Similar to Docmgt_004

[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組みRecruit Technologies
 
リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~
リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~
リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~Recruit Technologies
 
クロスプラットフォーム開発入門
クロスプラットフォーム開発入門クロスプラットフォーム開発入門
クロスプラットフォーム開発入門minazou67
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向Tsutomu Ogasawara
 
Modern frontend overview_r3
Modern frontend overview_r3Modern frontend overview_r3
Modern frontend overview_r3makotunes
 
CakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がりCakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がりDaisuke Abe
 
オープンソースCMSにみる、現場で使えるjava scriptライブラリ
オープンソースCMSにみる、現場で使えるjava scriptライブラリオープンソースCMSにみる、現場で使えるjava scriptライブラリ
オープンソースCMSにみる、現場で使えるjava scriptライブラリRyuji Egashira
 
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternAtsushi Kambara
 
達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)masayoshi takahashi
 
ASP.NET SPA開発をはじめよう~今と未来とステップアップ
ASP.NET SPA開発をはじめよう~今と未来とステップアップASP.NET SPA開発をはじめよう~今と未来とステップアップ
ASP.NET SPA開発をはじめよう~今と未来とステップアップ慎一 古賀
 
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指してAkira Inoue
 
クラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれクラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれMasataka MIZUNO
 
Flash Developerになる4つのヒント
Flash Developerになる4つのヒントFlash Developerになる4つのヒント
Flash Developerになる4つのヒントYusuke Kamo
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解Monaca
 
20131209_buildinsidermeetup
20131209_buildinsidermeetup20131209_buildinsidermeetup
20131209_buildinsidermeetupkumake
 
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップRAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップKaz Aiso
 
Apiドキュメンテーションツールを使いこなす【api blueprint編】
Apiドキュメンテーションツールを使いこなす【api blueprint編】Apiドキュメンテーションツールを使いこなす【api blueprint編】
Apiドキュメンテーションツールを使いこなす【api blueprint編】dcubeio
 
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」Kaz Aiso
 

Similar to Docmgt_004 (20)

[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
[関東Firefox OS 勉強会10th 講演資料] リクルートにおけるFirefox osアプリへの取り組み
 
リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~
リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~
リクルートにおけるFirefox OSアプリへの取り組み ~0.8人月でできるアプリ!?~
 
クロスプラットフォーム開発入門
クロスプラットフォーム開発入門クロスプラットフォーム開発入門
クロスプラットフォーム開発入門
 
スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
Modern frontend overview_r3
Modern frontend overview_r3Modern frontend overview_r3
Modern frontend overview_r3
 
CakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がりCakePHP × 国産! baserCMS3の深化と今後の拡がり
CakePHP × 国産! baserCMS3の深化と今後の拡がり
 
オープンソースCMSにみる、現場で使えるjava scriptライブラリ
オープンソースCMSにみる、現場で使えるjava scriptライブラリオープンソースCMSにみる、現場で使えるjava scriptライブラリ
オープンソースCMSにみる、現場で使えるjava scriptライブラリ
 
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
 
達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)達人出版会のご紹介(技術編)
達人出版会のご紹介(技術編)
 
ASP.NET SPA開発をはじめよう~今と未来とステップアップ
ASP.NET SPA開発をはじめよう~今と未来とステップアップASP.NET SPA開発をはじめよう~今と未来とステップアップ
ASP.NET SPA開発をはじめよう~今と未来とステップアップ
 
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
.NET の今と未来 ~ デバイス&クラウド ネイティブを目指して
 
クラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれクラウド開発に役立つ OSS あれこれ
クラウド開発に役立つ OSS あれこれ
 
Flash Developerになる4つのヒント
Flash Developerになる4つのヒントFlash Developerになる4つのヒント
Flash Developerになる4つのヒント
 
HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解HTML5 クロスプラットフォームアプリ開発の現実解
HTML5 クロスプラットフォームアプリ開発の現実解
 
20131209_buildinsidermeetup
20131209_buildinsidermeetup20131209_buildinsidermeetup
20131209_buildinsidermeetup
 
What is xaml
What is xamlWhat is xaml
What is xaml
 
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップRAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
RAD Studioで始めるマルチデバイス・クロスプラットフォーム開発ワークショップ
 
20061007.saas
20061007.saas20061007.saas
20061007.saas
 
Apiドキュメンテーションツールを使いこなす【api blueprint編】
Apiドキュメンテーションツールを使いこなす【api blueprint編】Apiドキュメンテーションツールを使いこなす【api blueprint編】
Apiドキュメンテーションツールを使いこなす【api blueprint編】
 
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
Webセミナー「RAD Studio 10.1 Berlin Update 2 Anniversary Edition 新機能ガイド」
 

Docmgt_004