SlideShare uma empresa Scribd logo
1 de 60
Baixar para ler offline
テキスト型 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	
  	
  

Mais conteúdo relacionado

Mais procurados

マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ増田 亨
 
グラフデータベース入門
グラフデータベース入門グラフデータベース入門
グラフデータベース入門Masaya Dake
 
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景にマイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景にYusuke Suzuki
 
今からでも大丈夫!Firebase入門
今からでも大丈夫!Firebase入門今からでも大丈夫!Firebase入門
今からでも大丈夫!Firebase入門Tomoki Koga
 
5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページCLARA ONLINE, Inc.
 
UTアンチパターン
UTアンチパターンUTアンチパターン
UTアンチパターンryoheiseki1
 
社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウShinsuke Sugaya
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチYoshiki Hayama
 
Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –
Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –
Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –虎の穴 開発室
 
ベアメタルで実現するSpark&Trino on K8sなデータ基盤
ベアメタルで実現するSpark&Trino on K8sなデータ基盤ベアメタルで実現するSpark&Trino on K8sなデータ基盤
ベアメタルで実現するSpark&Trino on K8sなデータ基盤MicroAd, Inc.(Engineer)
 
人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説Livesense Inc.
 
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術Drecom Co., Ltd.
 
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめPostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめOhyama Masanori
 
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化gree_tech
 

Mais procurados (20)

GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出GitLab から GitLab に移行したときの思い出
GitLab から GitLab に移行したときの思い出
 
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチマイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
 
全自動Zabbix
全自動Zabbix全自動Zabbix
全自動Zabbix
 
グラフデータベース入門
グラフデータベース入門グラフデータベース入門
グラフデータベース入門
 
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景にマイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
マイクロサービスアーキテクチャ - アーキテクチャ設計の歴史を背景に
 
今からでも大丈夫!Firebase入門
今からでも大丈夫!Firebase入門今からでも大丈夫!Firebase入門
今からでも大丈夫!Firebase入門
 
5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ5分で出来る!イケてるconfluenceページ
5分で出来る!イケてるconfluenceページ
 
UTアンチパターン
UTアンチパターンUTアンチパターン
UTアンチパターン
 
社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ社内ドキュメント検索システム構築のノウハウ
社内ドキュメント検索システム構築のノウハウ
 
nginx入門
nginx入門nginx入門
nginx入門
 
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
 
Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –
Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –
Supabase Edge Functions と Netlify Edge Functions を使ってみる – 機能とその比較 –
 
ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介ヤフー発のメッセージキュー「Pulsar」のご紹介
ヤフー発のメッセージキュー「Pulsar」のご紹介
 
ベアメタルで実現するSpark&Trino on K8sなデータ基盤
ベアメタルで実現するSpark&Trino on K8sなデータ基盤ベアメタルで実現するSpark&Trino on K8sなデータ基盤
ベアメタルで実現するSpark&Trino on K8sなデータ基盤
 
人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説人は一ヶ月でエンジニアになれるのか - 詳細解説
人は一ヶ月でエンジニアになれるのか - 詳細解説
 
ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術ログ解析を支えるNoSQLの技術
ログ解析を支えるNoSQLの技術
 
KafkaとPulsar
KafkaとPulsarKafkaとPulsar
KafkaとPulsar
 
PostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめPostgreSQLによるデータ分析ことはじめ
PostgreSQLによるデータ分析ことはじめ
 
Docker超入門
Docker超入門Docker超入門
Docker超入門
 
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化
グラフデータベースNeo4Jでアセットダウンロードの構成管理と最適化
 

Semelhante a 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
 

Semelhante a 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 杉浦
 

Mais de 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
 

Mais de 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
 

Último

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 

Último (9)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 

Eclipse xtext 紹介