SlideShare a Scribd company logo
1 of 40
JavaScript 
テンプレートエンジンで 
活かすData API 
2014/11/29 
MTDDC Meetup TOKYO 2014 
藤本壱 
1
アジェンダ 
• 自己紹介 
• JavaScriptテンプレートエンジンでData APIを活かす 
• Handlebarsでの例 
• Angular.jsでの例 
• まとめ 
2
自己紹介 
3
自己紹介その1 
• 藤本壱(ふじもとはじめ) 
• 兵庫県伊丹市出身 
• 群馬県前橋市在住 
埼玉 
東京 
山梨 
神奈川 
栃木 
茨城 
千葉 
4
自己紹介その2 
• 本職はPC系のフリーライター 
• 2004年秋からMovable Typeユーザー 
• さまざまなプラグインを開発 
5
自己紹介その3 
• ブログはもちろんMovable Type 
6 http://www.h-fj.com/blog/
テンプレートエンジンでData APIを活かす 
7
Data APIを 
使ったことがありますか? 
8
Data APIの概要 
• 管理画面を使わずにMovable Typeのデータを操作する仕組み 
• アクセスするアドレスとメソッドに応じて操作(REST) 
• データの取得/作成/更新/削除が可能 
• データはJSON形式で受け渡し 
• 各種のプログラム言語でアクセス可能 
• JavaScriptライブラリあり 
9
Data APIにアクセスする例 
• IDが1番のウェブサイトから記事を読み込む 
http://your-host/path-to-mt/mt-data-api.cgi/v1/sites/1/entries 
10
Data APIでできること 
• Web製作では… 
• ページ分割 
• 検索 
• 独自の管理画面 
• Etc. 
• Web製作以外では… 
• スマートフォン/タブレット用アプリのバックエンド 
• Etc. 
11
Data APIの難点 
• プログラミングが必要 
• デザイナー(ノンプログラマー)の方には難しい 
• 開発すべてをプログラマーに任せると… 
• デザインが… 
• HTMLを修正するたびにプログラマーに依頼… 
12
テンプレートエンジンでデザインとロジックを分離 
• テンプレートエンジン=テンプレートを解釈してHTML等に変換 
して出力する仕組み 
• ロジック(プログラム)とデザインを分離 
• プログラマーとデザイナーの分業 
13
JavaScriptテンプレートエンジンを活用 
• JavaScriptならData APIのプログラミングをしやすい 
• JavaScriptのテンプレートエンジンと組み合わせることも可能 
• MTMLとまったく同じではないものの、MTMLに近い形でテンプ 
レートを記述できるように工夫 
14
HandleBarsでの例 
15
HandleBarsの概要 
• http://handlebarsjs.com/ 
• 比較的シンプルなテンプレートエンジン 
• ロジックレス(テンプレートにプログラムを書かない) 
• mustacheの上位互換 
• JavaScriptのオブジェクトをテンプレートに当てはめて出力 
• 機能拡張も可能(ヘルパー) 
16
HandleBarsの基本 
17 
テンプレートJavaScript 
<script id="tmpl" type="text/x-handlebars- 
template"> 
<ul> 
{{#names}} 
<li>Hello, {{name}}</li> 
{{/names}} 
</ul> 
</script> 
<div id="output"></div> 
var src = $('#tmpl').html(); 
var tmpl = Handlebars.compile(src); 
var names = [ 
{ name: 'Taro' }, 
{ name: 'Jiro' }, 
{ name: 'Saburo' } 
]; 
var output = tmpl({ names: names }); 
$('#output').html(output);
HandleBarsの基本 
18 
テンプレート結果 
<script id="tmpl" type="text/x-handlebars- 
template"> 
<ul> 
{{#names}} 
<li>Hello, {{name}}</li> 
{{/names}} 
</ul> 
</script> 
<div id="output"></div> 
<div id="output"> 
<ul> 
<li>Hello, Taro</li> 
<li>Hello, Jiro</li> 
<li>Hello, Saburo</li> 
</ul> 
</div>
HandlerBars+Data APIの例:ページ分割 
• Data APIで各ページの記事のデータを取得 
• できるだけMovbale Typeのテンプレートに近い感じになるよう 
にデータを一部加工 
• テンプレートにデータを当てはめて出力 
19
記事一覧出力部分 
20 
<ul> 
{{#mt:Entries}} 
<li> 
<h2> 
<a href="{{mt:EntryPermalink}}">{{mt:EntryTitle}}</a> 
</h2> 
<p>{{mt:EntryExcerpt}}</p> 
</li> 
{{/mt:Entries}} 
</ul>
ページ移動リンク出力部分 
21 
<ul class="pager"> 
{{#mt:PagerBlock}} 
<li> 
{{#mt:IfCurrentPage}} 
{{mt:CurrentPage}} 
{{/mt:IfCurrentPage}} 
{{#mt:IfNotCurrentPage}} 
<a href="{{mt:PagerLink}}">{{mt:CurrentPage}}</a> 
{{/mt:IfNotCurrentPage}} 
</li> 
{{/mt:PagerBlock}} 
</ul>
記事の読み込みとデータの加工 
22 
DataAPI.listEntries(<$mt:BlogID$>, params, function(response) { 
var o = {}; 
o['mt:Entries'] = []; 
for (var i = 0; i < response.items.length; i++) { 
var r = response.items[i]; 
o['mt:Entries'].push({ 
'mt:EntryTitle': r.title, 
'mt:EntryExcerpt': r.excerpt, 
'mt:EntryPermalink': r.permalink 
}); 
}
ページ移動リンク出力用データの作成 
23 
o['mt:PagerBlock'] = []; 
for (var i = 0; i < totalPages; i++) { 
o['mt:PagerBlock'].push({ 
'mt:CurrentPage': i + 1, 
'mt:IfCurrentPage': (i + 1 == page_num), 
'mt:IfNotCurrentPage': (i + 1 != page_num), 
'mt:IfMoreResults': (i < totalPages - 1), 
'mt:IfPreviousResults': i > 1, 
'mt:NextLink': '#/' + (i + 2), 
'mt:PreviousLink': '#/' + i, 
'mt:PagerLink': '#/' + (i + 1), 
}); 
}
Angular.jsでの例 
24
Angular.jsの概要 
• https://angularjs.org/ 
• Google製/オープンソース 
• MVW(Model-View-Whatever)のWebアプリ開発フレームワーク 
• 多彩な機能 
• テンプレートエンジン 
• 双方向データバインディング 
• URLのルーティング 
• Etc. 
25
Angular.jsの基本 
26 
テンプレートJavaScript 
<html ng-app="SampleApp"> 
<head> 
・・・ 
</head> 
<body ng-controller="SampleAppCtrl"> 
<ul> 
<li ng-repeat="name in names"> 
Hello, {{name}} 
</li> 
</ul> 
</body> 
</html> 
var SampleApp = 
angular.module('SampleApp', []); 
SampleApp.controller('SampleAppCtrl', 
function($scope) { 
$scope.names = [ 
'Taro', 'Jiro', 'Saburo', 
]; 
} 
);
Angular.jsの基本 
27 
テンプレート結果 
<html ng-app="SampleApp"> 
<head> 
・・・ 
</head> 
<body ng-controller="SampleAppCtrl"> 
<ul> 
<li ng-repeat="name in names"> 
Hello, {{name}} 
</li> 
</ul> 
</body> 
</html> 
<ul> 
<li>Hello, Taro</li> 
<li>Hello, Jiro</li> 
<li>Hello, Saburo</li> 
</ul>
Angular.js+Data APIの例:独自の記事編集画面 
• 一覧で編集対象の記事を選択 
• 編集ページで記事を編集して保存 
• Data APIで記事の取得/保存を行い、Angular JSで入出力を管 
理 
28
記事一覧出力部分 
29 
<ul> 
<li ng-repeat="mt in mt.Entries"> 
<h2> 
<a href="{{mt.EntryPermalink}}">{{mt.EntryTitle}}</a> 
</h2> 
<p>{{mt.EntryExcerpt}}</p> 
</li> 
</ul>
ページ移動リンク出力部分 
30 
<ul class="pager"> 
<li ng-repeat="mt in mt.PagerBlock"> 
<span ng-if="mt.IfCurrentPage"> 
{{mt.CurrentPage}} 
</span> 
<a ng-if="mt.IfNotCurrentPage" href="{{mt.PagerLink}}"> 
{{mt.CurrentPage}} 
</a> 
</li> 
</ul>
記事編集ページ出力部分 
31 
<form ng-submit="save()"> 
<p>タイトル 
<input type="text" size="50" ng-model="mt.EntryTitle“ 
ng-disabled="disableFlag" /> 
</p> 
<p>本文<br /> 
<textarea rows="15" cols="80" ng-model="mt.EntryBody“ 
ng-disabled="disableFlag"></textarea> 
</p> 
<p><button type="submit">保存</button></p> 
</form>
記事一覧の読み込みとデータの加工 
32 
DataAPI.listEntries(<$mt:BlogID$>, params, function(response) { 
$scope.mt = {}; 
$scope.mt.Entries = []; 
for (var i = 0; i < response.items.length; i++) { 
var r = response.items[i]; 
$scope.mt.Entries.push({ 
EntryTitle: r.title, 
EntryExcerpt: r.excerpt, 
EntryPermalink: r.permalink 
}); 
} 
});
記事編集画面の表示 
33 
DataAPI.getEntry(<$mt:BlogID$>, $scope.entry_id, 
function(response) { 
$scope.mt.IfLogin = true; 
$scope.mt.EntryTitle = response.title; 
$scope.mt.EntryBody = response.body; 
$scope.$apply(); 
} 
);
記事の保存 
34 
var entry = { 
title: $scope.mt.EntryTitle, 
body: $scope.mt.EntryBody 
}; 
DataAPI.updateEntry(<$mt:BlogID$>, $scope.entry_id, 
entry, function(response) { 
alert('記事を保存しました。'); 
});
テンプレートエンジンの使い分け 
• 案件によって異なる 
• 単純なデータ出力だけ→ シンプルなテンプレートエンジン 
• Webアプリ的な複雑な処理→ フレームワーク 
35
まとめ 
36
まとめ 
• JavaScriptテンプレートエンジンを活用して、JavaScript絡みの処 
理でもロジックとデザインを分離 
• Data APIとJavaScriptテンプレートエンジンを組み合わせることも 
可能 
• テンプレートエンジンでData APIを活用 
37
One More Thing 
38
FreeLayoutCustomFieldプラグインのご紹介 
• HTMLとCSSでデザインできるカスタムフィールド 
• 複数の入力欄を自由にレイアウト可能 
• 同じレイアウトの組み合わせを複数件入力可能 
• 複数のレイアウトの組み合わせから選択して入力可能 
39
ご清聴ありがとうございました 
40

More Related Content

What's hot

20160610 mtsaga handson_public
20160610 mtsaga handson_public20160610 mtsaga handson_public
20160610 mtsaga handson_publicSix Apart
 
詳説 Movable type 7
詳説 Movable type 7詳説 Movable type 7
詳説 Movable type 7Yuji Takayama
 
20130225 pronet study
20130225 pronet study20130225 pronet study
20130225 pronet studySix Apart
 
Word Press on Movable Type
Word Press on Movable TypeWord Press on Movable Type
Word Press on Movable TypeHajime Fujimoto
 
20141101 handson
20141101 handson20141101 handson
20141101 handsonSix Apart
 
仕事で使うちょっとしたコードをOSSとして開発メンテしていく - Django Redshift Backend の開発 - PyCon JP 2016
仕事で使うちょっとしたコードをOSSとして開発メンテしていく- Django Redshift Backend の開発 - PyCon JP 2016仕事で使うちょっとしたコードをOSSとして開発メンテしていく- Django Redshift Backend の開発 - PyCon JP 2016
仕事で使うちょっとしたコードをOSSとして開発メンテしていく - Django Redshift Backend の開発 - PyCon JP 2016Takayuki Shimizukawa
 
20140228 Movable Type Seminar
20140228 Movable Type Seminar20140228 Movable Type Seminar
20140228 Movable Type SeminarSix Apart
 
Movable Type 7 のすべて
Movable Type 7 のすべてMovable Type 7 のすべて
Movable Type 7 のすべてYuji Takayama
 
jQueryを中心としたJavaScript
jQueryを中心としたJavaScriptjQueryを中心としたJavaScript
jQueryを中心としたJavaScripthideaki honda
 
20180709 pronet study
20180709 pronet study20180709 pronet study
20180709 pronet studySix Apart
 
MediaWiki Tips for saveMLAK - wikibana
MediaWiki Tips for saveMLAK - wikibanaMediaWiki Tips for saveMLAK - wikibana
MediaWiki Tips for saveMLAK - wikibananinomy
 
僕がやったXaml戦略
僕がやったXaml戦略僕がやったXaml戦略
僕がやったXaml戦略Hiroyuki Mori
 
WordPressで作るポートフォリオサイト
WordPressで作るポートフォリオサイトWordPressで作るポートフォリオサイト
WordPressで作るポートフォリオサイトTakuma Nishiyama
 
Web development fundamental_v2
Web development fundamental_v2Web development fundamental_v2
Web development fundamental_v2Takuya Kumagai
 
データバインディング徹底攻略
データバインディング徹底攻略データバインディング徹底攻略
データバインディング徹底攻略Hiroyuki Mori
 
Firefox OSアプリ 「ModeView」
Firefox OSアプリ 「ModeView」Firefox OSアプリ 「ModeView」
Firefox OSアプリ 「ModeView」Hideki Akiba
 
Django 1.5 における効果的な MTV 設計 & ネイティブApp
Django 1.5 における効果的な MTV 設計 & ネイティブAppDjango 1.5 における効果的な MTV 設計 & ネイティブApp
Django 1.5 における効果的な MTV 設計 & ネイティブAppYikei Lu
 
Data APIの背景と活用方法
Data APIの背景と活用方法Data APIの背景と活用方法
Data APIの背景と活用方法Hajime Fujimoto
 
20130626 movable type seminar
20130626 movable type seminar20130626 movable type seminar
20130626 movable type seminarSix Apart
 

What's hot (20)

20160610 mtsaga handson_public
20160610 mtsaga handson_public20160610 mtsaga handson_public
20160610 mtsaga handson_public
 
詳説 Movable type 7
詳説 Movable type 7詳説 Movable type 7
詳説 Movable type 7
 
20130225 pronet study
20130225 pronet study20130225 pronet study
20130225 pronet study
 
Word Press on Movable Type
Word Press on Movable TypeWord Press on Movable Type
Word Press on Movable Type
 
20141101 handson
20141101 handson20141101 handson
20141101 handson
 
仕事で使うちょっとしたコードをOSSとして開発メンテしていく - Django Redshift Backend の開発 - PyCon JP 2016
仕事で使うちょっとしたコードをOSSとして開発メンテしていく- Django Redshift Backend の開発 - PyCon JP 2016仕事で使うちょっとしたコードをOSSとして開発メンテしていく- Django Redshift Backend の開発 - PyCon JP 2016
仕事で使うちょっとしたコードをOSSとして開発メンテしていく - Django Redshift Backend の開発 - PyCon JP 2016
 
20140228 Movable Type Seminar
20140228 Movable Type Seminar20140228 Movable Type Seminar
20140228 Movable Type Seminar
 
Movable Type 7 のすべて
Movable Type 7 のすべてMovable Type 7 のすべて
Movable Type 7 のすべて
 
jQueryを中心としたJavaScript
jQueryを中心としたJavaScriptjQueryを中心としたJavaScript
jQueryを中心としたJavaScript
 
20180709 pronet study
20180709 pronet study20180709 pronet study
20180709 pronet study
 
Wb tokyo 2013
Wb tokyo 2013Wb tokyo 2013
Wb tokyo 2013
 
MediaWiki Tips for saveMLAK - wikibana
MediaWiki Tips for saveMLAK - wikibanaMediaWiki Tips for saveMLAK - wikibana
MediaWiki Tips for saveMLAK - wikibana
 
僕がやったXaml戦略
僕がやったXaml戦略僕がやったXaml戦略
僕がやったXaml戦略
 
WordPressで作るポートフォリオサイト
WordPressで作るポートフォリオサイトWordPressで作るポートフォリオサイト
WordPressで作るポートフォリオサイト
 
Web development fundamental_v2
Web development fundamental_v2Web development fundamental_v2
Web development fundamental_v2
 
データバインディング徹底攻略
データバインディング徹底攻略データバインディング徹底攻略
データバインディング徹底攻略
 
Firefox OSアプリ 「ModeView」
Firefox OSアプリ 「ModeView」Firefox OSアプリ 「ModeView」
Firefox OSアプリ 「ModeView」
 
Django 1.5 における効果的な MTV 設計 & ネイティブApp
Django 1.5 における効果的な MTV 設計 & ネイティブAppDjango 1.5 における効果的な MTV 設計 & ネイティブApp
Django 1.5 における効果的な MTV 設計 & ネイティブApp
 
Data APIの背景と活用方法
Data APIの背景と活用方法Data APIの背景と活用方法
Data APIの背景と活用方法
 
20130626 movable type seminar
20130626 movable type seminar20130626 movable type seminar
20130626 movable type seminar
 

Similar to JavaScriptテンプレートエンジンで活かすData API

scala+liftで遊ぼう
scala+liftで遊ぼうscala+liftで遊ぼう
scala+liftで遊ぼうyouku
 
JavaScriptテンプレートエンジンで活かすData API
JavaScriptテンプレートエンジンで活かすData APIJavaScriptテンプレートエンジンで活かすData API
JavaScriptテンプレートエンジンで活かすData APIHajime Fujimoto
 
データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回Naoyuki Yamada
 
エンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSエンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSAyumi Goto
 
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現インフラジスティックス・ジャパン株式会社
 
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発Akira Inoue
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Kazumi IWANAGA
 
【Xpages day2016】標準コントールを使わないxpage開発
【Xpages day2016】標準コントールを使わないxpage開発【Xpages day2016】標準コントールを使わないxpage開発
【Xpages day2016】標準コントールを使わないxpage開発西 雄樹
 
ASP.NET MVC 2 ~新機能の紹介~
ASP.NET MVC 2 ~新機能の紹介~ASP.NET MVC 2 ~新機能の紹介~
ASP.NET MVC 2 ~新機能の紹介~Yoshitaka Seo
 
Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15Hideki Hashizume
 
Parse.comと始めるBackbone.js入門(jscafe7)
Parse.comと始めるBackbone.js入門(jscafe7)Parse.comと始めるBackbone.js入門(jscafe7)
Parse.comと始めるBackbone.js入門(jscafe7)Ryuma Tsukano
 
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイドXPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイドTetsuji Hayashi
 
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできるTECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできるQlikPresalesJapan
 
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介Fumiya Sakai
 
CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)Kenji Shirane
 
はじめよう Backbone.js
はじめよう Backbone.jsはじめよう Backbone.js
はじめよう Backbone.jsHiroki Toyokawa
 

Similar to JavaScriptテンプレートエンジンで活かすData API (20)

scala+liftで遊ぼう
scala+liftで遊ぼうscala+liftで遊ぼう
scala+liftで遊ぼう
 
JavaScriptテンプレートエンジンで活かすData API
JavaScriptテンプレートエンジンで活かすData APIJavaScriptテンプレートエンジンで活かすData API
JavaScriptテンプレートエンジンで活かすData API
 
データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回データマイニング+WEB勉強会資料第6回
データマイニング+WEB勉強会資料第6回
 
AngularJS入門
AngularJS入門AngularJS入門
AngularJS入門
 
エンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJSエンタープライズ分野での実践AngularJS
エンタープライズ分野での実践AngularJS
 
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
Web アプリケーションにおけるクライアントサイドのデータハンドリングと可視化の実現
 
Data API 2.0
Data API 2.0Data API 2.0
Data API 2.0
 
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
 
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?Azure でサーバーレス、 Infrastructure as Code どうしてますか?
Azure でサーバーレス、 Infrastructure as Code どうしてますか?
 
【Xpages day2016】標準コントールを使わないxpage開発
【Xpages day2016】標準コントールを使わないxpage開発【Xpages day2016】標準コントールを使わないxpage開発
【Xpages day2016】標準コントールを使わないxpage開発
 
お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1
お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1
お客様が望んでいるモダンデスクトップアプリとは?/傾向と対策 Part1
 
APIMeetup 20170329_ichimura
APIMeetup 20170329_ichimuraAPIMeetup 20170329_ichimura
APIMeetup 20170329_ichimura
 
ASP.NET MVC 2 ~新機能の紹介~
ASP.NET MVC 2 ~新機能の紹介~ASP.NET MVC 2 ~新機能の紹介~
ASP.NET MVC 2 ~新機能の紹介~
 
Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15
 
Parse.comと始めるBackbone.js入門(jscafe7)
Parse.comと始めるBackbone.js入門(jscafe7)Parse.comと始めるBackbone.js入門(jscafe7)
Parse.comと始めるBackbone.js入門(jscafe7)
 
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイドXPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
XPagesDay2014 A-4 XPages with jQueryMobile BADプラクティスガイド
 
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできるTECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
TECHTALK 20200715 分析データをセルフサービスで準備ーデータマネージャーでもっとできる
 
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
RxDataSourceをNSDiffableDataSourceへ置き換える際のTips集紹介
 
CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)CMSMix Sapporo vol.3 (Drupal の回)
CMSMix Sapporo vol.3 (Drupal の回)
 
はじめよう Backbone.js
はじめよう Backbone.jsはじめよう Backbone.js
はじめよう Backbone.js
 

More from Hajime Fujimoto

Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSIONMovable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSIONHajime Fujimoto
 
コンテンツタイプの活用と拡張
コンテンツタイプの活用と拡張コンテンツタイプの活用と拡張
コンテンツタイプの活用と拡張Hajime Fujimoto
 
Objecttreeプラグイン&ObjectRelationプラグインのご紹介
Objecttreeプラグイン&ObjectRelationプラグインのご紹介Objecttreeプラグイン&ObjectRelationプラグインのご紹介
Objecttreeプラグイン&ObjectRelationプラグインのご紹介Hajime Fujimoto
 
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介Hajime Fujimoto
 
Movable Typeの権限と承認フロー
Movable Typeの権限と承認フローMovable Typeの権限と承認フロー
Movable Typeの権限と承認フローHajime Fujimoto
 
2つの「Layout」プラグインでMovable Typeをパワーアップ
2つの「Layout」プラグインでMovable Typeをパワーアップ2つの「Layout」プラグインでMovable Typeをパワーアップ
2つの「Layout」プラグインでMovable TypeをパワーアップHajime Fujimoto
 
はじめよう!MovableType.net ハンズオン
はじめよう!MovableType.net ハンズオンはじめよう!MovableType.net ハンズオン
はじめよう!MovableType.net ハンズオンHajime Fujimoto
 
Data APIの背景と活用方法 MTCafe Nagoya Ver.
Data APIの背景と活用方法 MTCafe Nagoya Ver.Data APIの背景と活用方法 MTCafe Nagoya Ver.
Data APIの背景と活用方法 MTCafe Nagoya Ver.Hajime Fujimoto
 
Movable Type 6.0をできるだけ安く使う方法
Movable Type 6.0をできるだけ安く使う方法Movable Type 6.0をできるだけ安く使う方法
Movable Type 6.0をできるだけ安く使う方法Hajime Fujimoto
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable TypeHajime Fujimoto
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable TypeHajime Fujimoto
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable TypeHajime Fujimoto
 
WordPress on movable type(WordCamp Kobe 2013)
WordPress on movable type(WordCamp Kobe 2013)WordPress on movable type(WordCamp Kobe 2013)
WordPress on movable type(WordCamp Kobe 2013)Hajime Fujimoto
 
Wordpress on Movable Type~WPConnectorプラグインのご紹介~
Wordpress on Movable Type~WPConnectorプラグインのご紹介~Wordpress on Movable Type~WPConnectorプラグインのご紹介~
Wordpress on Movable Type~WPConnectorプラグインのご紹介~Hajime Fujimoto
 
デザイナーにもできる再構築の高速化/負荷分散
デザイナーにもできる再構築の高速化/負荷分散 デザイナーにもできる再構築の高速化/負荷分散
デザイナーにもできる再構築の高速化/負荷分散 Hajime Fujimoto
 
Amazonec2ではじめるMovable Type
Amazonec2ではじめるMovable TypeAmazonec2ではじめるMovable Type
Amazonec2ではじめるMovable TypeHajime Fujimoto
 
MTCafe Gunma 2013へのお誘い
MTCafe Gunma 2013へのお誘いMTCafe Gunma 2013へのお誘い
MTCafe Gunma 2013へのお誘いHajime Fujimoto
 

More from Hajime Fujimoto (20)

Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSIONMovable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
Movable Typeでロボットを動かす?AIスピーカーをしゃべらせる?Data APIでMovable TypeとIoTをFUSION
 
コンテンツタイプの活用と拡張
コンテンツタイプの活用と拡張コンテンツタイプの活用と拡張
コンテンツタイプの活用と拡張
 
PowerCMSとIoTの連携
PowerCMSとIoTの連携PowerCMSとIoTの連携
PowerCMSとIoTの連携
 
Connect with Data API
Connect with Data APIConnect with Data API
Connect with Data API
 
Objecttreeプラグイン&ObjectRelationプラグインのご紹介
Objecttreeプラグイン&ObjectRelationプラグインのご紹介Objecttreeプラグイン&ObjectRelationプラグインのご紹介
Objecttreeプラグイン&ObjectRelationプラグインのご紹介
 
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
PHPやVBAでMovable Typeを操作しようData API Library for PHP/VBAのご紹介
 
Movable Typeの権限と承認フロー
Movable Typeの権限と承認フローMovable Typeの権限と承認フロー
Movable Typeの権限と承認フロー
 
2つの「Layout」プラグインでMovable Typeをパワーアップ
2つの「Layout」プラグインでMovable Typeをパワーアップ2つの「Layout」プラグインでMovable Typeをパワーアップ
2つの「Layout」プラグインでMovable Typeをパワーアップ
 
はじめよう!MovableType.net ハンズオン
はじめよう!MovableType.net ハンズオンはじめよう!MovableType.net ハンズオン
はじめよう!MovableType.net ハンズオン
 
Data APIの背景と活用方法 MTCafe Nagoya Ver.
Data APIの背景と活用方法 MTCafe Nagoya Ver.Data APIの背景と活用方法 MTCafe Nagoya Ver.
Data APIの背景と活用方法 MTCafe Nagoya Ver.
 
Movable Type 6.0をできるだけ安く使う方法
Movable Type 6.0をできるだけ安く使う方法Movable Type 6.0をできるだけ安く使う方法
Movable Type 6.0をできるだけ安く使う方法
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable Type
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable Type
 
Vagrantのすすめ
VagrantのすすめVagrantのすすめ
Vagrantのすすめ
 
WordPress on Movable Type
WordPress on Movable TypeWordPress on Movable Type
WordPress on Movable Type
 
WordPress on movable type(WordCamp Kobe 2013)
WordPress on movable type(WordCamp Kobe 2013)WordPress on movable type(WordCamp Kobe 2013)
WordPress on movable type(WordCamp Kobe 2013)
 
Wordpress on Movable Type~WPConnectorプラグインのご紹介~
Wordpress on Movable Type~WPConnectorプラグインのご紹介~Wordpress on Movable Type~WPConnectorプラグインのご紹介~
Wordpress on Movable Type~WPConnectorプラグインのご紹介~
 
デザイナーにもできる再構築の高速化/負荷分散
デザイナーにもできる再構築の高速化/負荷分散 デザイナーにもできる再構築の高速化/負荷分散
デザイナーにもできる再構築の高速化/負荷分散
 
Amazonec2ではじめるMovable Type
Amazonec2ではじめるMovable TypeAmazonec2ではじめるMovable Type
Amazonec2ではじめるMovable Type
 
MTCafe Gunma 2013へのお誘い
MTCafe Gunma 2013へのお誘いMTCafe Gunma 2013へのお誘い
MTCafe Gunma 2013へのお誘い
 

Recently uploaded

Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 

Recently uploaded (9)

Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 

JavaScriptテンプレートエンジンで活かすData API