SlideShare une entreprise Scribd logo
1  sur  35
Pilika
   Java
Pilika

‣ XHTML
‣ 2009 1
‣ Java
‣
‣
‣   View

‣
‣
‣   View

‣
‣ XHTML
‣
‣
XHTML

‣
    → Dreamweaver
    →

‣
‣ View
         α



‣
‣
    →

‣
Example -
<p>
  <span plk:content=” user_name”>XX</span>
</p>
Example -
<p>
  <span plk:content=” user_name”>XX</span>
</p>
                   {‘user_name’ => ‘Duke’ }
Example -
<p>
  <span plk:content=” user_name”>XX</span>
</p>
                   {‘user_name’ => ‘Duke’ }

<p>
  <span>Duke</span>
</p>
Example -
<p>      ${user_name}</p>
Example -
<p>      ${user_name}</p>

                 {‘user_name’ => ‘Duke’ }
Example -
<p>      ${user_name}</p>

                 {‘user_name’ => ‘Duke’ }

<p>      Duke</p>
Example -
<p plk:if=quot;is_loginquot; >   </p>
Example -
<p plk:if=quot;is_loginquot; >            </p>

                  {‘is_login’ => true }
Example -
<p plk:if=quot;is_loginquot; >            </p>

                  {‘is_login’ => true }
<p>             </p>
Example -
<p plk:if=quot;is_loginquot; >              </p>

                   {‘is_login’ => true }
<p>             </p>


<p plk:if.not=quot;is_loginquot; >
                             </p>
Example -
<ul>
 <li plk:for=quot;item in itemsquot;>${item}</li>
</ul>
Example -
<ul>
 <li plk:for=quot;item in itemsquot;>${item}</li>
</ul>
                   items = [‘Apple’,‘Orange’,‘Pine’]
                   {‘items’ => items }
Example -
<ul>
 <li plk:for=quot;item in itemsquot;>${item}</li>
</ul>
                   items = [‘Apple’,‘Orange’,‘Pine’]
                   {‘items’ => items }
<ul>
 <li>Apple</li>
 <li>Orange</li>
 <li>Pine</li>
</ul>
‣
‣   View

‣
View

‣
‣ Controller/Model
‣ JRuby on Rails
JRuby

‣ Java VM         Ruby

‣ Ruby on Rails
‣ Ruby Java
JRuby on Rails
‣
‣ Glassfish V3   War

‣ View
JRuby on Rails
‣
‣ Glassfish V3   War

‣ View
       Pilika
JRuby on Rails
Controller/Model    View
    Rails          Pilika


      Java
   JRuby            JRE
‣
‣   View

‣
‣     View




‣ JSR223
JSR 223
Scripting for Java Platform
‣ Java
   → https://scripting.dev.java.net/

‣ Ruby, Python, Groovy, Java Script…
ScriptEngineManager mng = new ScriptEngineManager();
ScriptEngine engine = mng.getEngineByName(quot;rubyquot;);
engine.eval(quot;puts ‘Hello, JRuby!’quot;);
<div plk:content=quot;item.namequot;
      plk:attr.class=quot;item_class(item)quot; >
            </div>
  <plk:def type=quot;functionquot; language=quot;rubyquot;
           name=quot;item_class(item)quot; >
<![CDATA[
def item_class(item)
  return 'new_item' if BASE_TIME < item.entry_at
  ''
end
]]>
  </plk:def>
<div plk:content=quot;item.namequot;
      plk:attr.class=quot;item_class(item)quot; >
            </div>
  <plk:def type=quot;functionquot; language=quot;rubyquot;
           name=quot;item_class(item)quot; >
<![CDATA[
def item_class(item)
  return 'new_item' if BASE_TIME < item.entry_at
  ''                    Ruby
end
]]>
  </plk:def>
‣
‣ Java                             Rails

‣
‣ http://www.deathmarch.jp/pilika/
Pilika
Pilika

Contenu connexe

En vedette

What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...
What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...
What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...National Partnership for Educational Access
 
Why Choose Palmetto
Why Choose PalmettoWhy Choose Palmetto
Why Choose PalmettoWill Welborn
 
00 Parvularia Cuadro Trimestral
00  Parvularia Cuadro Trimestral00  Parvularia Cuadro Trimestral
00 Parvularia Cuadro TrimestralAdalberto
 
Dam Vision
Dam VisionDam Vision
Dam Visionmohedssk
 
coca cola Performance Incentive Plan of The Coca-Cola Company (Amended and R...
coca cola  Performance Incentive Plan of The Coca-Cola Company (Amended and R...coca cola  Performance Incentive Plan of The Coca-Cola Company (Amended and R...
coca cola Performance Incentive Plan of The Coca-Cola Company (Amended and R...finance9
 
Andrew Paladino- Starting a Network of Influence Complete
Andrew Paladino- Starting a Network of Influence Complete Andrew Paladino- Starting a Network of Influence Complete
Andrew Paladino- Starting a Network of Influence Complete Andrew Paladino
 
du pont Earnings Release2006 2nd
du pont Earnings Release2006 2nddu pont Earnings Release2006 2nd
du pont Earnings Release2006 2ndfinance9
 
Sijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. Yahya
Sijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. YahyaSijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. Yahya
Sijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. YahyaIzzuddin Norrahman
 
sun trust banks 1Q 2008 10Q
sun trust banks 	1Q 2008 10Qsun trust banks 	1Q 2008 10Q
sun trust banks 1Q 2008 10Qfinance20
 
Undervisningsdesigns og digitale læringsteknologier oplæg på bk-uddannelsen...
Undervisningsdesigns og digitale læringsteknologier   oplæg på bk-uddannelsen...Undervisningsdesigns og digitale læringsteknologier   oplæg på bk-uddannelsen...
Undervisningsdesigns og digitale læringsteknologier oplæg på bk-uddannelsen...Ulla L. Ringtved
 
Home Selling Tips - Pricing and Staging
Home Selling Tips - Pricing and StagingHome Selling Tips - Pricing and Staging
Home Selling Tips - Pricing and StagingDan Eason
 
du pont 2005 Annual Meeting Proxy Statement
du pont 2005 Annual Meeting Proxy Statementdu pont 2005 Annual Meeting Proxy Statement
du pont 2005 Annual Meeting Proxy Statementfinance9
 
Jensen william ppp_pcp_1504
Jensen william ppp_pcp_1504Jensen william ppp_pcp_1504
Jensen william ppp_pcp_1504William Jensen
 
consoliddated edison 2004_annual
consoliddated edison 2004_annual consoliddated edison 2004_annual
consoliddated edison 2004_annual finance20
 

En vedette (18)

What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...
What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...
What We Did Right and What We'd Never Do Again: Lessons Learned in Program Re...
 
Why Choose Palmetto
Why Choose PalmettoWhy Choose Palmetto
Why Choose Palmetto
 
Gaza In Focus
Gaza In FocusGaza In Focus
Gaza In Focus
 
00 Parvularia Cuadro Trimestral
00  Parvularia Cuadro Trimestral00  Parvularia Cuadro Trimestral
00 Parvularia Cuadro Trimestral
 
Boletim1 2014
Boletim1 2014Boletim1 2014
Boletim1 2014
 
Dam Vision
Dam VisionDam Vision
Dam Vision
 
coca cola Performance Incentive Plan of The Coca-Cola Company (Amended and R...
coca cola  Performance Incentive Plan of The Coca-Cola Company (Amended and R...coca cola  Performance Incentive Plan of The Coca-Cola Company (Amended and R...
coca cola Performance Incentive Plan of The Coca-Cola Company (Amended and R...
 
Andrew Paladino- Starting a Network of Influence Complete
Andrew Paladino- Starting a Network of Influence Complete Andrew Paladino- Starting a Network of Influence Complete
Andrew Paladino- Starting a Network of Influence Complete
 
du pont Earnings Release2006 2nd
du pont Earnings Release2006 2nddu pont Earnings Release2006 2nd
du pont Earnings Release2006 2nd
 
Sijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. Yahya
Sijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. YahyaSijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. Yahya
Sijil Tinggi Muamalat 2 - Prinsip Asas Perniagaan: Tn. Hj. Yahya
 
sun trust banks 1Q 2008 10Q
sun trust banks 	1Q 2008 10Qsun trust banks 	1Q 2008 10Q
sun trust banks 1Q 2008 10Q
 
Undervisningsdesigns og digitale læringsteknologier oplæg på bk-uddannelsen...
Undervisningsdesigns og digitale læringsteknologier   oplæg på bk-uddannelsen...Undervisningsdesigns og digitale læringsteknologier   oplæg på bk-uddannelsen...
Undervisningsdesigns og digitale læringsteknologier oplæg på bk-uddannelsen...
 
Home Selling Tips - Pricing and Staging
Home Selling Tips - Pricing and StagingHome Selling Tips - Pricing and Staging
Home Selling Tips - Pricing and Staging
 
Майкл Джексон
Майкл ДжексонМайкл Джексон
Майкл Джексон
 
du pont 2005 Annual Meeting Proxy Statement
du pont 2005 Annual Meeting Proxy Statementdu pont 2005 Annual Meeting Proxy Statement
du pont 2005 Annual Meeting Proxy Statement
 
Super Reclame
Super ReclameSuper Reclame
Super Reclame
 
Jensen william ppp_pcp_1504
Jensen william ppp_pcp_1504Jensen william ppp_pcp_1504
Jensen william ppp_pcp_1504
 
consoliddated edison 2004_annual
consoliddated edison 2004_annual consoliddated edison 2004_annual
consoliddated edison 2004_annual
 

Plus de Shuji Watanabe

Serverless - Developers.IO 2019
Serverless - Developers.IO 2019Serverless - Developers.IO 2019
Serverless - Developers.IO 2019Shuji Watanabe
 
Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017Shuji Watanabe
 
SSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevioSSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevioShuji Watanabe
 
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #Eプロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #EShuji Watanabe
 
AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -Shuji Watanabe
 
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003Shuji Watanabe
 
CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01 CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01 Shuji Watanabe
 
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014Shuji Watanabe
 
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -Shuji Watanabe
 
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編  #cmdevios3+cloud frontによる静的コンテンツ配信 - Sphinx編  #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevioShuji Watanabe
 
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介   #cmdevioクラスメソッド会社説明会in札幌 — メンバー紹介   #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevioShuji Watanabe
 
テスト駆動開発へようこそ
テスト駆動開発へようこそテスト駆動開発へようこそ
テスト駆動開発へようこそShuji Watanabe
 
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方テスト駆動開発のはじめ方
テスト駆動開発のはじめ方Shuji Watanabe
 
ユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へShuji Watanabe
 
テスト駆動開発入門
テスト駆動開発入門テスト駆動開発入門
テスト駆動開発入門Shuji Watanabe
 
テストコードのリファクタリング
テストコードのリファクタリングテストコードのリファクタリング
テストコードのリファクタリングShuji Watanabe
 
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ーテスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ーShuji Watanabe
 
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテストJUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテストShuji Watanabe
 
アジャイルテスティング
アジャイルテスティングアジャイルテスティング
アジャイルテスティングShuji Watanabe
 

Plus de Shuji Watanabe (20)

Serverless - Developers.IO 2019
Serverless - Developers.IO 2019Serverless - Developers.IO 2019
Serverless - Developers.IO 2019
 
Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017Ansible ハンズオン on AWS - DevelopersIO 2017
Ansible ハンズオン on AWS - DevelopersIO 2017
 
SSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevioSSMでマネージドEC2 #reinvent #cmdevio
SSMでマネージドEC2 #reinvent #cmdevio
 
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #Eプロビジョニングの今 ーフルマネージド・サービスを目指してー  #cmdevio2016 #E
プロビジョニングの今 ーフルマネージド・サービスを目指してー #cmdevio2016 #E
 
ELBの概要と勘所
ELBの概要と勘所ELBの概要と勘所
ELBの概要と勘所
 
AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -AWSによるWebサイト構築と運用 - concrete5 編 -
AWSによるWebサイト構築と運用 - concrete5 編 -
 
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
Cloud FormationによるBlue-Green Deployment - Dev io mtup11 003
 
CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01 CloudSearchによる全文検索 - CM:道 2014/08/01
CloudSearchによる全文検索 - CM:道 2014/08/01
 
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
 
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
 
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編  #cmdevios3+cloud frontによる静的コンテンツ配信 - Sphinx編  #cmdevio
s3+cloud frontによる静的コンテンツ配信 - Sphinx編 #cmdevio
 
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介   #cmdevioクラスメソッド会社説明会in札幌 — メンバー紹介   #cmdevio
クラスメソッド会社説明会in札幌 — メンバー紹介 #cmdevio
 
テスト駆動開発へようこそ
テスト駆動開発へようこそテスト駆動開発へようこそ
テスト駆動開発へようこそ
 
テスト駆動開発のはじめ方
テスト駆動開発のはじめ方テスト駆動開発のはじめ方
テスト駆動開発のはじめ方
 
ユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へユースケースからテスト駆動開発へ
ユースケースからテスト駆動開発へ
 
テスト駆動開発入門
テスト駆動開発入門テスト駆動開発入門
テスト駆動開発入門
 
テストコードのリファクタリング
テストコードのリファクタリングテストコードのリファクタリング
テストコードのリファクタリング
 
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ーテスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト駆動開発の導入ーペアプログラミングの学習効果ー
 
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテストJUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
 
アジャイルテスティング
アジャイルテスティングアジャイルテスティング
アジャイルテスティング
 

Pilika

Notes de l'éditeur