SlideShare ist ein Scribd-Unternehmen logo
1 von 60
Downloaden Sie, um offline zu lesen
テキスト型 DSL	
  開発フレームワーク
Xtext	
	
  

田中	
  
	
  
ビューファイブ	
  LLC	
  
Xtext	
  ユーザ会/Eclipse	
  Modeling	
  勉強会
自己紹介	
•  本日の話題と関係しそうなこと	
  
–  以前	
  OMG	
  のモデリング標準作成に参加していました	
  
•  UML	
  や	
  MDA	
  はある程度なじんでいます	
  
–  Eclipse	
  Conference	
  には	
  2	
  回参加したことがあります(モデリング系セ
ション主体)	
  
–  本年5月に Xtext	
  CON	
  がありそうなので、参加したいと思っています	
  
–  現在の対外的活動	
  
•  Xtext	
  ユーザ会	
  
•  Eclipse	
  Modeling	
  Project	
  勉強会	
  
•  Eclipse	
  Regional	
  Community/Japan	
  (名ばかり)
Message	
  from	
  Xtext	
  Project	
  Lead	
Good	
  evening	
  everybody!	
  
	
  
I	
  hope	
  you’ll	
  have	
  a	
  good	
  5me	
  hearing	
  about	
  Eclipse	
  Xtext.	
  	
  
I	
  am	
  very	
  pleased	
  to	
  hear	
  that	
  there	
  is	
  so	
  much	
  interest	
  in	
  this	
  topic	
  in	
  
Tokyo!	
  
	
  
You	
  are	
  all	
  very	
  welcome	
  to	
  try	
  this	
  framework	
  out	
  and	
  in	
  case	
  you	
  have	
  
any	
  ques5ons	
  feel	
  free	
  to	
  ask	
  them	
  in	
  the	
  ac5ve	
  online	
  forum	
  at	
  Eclipse.	
  	
  
	
  
Also	
  in	
  case	
  you	
  consider	
  basing	
  some	
  serious	
  business	
  on	
  it,	
  you	
  should	
  
know	
  that	
  my	
  company	
  itemis	
  offers	
  professional	
  services,	
  like	
  trainings	
  
and	
  onsite	
  consul5ng.	
  
	
  
Have	
  fun	
  and	
  keep	
  the	
  abstrac5ons	
  sound!	
  
	
  
Best	
  Regards,	
  
Sven	
  EKinge	
  (Xtext	
  project	
  lead)
アジェンダ	
•  Xtext	
  で出来ること 	
  これだけは見てから帰ってください	
  
•  Xtext	
  
–  概要 	
  
–  使い方 	
  

	
  出来るだけ短くします   	
  
	
  本日はこれを中心にお話します	
  

•  Sample	
  Projects	
  
–  例題	
  

•  時間に余裕があれば	
  
–  モデリングは	
  UML	
  だけじゃない・・・という話	
  
–  EMF/GMF	
  まわりの進化の話	
  
簡単にいうと	
•  Xtext	
  は	
  
–  Eclipse	
  環境で動作する	
  
–  テキスト型 External	
  DSL	
  開発フレームワーク	
  
•  DSL	
  エディタがほぼ自動的に作成できてしまう	
  
•  コード生成のための仕組みもある
Xtext	
  で出来ること	
•  デモ	
  
–  こんなことが出来ます(エディタ側だけ)
少しは気になりましたか?	
•  では、もう少しおつきあいください
Xtext	
  概要	
•  プロジェクト所在場所	
  
–  hIp://www.eclipse.org/Xtext/	
  
–  hIp://www.eclipse.org/xtend/	
  	
  
–  hIp://xtext.itemis.com/	
  

まずはここから	

•  国内活動	
  
–  日本Xtextユーザ会	
  
•  hIps://groups.google.com/forum/#!forum/xtext-­‐users-­‐japan	
  
•  hIps://sites.google.com/site/xtextusersjapan/	
  

–  Xtext入門e-­‐book	
  
•  hIp://www.beta-­‐publish.com/	
  
Eclipse	
  Modeling	
  Project	

hIp://www.eclipse.org/modeling/	
  
hIp://www.eclipse.org/Xtext/index.html	
  
準備作業	
  	
•  インストール	
  
–  updateより全体をダウンロードした方が確実	
  
–  Diagram	
  Editor	
  for	
  Ecore	
  を追加インストールしておくと作成した文法
の ecore	
  モデルをクラス図的に確認できる(確認不要の方はインス
トール不要)	
  

•  設定	
  
–  workspaceのencodingはUTF-­‐8に設定する	
  
–  Run	
  configuraUonを使う	
  
–  入力方法(”«»”)	
  

•  その他	
  
–  Net上に多くのXtext情報があるが、本体が進化し続けているため、最
新版では動作しない場合も往々にしてある	
  
–  YoutubeやVimeoにも動画あり	
  
–  ドキュメンテーションは、まず現住所のものを確認しよう	
  
–  疑問点はマニュアルの他に	
  forum	
  や stackoverflow	
  もチエックしよう	
  
インストール	

おすすめ	

hIp://www.eclipse.org/Xtext/download.html	
  
Diagram	
  Editor	
  for	
  Ecore	
  インストール	
Help	
  -­‐>	
  Install	
  New	
  So`ware	
  …	

これを選択
workspace
Run	
  ConfiguraUons	
これを使います
新規 Xtext	
  プロジェクト作成画面
こんな	
  .xtext	
  ファイルが生成されます	

新規 Xtext	
  プロジェクト作成画面の情報に基づき作成される	

我々が書き直す文法定義部分	

この文法はサンプル
Xtext	
  文法例	
言語名の宣言	
パッケージ名	

.xtextファイル名	

grammar	
  org.eclipse.xtext.example.domainmodel.Domainmodel	
  
with	
  org.eclipse.xtext.xbase.Xbase	
  
別言語とのmixin	
	
  
org.eclipse.xtext.common.Terminals	
	
  
	
  生成 Ecore	
  モデルの Epackage	
  名宣言	
generate	
  domainmodel	
  "hIp://www.xtext.org/example/
Domainmodel"	
  
nsURI
Xtext	
  文法例	
規則名	

?
*
+
	

	
  0または1(つまりオプション)	
	
  0以上	
	
  1以上	

Model:	
  
	
  (elements	
  +=	
  Element)*;	
  
	
規則の最後は“;”(セミコロン)で締めくくる	
	
  
	
= 	
  右側の規則が1回だけ呼び出される	
+= 	
  右側の規則が1回以上呼び出される(結果はリスト相当になります)	
?= 	
  右側の式が成立した場合、左側の式が真となる(ブーリアン)
Xtext	
  文法例	
いずれか	
Element:	
	
  Datatype	
  |	
  SimpleEnUty	
  ;	
  
	
  
Datatype:	
	
  'type'	
  name=ID	
  ;	
ID	
  は mixin	
  した別文法で下のように規定される	
	
  
terminal	
  ID	
  :	
  	
	
  	
  ('^')?('a'..'z'|'A'..'Z'|'_')	
  ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;	
  
サンプルプロジェクト紹介	
•  GreeUng	
  

–  デフォルトの文法	
  

•  Domainmodel	
  
–  簡単	
  EnUty	
  モデル	
  

•  Domainmodel2	
  

–  Package	
  と	
  Import	
  追加	
  

•  Domainmodel3	
  

–  Xtend	
  によるコード生成追加	
  

•  Domainmodel4	
  

–  JVM	
  言語化(Xbase他)	
  
デフォルトの文法	
  
	
  

DEMO	
  -­‐	
  GREETING
GreeUng
GreeUng	
•  デモで見て貰うポイント	
  
–  プロジェクト作成	
  
–  デフォルト文法定義	
  
–  ArUfacts	
  生成(Workflow	
  実行)	
  
–  エディタ起動(Run	
  ConfiguraUon)	
  
–  エディタ動作(コード補完)	
  
簡単	
  EnUty	
  モデル	
  
	
  

DEMO	
  DOMAINMODEL
Domainmodel
Domainmodel	
•  デモで見て貰うポイント	
  
–  EnUty	
  文法定義	
  
•  シンタクスグラフ	
  

–  エディタ動作(コード補完)	
  
–  Ecore	
  ファイル	
  
•  場所	
  
•  Sample	
  ReflecUve	
  Editor	
  
•  ダイアグラム表示	
  
Package	
  と	
  Import	
  追加	
  

	

DEMO	
  DOMAINMODEL2
Domainmodel2
Domainmodel2	
•  デモで見て貰うポイント	
  
–  文法定義:Package	
  と	
  Import	
  の導入	
  
–  エディタ動作(モデルの分割)	
  
Xtend	
  によるコード生成追加	
  

	

DEMO	
  DOMAINMODEL3
Domainmodel3
Domainmodel3	
•  デモで見て貰うポイント	
  
–  Xtend	
  によるコード生成	
  
–  言語の	
  Unit	
  Test	
  の書き方	
  
–  カスタムバリデーションの書き方	
  
–  MyDsl	
  にもコメントアウトのサンプルコード有	
  
JVM	
  言語化(Xbase他)	
  

	

DEMO	
  DOMAINMODEL4
Domainmodel4
Domainmodel4	
•  デモで見て貰うポイント	
  
–  Terminal	
  から Xbase	
  へ (Java言語へ)	
  
–  JvmModelInferer	
  	
  
–  Xtend	
  ライブラリ追加	
  
–  Java	
  コード生成	
  
ここまでの例題について	
•  Domainmodel	
  から	
  Domainmodel4	
  まで、すべ
て Xtext	
  DocumentaUon	
  の	
  Gevng	
  Started	
  セ
クションで解説されているものです	
  
–  実際に Xtext	
  をインストールし、これら例題をご自
分で動かしてみることをオススメします	
  
Example	
  Projects	
•  同梱されている	
  Example	
  Projects	
  
–  Domainmodel	
  
•  いろいろなコードが埋め込まれているので参考になり
ます	
  

–  FowlerDSL	
  (Statemachine)	
  
•  同上	
  

–  ArithmeUcs	
  (計算)	
  
–  Xbase	
  Tutorial	
  
–  Xtend	
  Tutorial	
  

Java	
  コード生成をやりたい方は
これらも試して下さい
私のチャレンジ	
•  Xtext	
  をより上位のモデリングに使えないか、
いろいろやってみた	
  
–  ビジネスプロセス記述	
  
–  サービス(SOA)記述	
  
–  エンタプライズアーキテクチャ記述
ビジネスプロセス記述例
モデリング言語は UML	
  だけじゃない	
•  OMG	
  のモデリング言語	
  
–  MOF	
  
–  UML	
  
–  Metamodels	
  
Layers	
  of	
  Models	
M3	
Meta-­‐meta	
  model	

MOF	
  (CMOF,	
  EMOF/ecore)	

conform	
  to	

Metamodel	

M2	
e.g.	
  UML,	
  SOA,	
  BPMN,	
  …	

conform	
  to	
Model	
Instance	
  of	
Instance	
  or	
  Object	
  Model	

M1	
e.g.	
  UML	
  models,	
  SOA	
  models,	
  
BPMN	
  models,	
  …	
M0
Eclipse	
  と Modeling	
•  EMF	
  関連プロジェクト(一部)	
EMF	
  
Text	

Xtext	

Ecore	
  
Tools	

…	

Xcore	

GMF	

GraphiU	

Spray	

EmfaUc	
EMF	

…	

+	
GEF	

Papyrus	
Time
DSLの定義	
•  Domain-­‐Specific	
  Languages	
  (DSLs)	
  の定義は
MarUn	
  Fowler	
  さんの本では次のようになって
います	
  
–  “a	
  computer	
  programming	
  language	
  of	
  limited	
  
expressiveness	
  focused	
  on	
  a	
  parUcular	
  domain”	
  
DSLの分類	
•  Internal	
  (or	
  embedded)	
  と External	
  
–  ホストとなるプログラミング言語を持つものが
Internal	
  (or	
  embedded)	
  DSLs	
  
–  ホストとなるプログラミング言語を持たないものが
External	
  DSLs	
  

•  Graphical	
  と Textual	
  
–  モデルを図式表現するのが Graphical	
  DSLs	
  
–  モデルをテキスト表現するのが Textual	
  DSLs
GMF	
•  ダッシュボード
GMF	
  で実現できるエディタ例
そのための Ecore	
  モデル
同じことを Xtext	
  で書くと
Xtext	
  のモデル記述
この段階では同じレベル
この段階でも同じレベル
違うのは	
•  グラフィカル要素有無	
  
•  Tooling	
  
–  GMF	
  

•  直観的で分かり易いグラフィカルエディタとなる	
  
•  ツール習得時間が長く、グラフィカルエディタ作成に必要な手数が多い	
  
•  コード生成は別途	
  

–  Xtext	
  
•  シンプルで一見テキストエディタ(コード補完など有)	
  
•  ツール習得時間が長い(?)	
  
•  コード生成にはXtend	
  

•  振る舞い記述	
  
–  プロセス記述的なものはグラフィカル記述が優位かも?	
  

•  Scale	
  

–  要素数が多くなったときに扱い易いのはどちら?(テキスト型?)
Tips	
•  メジャーリリース時に Xtext	
  の	
  DocumentaUon	
  
を印刷し手元に置いておくといろいろ便利(検
索には	
  HTML	
  が便利)	
  
•  Youtube	
  等の動画サイトに説明ビデオ有り	
  
•  Slideshare	
  等に説明スライド有り	
  
•  参考になる各種プロジェクト	
  
–  hIp://www.eclipse.org/Xtext/community.html
もっとサンプルが見たい	
という方のために・・・
hIp://www.eclipse.org/Xtext/community.html	
  	

……..
hIp://www.eclipse.org/Xtext/7languages.html	
  
hIp://www.eclipse.org/xtend/	
  
hIp://www.beta-­‐publish.com/	
  
最後に	
•  Xtext/Xtend	
  はかなり「使える」道具です	
  
•  皆さんの開発ツールの一つに加えて貰えれば幸
いです	
  
•  日本 Xtext	
  ユーザ会	
  
–  hIps://sites.google.com/site/xtextusersjapan/	
  	
  
–  hIps://groups.google.com/forum/#!forum/xtext-­‐users-­‐japan	
  	
  

•  Eclipse	
  Modeling	
  勉強会	
  
–  hIps://sites.google.com/site/eclipsemodelingsigjapan/	
  	
  
–  hIps://groups.google.com/forum/#!forum/eclipse-­‐modeling-­‐sig-­‐japan	
  	
  

Weitere ähnliche Inhalte

Was ist angesagt?

PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門泰 増田
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)NTT DATA Technology & Innovation
 
シェルスクリプトを極める
シェルスクリプトを極めるシェルスクリプトを極める
シェルスクリプトを極めるbsdhack
 
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったことドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと増田 亨
 
JIRA / Confluence の 必須プラグインはこれだ
JIRA / Confluence の必須プラグインはこれだJIRA / Confluence の必須プラグインはこれだ
JIRA / Confluence の 必須プラグインはこれだNarichika Kajihara
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪Takuto Wada
 
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」Ken'ichi Matsui
 
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】DeNA
 
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例Takashi Suzuki
 
SQLチューニング入門 入門編
SQLチューニング入門 入門編SQLチューニング入門 入門編
SQLチューニング入門 入門編Miki Shimogai
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)Yoshitaka Kawashima
 
DDDをScrumで廻す あるいは ScrumをDDDで廻す
DDDをScrumで廻す あるいは ScrumをDDDで廻す DDDをScrumで廻す あるいは ScrumをDDDで廻す
DDDをScrumで廻す あるいは ScrumをDDDで廻す Kiro Harada
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021Preferred Networks
 
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43Preferred Networks
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていることonozaty
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?Moriharu Ohzu
 
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...NTT DATA Technology & Innovation
 
MySQL負荷分散の方法
MySQL負荷分散の方法MySQL負荷分散の方法
MySQL負荷分散の方法佐久本正太
 
規模の見積もり WACATE 2016 winter
規模の見積もり WACATE 2016 winter 規模の見積もり WACATE 2016 winter
規模の見積もり WACATE 2016 winter Tomoaki Fukura
 

Was ist angesagt? (20)

PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門PlaySQLAlchemy: SQLAlchemy入門
PlaySQLAlchemy: SQLAlchemy入門
 
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
pg_bigmで全文検索するときに気を付けたい5つのポイント(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
シェルスクリプトを極める
シェルスクリプトを極めるシェルスクリプトを極める
シェルスクリプトを極める
 
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったことドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
 
JIRA / Confluence の 必須プラグインはこれだ
JIRA / Confluence の必須プラグインはこれだJIRA / Confluence の必須プラグインはこれだ
JIRA / Confluence の 必須プラグインはこれだ
 
例外設計における大罪
例外設計における大罪例外設計における大罪
例外設計における大罪
 
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
 
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
クラウド環境でのセキュリティ監査自動化【DeNA TechCon 2020 ライブ配信】
 
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例[Gree] グリーのソーシャルゲームにおける機械学習活用事例
[Gree] グリーのソーシャルゲームにおける機械学習活用事例
 
Azure Event Grid 事始め
Azure Event Grid 事始めAzure Event Grid 事始め
Azure Event Grid 事始め
 
SQLチューニング入門 入門編
SQLチューニング入門 入門編SQLチューニング入門 入門編
SQLチューニング入門 入門編
 
イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)イミュータブルデータモデル(入門編)
イミュータブルデータモデル(入門編)
 
DDDをScrumで廻す あるいは ScrumをDDDで廻す
DDDをScrumで廻す あるいは ScrumをDDDで廻す DDDをScrumで廻す あるいは ScrumをDDDで廻す
DDDをScrumで廻す あるいは ScrumをDDDで廻す
 
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
PFNのML/DL基盤を支えるKubernetesにおける自動化 / DevOpsDays Tokyo 2021
 
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
ゼロから作るKubernetesによるJupyter as a Service ー Kubernetes Meetup Tokyo #43
 
40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること40歳過ぎてもエンジニアでいるためにやっていること
40歳過ぎてもエンジニアでいるためにやっていること
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?
 
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
MLOps に基づく AI/ML 実運用最前線 ~画像、動画データにおける MLOps 事例のご紹介~(映像情報メディア学会2021年冬季大会企画セッショ...
 
MySQL負荷分散の方法
MySQL負荷分散の方法MySQL負荷分散の方法
MySQL負荷分散の方法
 
規模の見積もり WACATE 2016 winter
規模の見積もり WACATE 2016 winter 規模の見積もり WACATE 2016 winter
規模の見積もり WACATE 2016 winter
 

Ähnlich wie Eclipse xtext 紹介

EclipseCon NA 2015 report
EclipseCon NA 2015 reportEclipseCon NA 2015 report
EclipseCon NA 2015 reportAkira Tanaka
 
Visual Studioで始めるTypeScript開発入門
Visual Studioで始めるTypeScript開発入門Visual Studioで始めるTypeScript開発入門
Visual Studioで始めるTypeScript開発入門Narami Kiyokura
 
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶjQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶShumpei Shiraishi
 
Eclipse modeling 勉強会 dslについて
Eclipse modeling 勉強会 dslについてEclipse modeling 勉強会 dslについて
Eclipse modeling 勉強会 dslについてAkira Tanaka
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshopDaisuke Sugai
 
Xtext And Grails20091218
Xtext And Grails20091218Xtext And Grails20091218
Xtext And Grails20091218Akira Tanaka
 
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」ericsagnes
 
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介Shintaro Hosoai
 
EclipseCon Europe 2019 modeling report
EclipseCon Europe 2019 modeling reportEclipseCon Europe 2019 modeling report
EclipseCon Europe 2019 modeling reportAkira Tanaka
 
Xcore introduction
Xcore introductionXcore introduction
Xcore introductionAkira Tanaka
 
はじめてのASP.NET MVC5
はじめてのASP.NET MVC5はじめてのASP.NET MVC5
はじめてのASP.NET MVC5Tomo Mizoe
 
動的なILの生成と編集
動的なILの生成と編集動的なILの生成と編集
動的なILの生成と編集terurou
 
【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計
【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計
【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計アシアル株式会社
 
eZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティス
eZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティスeZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティス
eZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティスericsagnes
 
Eclipse modeling 勉強会 はじめに
Eclipse modeling 勉強会 はじめにEclipse modeling 勉強会 はじめに
Eclipse modeling 勉強会 はじめにAkira Tanaka
 
オープンソースを利用したモデル駆動トライアル
オープンソースを利用したモデル駆動トライアルオープンソースを利用したモデル駆動トライアル
オープンソースを利用したモデル駆動トライアルAkira Tanaka
 
大規模なJavaScript開発の話
大規模なJavaScript開発の話大規模なJavaScript開発の話
大規模なJavaScript開発の話terurou
 
XPagesジャンプスタート
XPagesジャンプスタートXPagesジャンプスタート
XPagesジャンプスタートMitsuru Katoh
 
Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦urasandesu
 

Ähnlich wie Eclipse xtext 紹介 (20)

EclipseCon NA 2015 report
EclipseCon NA 2015 reportEclipseCon NA 2015 report
EclipseCon NA 2015 report
 
Visual Studioで始めるTypeScript開発入門
Visual Studioで始めるTypeScript開発入門Visual Studioで始めるTypeScript開発入門
Visual Studioで始めるTypeScript開発入門
 
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶjQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
jQueryの先に行こう!最先端のWeb開発トレンドを学ぶ
 
Eclipse modeling 勉強会 dslについて
Eclipse modeling 勉強会 dslについてEclipse modeling 勉強会 dslについて
Eclipse modeling 勉強会 dslについて
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
 
Xtext And Grails20091218
Xtext And Grails20091218Xtext And Grails20091218
Xtext And Grails20091218
 
Kaleidox
KaleidoxKaleidox
Kaleidox
 
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
eZ Publish勉強会2013年3月「eZ Publishの構築を簡単に!」
 
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
テキスト型Domain Specific Language (DSL) 開発フレームワークXtext の紹介
 
EclipseCon Europe 2019 modeling report
EclipseCon Europe 2019 modeling reportEclipseCon Europe 2019 modeling report
EclipseCon Europe 2019 modeling report
 
Xcore introduction
Xcore introductionXcore introduction
Xcore introduction
 
はじめてのASP.NET MVC5
はじめてのASP.NET MVC5はじめてのASP.NET MVC5
はじめてのASP.NET MVC5
 
動的なILの生成と編集
動的なILの生成と編集動的なILの生成と編集
動的なILの生成と編集
 
【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計
【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計
【アシアル塾】PHPオブジェクト指向再入門・第四回デザインパターンに学ぶクラス設計
 
eZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティス
eZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティスeZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティス
eZ Publish 2012年4月勉強会 - eZ Publish設計ベストプラクティス
 
Eclipse modeling 勉強会 はじめに
Eclipse modeling 勉強会 はじめにEclipse modeling 勉強会 はじめに
Eclipse modeling 勉強会 はじめに
 
オープンソースを利用したモデル駆動トライアル
オープンソースを利用したモデル駆動トライアルオープンソースを利用したモデル駆動トライアル
オープンソースを利用したモデル駆動トライアル
 
大規模なJavaScript開発の話
大規模なJavaScript開発の話大規模なJavaScript開発の話
大規模なJavaScript開発の話
 
XPagesジャンプスタート
XPagesジャンプスタートXPagesジャンプスタート
XPagesジャンプスタート
 
Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦Eclipse を使った java 開発 111126 杉浦
Eclipse を使った java 開発 111126 杉浦
 

Mehr von Akira Tanaka

Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusAkira Tanaka
 
Eclipse Sirius Applied to a RAD Tool in Japan
Eclipse Sirius Applied to a RAD Tool in JapanEclipse Sirius Applied to a RAD Tool in Japan
Eclipse Sirius Applied to a RAD Tool in JapanAkira Tanaka
 
EclipseCon France 2018 report
EclipseCon France 2018 reportEclipseCon France 2018 report
EclipseCon France 2018 reportAkira Tanaka
 
Eclipse Modeling Environment 概要
Eclipse Modeling Environment 概要Eclipse Modeling Environment 概要
Eclipse Modeling Environment 概要Akira Tanaka
 
Eclipse con2017参加報告公開版
Eclipse con2017参加報告公開版Eclipse con2017参加報告公開版
Eclipse con2017参加報告公開版Akira Tanaka
 
Simple Line-Tracer statechart simulation with Yakindu
Simple Line-Tracer statechart simulation with YakinduSimple Line-Tracer statechart simulation with Yakindu
Simple Line-Tracer statechart simulation with YakinduAkira Tanaka
 
EclipseCon NA2016 report
EclipseCon NA2016 reportEclipseCon NA2016 report
EclipseCon NA2016 reportAkira Tanaka
 
Sirius を試してみて
Sirius を試してみてSirius を試してみて
Sirius を試してみてAkira Tanaka
 
MBSD ツールチェーンと今後の活動
MBSD ツールチェーンと今後の活動MBSD ツールチェーンと今後の活動
MBSD ツールチェーンと今後の活動Akira Tanaka
 
EMF Forms Introduction
EMF Forms IntroductionEMF Forms Introduction
EMF Forms IntroductionAkira Tanaka
 
モデルベースソフトウェア開発
モデルベースソフトウェア開発モデルベースソフトウェア開発
モデルベースソフトウェア開発Akira Tanaka
 
OCL in Papyrus Introduction
OCL in Papyrus IntroductionOCL in Papyrus Introduction
OCL in Papyrus IntroductionAkira Tanaka
 
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...Akira Tanaka
 
Eclipse Modeling QVT
Eclipse Modeling QVTEclipse Modeling QVT
Eclipse Modeling QVTAkira Tanaka
 

Mehr von Akira Tanaka (20)

Developing Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse SiriusDeveloping Modeling Tool for RM-ODP with Eclipse Sirius
Developing Modeling Tool for RM-ODP with Eclipse Sirius
 
DSL4ODP Diagrams
DSL4ODP DiagramsDSL4ODP Diagrams
DSL4ODP Diagrams
 
Dsl4 odp diagrams
Dsl4 odp diagramsDsl4 odp diagrams
Dsl4 odp diagrams
 
Sirius in 30 min.
Sirius in 30 min.Sirius in 30 min.
Sirius in 30 min.
 
Eclipse Sirius Applied to a RAD Tool in Japan
Eclipse Sirius Applied to a RAD Tool in JapanEclipse Sirius Applied to a RAD Tool in Japan
Eclipse Sirius Applied to a RAD Tool in Japan
 
EclipseCon France 2018 report
EclipseCon France 2018 reportEclipseCon France 2018 report
EclipseCon France 2018 report
 
Eclipse Modeling Environment 概要
Eclipse Modeling Environment 概要Eclipse Modeling Environment 概要
Eclipse Modeling Environment 概要
 
Eclipse con2017参加報告公開版
Eclipse con2017参加報告公開版Eclipse con2017参加報告公開版
Eclipse con2017参加報告公開版
 
Simple Line-Tracer statechart simulation with Yakindu
Simple Line-Tracer statechart simulation with YakinduSimple Line-Tracer statechart simulation with Yakindu
Simple Line-Tracer statechart simulation with Yakindu
 
EclipseCon NA2016 report
EclipseCon NA2016 reportEclipseCon NA2016 report
EclipseCon NA2016 report
 
Sirius を試してみて
Sirius を試してみてSirius を試してみて
Sirius を試してみて
 
Xtext 紹介
Xtext 紹介Xtext 紹介
Xtext 紹介
 
MBSD ツールチェーンと今後の活動
MBSD ツールチェーンと今後の活動MBSD ツールチェーンと今後の活動
MBSD ツールチェーンと今後の活動
 
EMF Forms Introduction
EMF Forms IntroductionEMF Forms Introduction
EMF Forms Introduction
 
モデルベースソフトウェア開発
モデルベースソフトウェア開発モデルベースソフトウェア開発
モデルベースソフトウェア開発
 
OCL in Papyrus Introduction
OCL in Papyrus IntroductionOCL in Papyrus Introduction
OCL in Papyrus Introduction
 
RM-ODP 概要
RM-ODP 概要RM-ODP 概要
RM-ODP 概要
 
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
Extension Mechanism for Integrating New Technology Elements into Viewpoint ba...
 
Xtext 紹介
Xtext 紹介Xtext 紹介
Xtext 紹介
 
Eclipse Modeling QVT
Eclipse Modeling QVTEclipse Modeling QVT
Eclipse Modeling QVT
 

Kürzlich hochgeladen

新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 

Kürzlich hochgeladen (7)

新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

Eclipse xtext 紹介