SlideShare a Scribd company logo
1 of 59
Download to read offline
Grails 第3章
進化したSpring-bootベースフレームワーク
@tyama
About Me
山本です。岐阜県からきました。
デザイナーです。ウソです
twitter: @tyama
はてな id:mottsnite
活動
• 今週のGrails 意訳版
• grails.jp/news
• Grailsリリース情報を

ほぼリアルタイム配信。

9年目に突入!
• はてな id: mottsnite
本日のお話
• Grails ?
• Road to 3.0
• Grails 2.4.x ∼ Grails 2.5
• Grails 3 の話
• 新機能情報など
• Grails2との違い。
• Grails 3 とSpring Boot。
祝!New GRAILS_HOME!(4.9)
↓
Object Computing, Inc.
昔からGroovyに関心を持っている会社です。
Jeff氏が昔いた会社
Grails て何? (知らない人へ)
• Springフレームワークをベースに

ドメインドリブンでサクッと開発する

フルスタックフレームワーク。
• RoRにインスパイアされてJava/Groovyで開発。
• RoR系なので、CoCです。
• 開発には、

ディレクトリベースの規約とGroovy DSLを活用。
Road to 3.0
Grails 3.0への道
図解説明
Road to 3.0
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Spring 4.1.x
Groovy 2.4.x
Grails 2.4.x
Grails 2.5
Grails 3.0.x
今までと同じアーキテクチャ
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset Pipeline
Gradle Asset Pipeline Plugin
Grails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Spring Boot 1.2.x
Spring 4.1.x
Groovy 2.4.x
そぎゃんこと言うても、変わっ
とだけんしょんなかたい!
アーキテクチャが変わった!?
アップデート大変!?
Spring 4.1なので依存するプラグイン
は注意してね。
図解説明
Road to 3.0
Grails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Road to 3.0
• Road to 3.0 構想
• 3.0リリースというゴールに向けて

2.4.xから、リファクタリングを開始。

一部の実装は2.4でも含む。
• Spring Bootをベースにするために。
• コアコードを集中的にリファクタリング
• 主要機能は、生Spring BootなどGrails外でも使用できるように
再構築。

(以前できてた?できかけてた物も再度見直し)
• ただゴールのGrails3では一部仕様変わるかもよっ!
• なんなら、実際に更新大変かもよっ!
• それでもモダンなアーキテクチャにするのだよ!
Grails 2.4.x リリース
• Spring 4.0
• Java 8 対応
• Groovy 2.3 に更新
• @CompileStatic 対応
• アセットパイプライン
• コードベースのモジュラー化
• Hibernate 4 対応
• 単独利用できる GORMとGSP
図解説明
Road to 3.0
Grails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Grails 2.4.x
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset Pipeline
Spring 4.0?
今はSpring 4.1だろっ!
Spring 4.1は Grails 3で対応する(キリッ
あとで話あると思うけど、、
更新するの大変なんだろっ?
わかっちまえば、そうでもないのだが。。
んじゃ、だすよ。これも。
Grails 2.5
• Grails 2.4 系と同じアーキテクチャ。
• 違い
• Groovy 2.4 対応
• Spring 4.1 対応
• いきなり Grails3 だと アレ な人向けに、

ベースとなるライブラリを

更新して対応させたバージョン。

       ただし、Spring 4.1の互換に悩む事も。
図解説明
Road to 3.0
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Grails 2.4.x
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset PipelineGrails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Spring 4.1.x
Groovy 2.4.x
Grails 2.5
今までと同じアーキテクチャ
Spring 4.1なので依存するプラグイン
は注意してね。
図解説明
Road to 3.0
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Grails 2.4.x
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset PipelineGrails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Spring 4.1.x
Groovy 2.4.x
Grails 2.5
今までと同じアーキテクチャ
Spring 4.1なので依存するプラグイン
は注意してね。
図解説明
Road to 3.0
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Grails 2.4.x
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset PipelineGrails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレだね。
今後はどうすると?
Spring 4.1.x
Groovy 2.4.x
Grails 2.5
今までと同じアーキテクチャ
Spring 4.1なので依存するプラグイン
は注意してね。
Grails 3 の話を始める前に
おさえて起きたい内容。
★ Asset Pipeline
★ スタンドアロンGORM, GSP
Asset Pipeline
• Web用リソースアセット(CSS,JS,画像)をアレするアレ。
Railsの人にはお馴染みかな。
• Resourcesプラグインに変わりコチラが公式となった。
assetタグ
<asset:javascript src="application.js"/>
<asset:stylesheet href="application.css"/>
<asset:image src="grails_logo.png" height="60" />
application.js
//= require jquery
//= require_self
//= require file_a
//= require_tree .
console.log('some javascript');
Standalone GORM
• GORM - Grails O/R マッピング

Grails3へ向けて外部利用もできるようになった。
• https://github.com/tyama/standalone-gorm-examples

↑以下のサンプル詰め合わせ
• Groovyスクリプト
• GORM MongoDB
• GORM Hibernate 4
• Spring Boot
• GORM MongoDB
• GORM Hibernate 4
デモ
Standalone GSP & Spring Boot
• Grailsでお馴染みのView層 GSP
• https://github.com/grails/grails-boot
Road to Grails 3.0
ここで、Grails 2.4.x , 2.5 の話は終了。
図解説明
Road to 3.0
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Grails 2.4.x
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset PipelineGrails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Spring 4.1.x
Groovy 2.4.x
Grails 2.5
今までと同じアーキテクチャ
Spring 4.1なので依存するプラグイン
は注意してね。
Grails 3.0.x
Grails 3
Spring Boot
Gradle
Grails 3
• 何かに られる形で3/31に3.0.0リリース。
• そしてすぐに3.0.1リリース。
• プロジェクトリーダーは、その後、長期休暇へ。戻ってくるのか!?
• 前バージョンから更新はファイル複製!
• Spring Bootをベースに構築。
• CoCとCoCのぶつかり合い。良い意味でも悪い意味でも。。
• ビルドシステムをGradleに。
• ビルドを柔軟に。
図解説明
Road to 3.0
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Spring 4.1.x
Groovy 2.4.x
Grails 2.4.x
Grails 2.5
Grails 3.0.x
今までと同じアーキテクチャ
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset Pipeline
Gradle Asset Pipeline Plugin
Grails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Spring Boot 1.2.x
Spring 4.1.x
Groovy 2.4.x
アーキテクチャが変わった!?
Spring 4.1なので依存するプラグイン
は注意してね。
Grails3 What s new!
ザックリ、解説
Grails3 What s new! - コアフィーチャ
• Groovy 2.4
• AST, Trait, StaticCompile
• Spring 4.1
• JMSアノテーション, JCache, WebSocket, 

Groovyマークアップテンプレート
• Spring Boot 1.2
• SpringのSpringによるCoC
• Tomcat,Jetty,Undertowコンテナ組込の起動可能Jar
• Gradle ビルドシステム
• 今までのGantからGradleへ移行!
細かいことは

Spring詳しい人に聞いて
細かいことは

Groovy詳しい人に聞いて
とりあえず、

Boot本読んでね。
Gradle本
持ってないの?
Grails3 - 何故 Spring Boot?
• マイクロサービス
マイクロサービス
マイクロサービス
モノリス vs マイクロサービス
Alvaro Sanchez-Mariscal氏のスライドより。
Grails3 - 何故 Spring Boot?
• マイクロサービス
• ファットJARと組込コンテナ。様々なランタイムに対応。
• Tomcat, Jetty, Undertow

• モニタリングとヘルスチェックの仕組み
• spring-boot-starter-actuator

• Bootのオートコンフィグレーションの活用。
• 常識的なデフォルト設定
• spring-boot-autoconfigure

• Springの柔軟性を活用 (今までもこれからも)

Grailsでマイクロサービス?
なにそれうまいの?
Grails マイクロサービス
• 作成
• grails create-app demo --profile=web-micro
• 実行
• grails run-app / インタラクティブモードでもOK
• パッケージ
• grails package
• java -jar build/demo-0.1.jar
• 注意点: 現状の問題点
• テストコードがあると動かない
• パッケージしたときにgroovy-antがなくて起動しない..
• @Grab('org.codehaus.groovy:groovy-ant:2.4.3')
• 物によっては動きが?まあマイクロサービスですから。
Grails3 What s new! - コアフィーチャ
• アプリケーションプロファイル
Keynote: Grails 3.0 Preview
Grails3 - プロファイル
•アプリケーションのプロファイルを指定することで

さまざまなタイプのアプリケーション生成に対応。
•プロファイルはgithubリポジトリで管理されている。
•そこに使用可能なプロファイルが提供されている。
スライド流用
Keynote: Grails 3.0 Preview
Grails3 - プロファイル
•リポジトリのprofile階層に使用可能なプロファイルが管理されて
いる。
•そこに今後。 ratpackとか他のプロファイルも入る。
•プロファイルでは以下が定義されている。
•プロジェクトスケルトン
•テンプレート
•コマンド
スライド流用
Keynote: Grails 3.0 Preview
Grails3 - プロファイル - コマンド
•yamlでタスクステップを定義。
•groovyでスクリプトを提供も可能。
•GroovyScriptCommandクラスとして実行される。
•コマンド補完などの内容も定義
•コマンド作成用に新たなAPIなども用意されている。
•コード生成用のrender, modelなど。
スライド流用
Keynote: Grails 3.0 Preview
Grails3 - プロファイル - 継承
•プロファイルは継承できます。
•プロファイルを実装するときは

近いプロファイルを継承して作成できる。多重継承も可能。
•継承するので、必要追加分のみを定義すればよい。
•不要なスケルトン・コマンドは除外も可能。
•でも、まだ自由にリポジトリを切替はできないのでアレです。
スライド流用
Grails3 What s new! - コアフィーチャ
• Traitをベースに再デザインされたAPI
• Groovy 2.4.x の恩恵!
• traitがASTされます!
Grails3 What s new! - コアフィーチャ
• 内部フローの変更
Grails3 What s new! - Webフィーチャ
• コントローラアクション用フィルターの廃止。
• Interceptor API に変更。
class MyInterceptor {
boolean before() { true }
boolean after() { true }
void afterView() {
// no-op
}
}
Grails3 What s new! - 開発環境フィーチャ
• 新たなシェルとコード生成API
• 強化されたIDE統合
• Intellij IDEA にgradleプロジェクトとして取込
• アプリケーションメインクラス
• static void main をもつ Applicationクラスを実行
• IDEで実行・デバッグも起動できる
Grails3 What s new! - テストフィーチャ
• インテグレーション
• Spring Bootをベースとしたテスト実行の仕組みを使用

• Gebファンクショナルテスト
• create-functional-test で

Spock/Gebファンクショナルテストを生成

• Gradleテスト実行
• 並列実行でのテスト実行定義など。
What s New だけだとわからんね。
とりまコード動かしてみましょう!
デモ
• マイクロサービス - コードみましょ。
• 通常App - コードみましょ。
• Grails3 + Spring Boot
Grails3 のコードいろいろ
• メインファイル grails-app/init/パッケージパス/Application.groovy
• Spring Bootと同じ感じだよ。
• 階層がかわった。
• http://grails.github.io/grails-doc/3.0.1/guide/upgrading.html
• 定義設定が変わった。Config.groovy DataSource.groovy 廃止
• 今後のメインは application.yml
• 今までのGroovyな設定ファイルは application.groovyを作成して書けば良いよ。
• 読込順: yml → groovy → 起動ルートyml → 環境変数
• ログの形式が変わったよ。 logback.groovy
• http://logback.qos.ch/manual/groovy.html
• Gradleになったから、BuildConfigは無しで、 build.gradle を使うよ!
• Grails用のGradleプラグイン
Grails3 のいろいろ
• Grails2からの移行は結構大変。
• http://grails.github.io/grails-doc/3.0.1/guide/upgrading.html
• Grails2で出来たことが実装変わってアレっとなる。 → 慣れろ!
• 同時にSpring Bootのマニュアルを読むようになる。
• http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/html/
• Spring 4.1で提供されている便利な物は使え。
• http://docs.spring.io/spring/docs/4.1.x/spring-framework-reference/html/
• いろいろ解明するまで悩みまくる → まだ情報すくない。
• ドキュメントが嘘つきの時がある。(書いてある事がGrails2の情報だったり)
• -noverify
Grails3 でのプラグイン
• プラグインまだ少ないね!? 現状: 17個
• 今後はbintrayで管理される: https://bintray.com/grails/plugins
• Grails 2.4 系でのプラグイン数: 1200個
• Grails3では使えません。どうすんの? 以下でだいたいクリア。
• リソース系: webjarsを活用
• Spring系: オートコンフィグとかでどうにかなるでしょ?
• ファンクショナル系: 自分で移行
• ライブラリ系: 依存追加すれば?
• テクニカルな: 作者が対応するの待つ or 頑張って自分で実装!
• ゴミ系: どうでもいい物もたくさんある。そいつらは気にしない。
図解説明
Road to 3.0
Spring 4.0.x
Groovy 2.3.x
コードベースのモジュラー化
Spring 4.1.x
Groovy 2.4.x
Grails 2.4.x
Grails 2.5
Grails 3.0.x
今までと同じアーキテクチャ
Grails以外で
使用可能
Standalone GORM
Standalone GSP
Asset Pipeline
Gradle Asset Pipeline Plugin
Grails 1.3.x
Grails 1.2.x
Grails 1.0.x
古代
Grails 2.3.x
Grails 2.2.x
Grails 2.1.x
近代
時代に合わせると
いろいろアレね。
今後はどうすると?
Spring Boot 1.2.x
Spring 4.1.x
Groovy 2.4.x
そぎゃんこと言うても、変わっ
とだけんしょんなかたい!
アーキテクチャが変わった!?
アップデート大変!?
Spring 4.1なので依存するプラグイン
は注意してね。
Grails3 まとめ
• Spring Bootの勉強が必要
• 必須ではないが知っておくと吉。
• むしろ必要でしょ。
• Spring Boot の開発をさらに迅速に!
• アノテーション不要開発。
• コード配置場所を定めるCoCでメンテナンスしやすい。
• 小さな物はもちろん、大中規模のアプリやプラグインを活用したモジュラ開発が可能
• キレイに開発すれば、後からSpring Boot化も可能。
• まだバグが多い?
• そこまで酷くはない。簡単な回避方法もある……と思う。
• 今までも初物はアレでした。
• Grails2との関係
• 違いが多いので。。。
JGGUGに集まれ!
• G*ワークショップ
• 来週あります!来週金曜日!
• Web API祭り!
• もっとGrails3の事を知ることができます!
• https://jggug.doorkeeper.jp/events/22473
Q&A
• 簡単な内容でお願いします。
• Javaはクソではありません。
Thank you.
日本Grails/Groovyユーザーグループ
www.jggug.org 59

More Related Content

What's hot

Gws 20141024 gradle_intro
Gws 20141024 gradle_introGws 20141024 gradle_intro
Gws 20141024 gradle_introNobuhiro Sue
 
Jjug 20140430 gradle_advanced
Jjug 20140430 gradle_advancedJjug 20140430 gradle_advanced
Jjug 20140430 gradle_advancedMasatoshi Hayashi
 
Jjug 20140430 gradle_basic
Jjug 20140430 gradle_basicJjug 20140430 gradle_basic
Jjug 20140430 gradle_basicTakuma Watabiki
 
Gradleどうでしょう
GradleどうでしょうGradleどうでしょう
GradleどうでしょうTakuma Watabiki
 
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウ
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウCircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウ
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウTakeshi Mikami
 
パフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したいパフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したいzaru sakuraba
 
VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発Yuta Matsumura
 
Pylons ユーザのための Pyramid 移行ガイド
Pylons ユーザのための Pyramid 移行ガイドPylons ユーザのための Pyramid 移行ガイド
Pylons ユーザのための Pyramid 移行ガイドNozomu Kaneko
 
OSS Product feat. Gradle
OSS Product feat. GradleOSS Product feat. Gradle
OSS Product feat. GradleYasuharu Nakano
 
スッとGoを取り入れる
スッとGoを取り入れるスッとGoを取り入れる
スッとGoを取り入れるYusuke Wada
 
SwaggerとAPIのデザイン
SwaggerとAPIのデザインSwaggerとAPIのデザイン
SwaggerとAPIのデザインKazuhiro Hara
 
Gradle入門
Gradle入門Gradle入門
Gradle入門orekyuu
 
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境についてKazuhiro Hara
 
Clojureでガラケーサイトを作る際の細かい話
Clojureでガラケーサイトを作る際の細かい話Clojureでガラケーサイトを作る際の細かい話
Clojureでガラケーサイトを作る際の細かい話Ikuru Kanuma
 
モバイル制作におけるパフォーマンス最適化について
モバイル制作におけるパフォーマンス最適化についてモバイル制作におけるパフォーマンス最適化について
モバイル制作におけるパフォーマンス最適化についてKoji Ishimoto
 
Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回kinme modoki
 
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!Yohei Fushii
 
インフラ部門で働くCプログラマの話
インフラ部門で働くCプログラマの話インフラ部門で働くCプログラマの話
インフラ部門で働くCプログラマの話雅也 山本
 
ClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうKazuhiro Hara
 

What's hot (20)

Gws 20141024 gradle_intro
Gws 20141024 gradle_introGws 20141024 gradle_intro
Gws 20141024 gradle_intro
 
Rails Tokyo 035 Cucumber
Rails Tokyo 035 CucumberRails Tokyo 035 Cucumber
Rails Tokyo 035 Cucumber
 
Jjug 20140430 gradle_advanced
Jjug 20140430 gradle_advancedJjug 20140430 gradle_advanced
Jjug 20140430 gradle_advanced
 
Jjug 20140430 gradle_basic
Jjug 20140430 gradle_basicJjug 20140430 gradle_basic
Jjug 20140430 gradle_basic
 
Gradleどうでしょう
GradleどうでしょうGradleどうでしょう
Gradleどうでしょう
 
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウ
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウCircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウ
CircleCIを使ったSpringBoot/GAEアプリ開発の効率化ノウハウ
 
パフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したいパフォーマンス計測Ciサービスを作って得た知見を共有したい
パフォーマンス計測Ciサービスを作って得た知見を共有したい
 
VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発VSCodeで始めるAzure Static Web Apps開発
VSCodeで始めるAzure Static Web Apps開発
 
Pylons ユーザのための Pyramid 移行ガイド
Pylons ユーザのための Pyramid 移行ガイドPylons ユーザのための Pyramid 移行ガイド
Pylons ユーザのための Pyramid 移行ガイド
 
OSS Product feat. Gradle
OSS Product feat. GradleOSS Product feat. Gradle
OSS Product feat. Gradle
 
スッとGoを取り入れる
スッとGoを取り入れるスッとGoを取り入れる
スッとGoを取り入れる
 
SwaggerとAPIのデザイン
SwaggerとAPIのデザインSwaggerとAPIのデザイン
SwaggerとAPIのデザイン
 
Gradle入門
Gradle入門Gradle入門
Gradle入門
 
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について
 
Clojureでガラケーサイトを作る際の細かい話
Clojureでガラケーサイトを作る際の細かい話Clojureでガラケーサイトを作る際の細かい話
Clojureでガラケーサイトを作る際の細かい話
 
モバイル制作におけるパフォーマンス最適化について
モバイル制作におけるパフォーマンス最適化についてモバイル制作におけるパフォーマンス最適化について
モバイル制作におけるパフォーマンス最適化について
 
Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回Git勉強会 2016 Gitで卒論を管理しよう回
Git勉強会 2016 Gitで卒論を管理しよう回
 
ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!ホームディレクトリに埋もれた便利なコードをさがせ!
ホームディレクトリに埋もれた便利なコードをさがせ!
 
インフラ部門で働くCプログラマの話
インフラ部門で働くCプログラマの話インフラ部門で働くCプログラマの話
インフラ部門で働くCプログラマの話
 
ClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろうClojureでElectronアプリを作ろう
ClojureでElectronアプリを作ろう
 

Viewers also liked

あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情についてあなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情についてShinichi Kozake
 
Java 20年史 (JJUG CCC 2015 春 基調講演)
Java 20年史 (JJUG CCC 2015 春 基調講演)Java 20年史 (JJUG CCC 2015 春 基調講演)
Java 20年史 (JJUG CCC 2015 春 基調講演)Kazuyuki Kawamura
 
はまる!JPA(初学者向けライト版)
はまる!JPA(初学者向けライト版)はまる!JPA(初学者向けライト版)
はまる!JPA(初学者向けライト版)Masatoshi Tada
 
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)Tsuyoshi Miyake
 
金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency API金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency APITaku Miyakawa
 
プログラミング言語Clojureのニャンパスでの活用事例
プログラミング言語Clojureのニャンパスでの活用事例プログラミング言語Clojureのニャンパスでの活用事例
プログラミング言語Clojureのニャンパスでの活用事例sohta
 
Java開発の強力な相棒として今すぐ使えるGroovy
Java開発の強力な相棒として今すぐ使えるGroovyJava開発の強力な相棒として今すぐ使えるGroovy
Java開発の強力な相棒として今すぐ使えるGroovyYasuharu Nakano
 
JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライド
JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライドJJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライド
JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライドToshiakiArai
 
GrailsでSpringをGroovyにしよう!
GrailsでSpringをGroovyにしよう!GrailsでSpringをGroovyにしよう!
GrailsでSpringをGroovyにしよう!Tsuyoshi Yamamoto
 
わたしのRubyの楽しみかた
わたしのRubyの楽しみかたわたしのRubyの楽しみかた
わたしのRubyの楽しみかたYuusaku Iwamoto
 
アジャイル事業部メンバーの2017年 抱負
アジャイル事業部メンバーの2017年 抱負アジャイル事業部メンバーの2017年 抱負
アジャイル事業部メンバーの2017年 抱負Eiwa System Management, Inc.
 
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップWebアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップNaoki Iwami
 
Dexador Rises
Dexador RisesDexador Rises
Dexador Risesfukamachi
 
ビズリーチ x ScalaMatsuri by BIZREACH, Inc.
ビズリーチ x ScalaMatsuri  by BIZREACH, Inc.ビズリーチ x ScalaMatsuri  by BIZREACH, Inc.
ビズリーチ x ScalaMatsuri by BIZREACH, Inc.scalaconfjp
 
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)torutk
 
Synthesijer jjug 201504_01
Synthesijer jjug 201504_01Synthesijer jjug 201504_01
Synthesijer jjug 201504_01Takefumi MIYOSHI
 
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)Koichi Sakata
 
Java web application testing
Java web application testingJava web application testing
Java web application testingTokuhiro Matsuno
 
大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EETaiichilow Nagase
 

Viewers also liked (20)

あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情についてあなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
あなたとAndroid 今すぐダウンロード!? Android開発で変わる SIerのJava技術事情について
 
Java 20年史 (JJUG CCC 2015 春 基調講演)
Java 20年史 (JJUG CCC 2015 春 基調講演)Java 20年史 (JJUG CCC 2015 春 基調講演)
Java 20年史 (JJUG CCC 2015 春 基調講演)
 
はまる!JPA(初学者向けライト版)
はまる!JPA(初学者向けライト版)はまる!JPA(初学者向けライト版)
はまる!JPA(初学者向けライト版)
 
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
クラウド時代の Spring Framework (aka Spring Framework in Cloud Era)
 
金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency API金勘定のためのBigDecimalそしてMoney and Currency API
金勘定のためのBigDecimalそしてMoney and Currency API
 
プログラミング言語Clojureのニャンパスでの活用事例
プログラミング言語Clojureのニャンパスでの活用事例プログラミング言語Clojureのニャンパスでの活用事例
プログラミング言語Clojureのニャンパスでの活用事例
 
Java開発の強力な相棒として今すぐ使えるGroovy
Java開発の強力な相棒として今すぐ使えるGroovyJava開発の強力な相棒として今すぐ使えるGroovy
Java開発の強力な相棒として今すぐ使えるGroovy
 
JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライド
JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライドJJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライド
JJUG CCC 2015 Spring 「新人エンジニア奮闘記 - Javaって何?からwebサービスを公開するまで -」発表スライド
 
GrailsでSpringをGroovyにしよう!
GrailsでSpringをGroovyにしよう!GrailsでSpringをGroovyにしよう!
GrailsでSpringをGroovyにしよう!
 
わたしのRubyの楽しみかた
わたしのRubyの楽しみかたわたしのRubyの楽しみかた
わたしのRubyの楽しみかた
 
アジャイル事業部メンバーの2017年 抱負
アジャイル事業部メンバーの2017年 抱負アジャイル事業部メンバーの2017年 抱負
アジャイル事業部メンバーの2017年 抱負
 
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップWebアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
 
Dexador Rises
Dexador RisesDexador Rises
Dexador Rises
 
ビズリーチ x ScalaMatsuri by BIZREACH, Inc.
ビズリーチ x ScalaMatsuri  by BIZREACH, Inc.ビズリーチ x ScalaMatsuri  by BIZREACH, Inc.
ビズリーチ x ScalaMatsuri by BIZREACH, Inc.
 
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
Java FXグラフィックスとアニメーション入門(JJUG CCC 2015 Spring G-7)
 
Synthesijer jjug 201504_01
Synthesijer jjug 201504_01Synthesijer jjug 201504_01
Synthesijer jjug 201504_01
 
Ruby everywhere
Ruby everywhereRuby everywhere
Ruby everywhere
 
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
クリスマスを支える俺たちとJava(JJUG CCC 2015 Spring AB4)
 
Java web application testing
Java web application testingJava web application testing
Java web application testing
 
大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE大規模な負荷でもドキドキしない為のJava EE
大規模な負荷でもドキドキしない為のJava EE
 

Similar to JJUG CCC 20150411 grails3 Spring-boot

2013.01.18 G*Workshop GGX 2012 Report
2013.01.18 G*Workshop GGX 2012 Report2013.01.18 G*Workshop GGX 2012 Report
2013.01.18 G*Workshop GGX 2012 ReportYu Sudo
 
Micronaut on Azure 試してみた
Micronaut on Azure 試してみたMicronaut on Azure 試してみた
Micronaut on Azure 試してみた拓将 平林
 
明日から使えるgradle
明日から使えるgradle明日から使えるgradle
明日から使えるgradlekimukou_26 Kimukou
 
HerokuでRailsアプリ運用の パフォーマンス、SEO対策
HerokuでRailsアプリ運用の パフォーマンス、SEO対策HerokuでRailsアプリ運用の パフォーマンス、SEO対策
HerokuでRailsアプリ運用の パフォーマンス、SEO対策Salesforce Developers Japan
 
企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624Yusuke Suzuki
 
Playbay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイPlaybay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイKazuhiro Hara
 
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub  (#kyotojs)JavaScript on GitHub  (#kyotojs)
JavaScript on GitHub (#kyotojs)y_uuki
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とToru Takahashi
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とToru Takahashi
 
Groovy base gradle_20130309
Groovy base gradle_20130309Groovy base gradle_20130309
Groovy base gradle_20130309Nobuhiro Sue
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!ymmt
 
Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説貴仁 大和屋
 
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話Akihiro Sugeno
 
sbtマルチプロジェクトビルドの使いどころ
sbtマルチプロジェクトビルドの使いどころsbtマルチプロジェクトビルドの使いどころ
sbtマルチプロジェクトビルドの使いどころKazuhiro Hara
 
Capistrano in practice - WebCareer
Capistrano in practice - WebCareerCapistrano in practice - WebCareer
Capistrano in practice - WebCareerKyosuke MOROHASHI
 
事例紹介「なうまぴおん」
事例紹介「なうまぴおん」事例紹介「なうまぴおん」
事例紹介「なうまぴおん」Eiji Iwazawa
 
Introduction to GraalVM and Native Image
Introduction to GraalVM and Native ImageIntroduction to GraalVM and Native Image
Introduction to GraalVM and Native ImageKoichi Sakata
 

Similar to JJUG CCC 20150411 grails3 Spring-boot (20)

Grailsのススメ(仮)
Grailsのススメ(仮)Grailsのススメ(仮)
Grailsのススメ(仮)
 
2013.01.18 G*Workshop GGX 2012 Report
2013.01.18 G*Workshop GGX 2012 Report2013.01.18 G*Workshop GGX 2012 Report
2013.01.18 G*Workshop GGX 2012 Report
 
Micronaut on Azure 試してみた
Micronaut on Azure 試してみたMicronaut on Azure 試してみた
Micronaut on Azure 試してみた
 
明日から使えるgradle
明日から使えるgradle明日から使えるgradle
明日から使えるgradle
 
HerokuでRailsアプリ運用の パフォーマンス、SEO対策
HerokuでRailsアプリ運用の パフォーマンス、SEO対策HerokuでRailsアプリ運用の パフォーマンス、SEO対策
HerokuでRailsアプリ運用の パフォーマンス、SEO対策
 
企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624企業におけるSpring@日本springユーザー会20090624
企業におけるSpring@日本springユーザー会20090624
 
Haikara
HaikaraHaikara
Haikara
 
Playbay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイPlaybay Play 2.0 plugin イロハのイ
Playbay Play 2.0 plugin イロハのイ
 
JavaScript on GitHub (#kyotojs)
JavaScript on GitHub  (#kyotojs)JavaScript on GitHub  (#kyotojs)
JavaScript on GitHub (#kyotojs)
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
EmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤とEmbulkとDigdagとデータ分析基盤と
EmbulkとDigdagとデータ分析基盤と
 
Groovy base gradle_20130309
Groovy base gradle_20130309Groovy base gradle_20130309
Groovy base gradle_20130309
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!
 
Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説Prometheus入門から運用まで徹底解説
Prometheus入門から運用まで徹底解説
 
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
スマホ版ログレスでグローバル展開を想定したサーバ構築をAnsibleで試してみた話
 
sbtマルチプロジェクトビルドの使いどころ
sbtマルチプロジェクトビルドの使いどころsbtマルチプロジェクトビルドの使いどころ
sbtマルチプロジェクトビルドの使いどころ
 
Capistrano in practice - WebCareer
Capistrano in practice - WebCareerCapistrano in practice - WebCareer
Capistrano in practice - WebCareer
 
事例紹介「なうまぴおん」
事例紹介「なうまぴおん」事例紹介「なうまぴおん」
事例紹介「なうまぴおん」
 
Start-padrino
Start-padrinoStart-padrino
Start-padrino
 
Introduction to GraalVM and Native Image
Introduction to GraalVM and Native ImageIntroduction to GraalVM and Native Image
Introduction to GraalVM and Native Image
 

More from Tsuyoshi Yamamoto

Grailsx@ロンドンへ行ってきた報告。
Grailsx@ロンドンへ行ってきた報告。Grailsx@ロンドンへ行ってきた報告。
Grailsx@ロンドンへ行ってきた報告。Tsuyoshi Yamamoto
 
多治見IT勉強会 Groovy Grails
多治見IT勉強会 Groovy Grails多治見IT勉強会 Groovy Grails
多治見IT勉強会 Groovy GrailsTsuyoshi Yamamoto
 
G*ワークショップ in 仙台 Grails(とことん)入門
G*ワークショップ in 仙台 Grails(とことん)入門G*ワークショップ in 仙台 Grails(とことん)入門
G*ワークショップ in 仙台 Grails(とことん)入門Tsuyoshi Yamamoto
 
Jggug 2010 330 Grails 1.3 観察
Jggug 2010 330 Grails 1.3 観察Jggug 2010 330 Grails 1.3 観察
Jggug 2010 330 Grails 1.3 観察Tsuyoshi Yamamoto
 
groovyプラプラとか「はやい、はやいよ」
groovyプラプラとか「はやい、はやいよ」groovyプラプラとか「はやい、はやいよ」
groovyプラプラとか「はやい、はやいよ」Tsuyoshi Yamamoto
 
第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」
第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」
第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」Tsuyoshi Yamamoto
 
第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」
第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」
第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」Tsuyoshi Yamamoto
 
名古屋SGGAE/J勉強会 Grails、Gaelykでハンズオン
名古屋SGGAE/J勉強会 Grails、Gaelykでハンズオン名古屋SGGAE/J勉強会 Grails、Gaelykでハンズオン
名古屋SGGAE/J勉強会 Grails、GaelykでハンズオンTsuyoshi Yamamoto
 
Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-
Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-
Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-Tsuyoshi Yamamoto
 
Groovy ネタ NGK 忘年会2009 ライトニングトーク
Groovy ネタ NGK 忘年会2009 ライトニングトークGroovy ネタ NGK 忘年会2009 ライトニングトーク
Groovy ネタ NGK 忘年会2009 ライトニングトークTsuyoshi Yamamoto
 
G*なクラウド 雲のかなたに ショートバージョン
G*なクラウド 雲のかなたに ショートバージョンG*なクラウド 雲のかなたに ショートバージョン
G*なクラウド 雲のかなたに ショートバージョンTsuyoshi Yamamoto
 
JGGUG Camp 2009 いっぽう熱海では、
JGGUG Camp 2009 いっぽう熱海では、JGGUG Camp 2009 いっぽう熱海では、
JGGUG Camp 2009 いっぽう熱海では、Tsuyoshi Yamamoto
 
G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~Tsuyoshi Yamamoto
 

More from Tsuyoshi Yamamoto (20)

Grailsx@London 2011 報告
Grailsx@London 2011 報告Grailsx@London 2011 報告
Grailsx@London 2011 報告
 
Grails 2.0.0.M1の話
Grails 2.0.0.M1の話 Grails 2.0.0.M1の話
Grails 2.0.0.M1の話
 
Grails 1.4.0.M1 メモLT
Grails 1.4.0.M1 メモLTGrails 1.4.0.M1 メモLT
Grails 1.4.0.M1 メモLT
 
G * magazine 1
G * magazine 1G * magazine 1
G * magazine 1
 
JGGUG 2011-02 LT
JGGUG 2011-02 LTJGGUG 2011-02 LT
JGGUG 2011-02 LT
 
Grailsx@ロンドンへ行ってきた報告。
Grailsx@ロンドンへ行ってきた報告。Grailsx@ロンドンへ行ってきた報告。
Grailsx@ロンドンへ行ってきた報告。
 
多治見IT勉強会 Groovy Grails
多治見IT勉強会 Groovy Grails多治見IT勉強会 Groovy Grails
多治見IT勉強会 Groovy Grails
 
G*ワークショップ in 仙台 Grails(とことん)入門
G*ワークショップ in 仙台 Grails(とことん)入門G*ワークショップ in 仙台 Grails(とことん)入門
G*ワークショップ in 仙台 Grails(とことん)入門
 
Jggug 2010 330 Grails 1.3 観察
Jggug 2010 330 Grails 1.3 観察Jggug 2010 330 Grails 1.3 観察
Jggug 2010 330 Grails 1.3 観察
 
groovyプラプラとか「はやい、はやいよ」
groovyプラプラとか「はやい、はやいよ」groovyプラプラとか「はやい、はやいよ」
groovyプラプラとか「はやい、はやいよ」
 
第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」
第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」
第3回Grails/Groovy勉強会名古屋「Grails名古屋座談会」
 
第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」
第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」
第1回名古屋Grails/Groogy勉強会「Grailsを始めてみよう!」
 
名古屋SGGAE/J勉強会 Grails、Gaelykでハンズオン
名古屋SGGAE/J勉強会 Grails、Gaelykでハンズオン名古屋SGGAE/J勉強会 Grails、Gaelykでハンズオン
名古屋SGGAE/J勉強会 Grails、Gaelykでハンズオン
 
Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-
Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-
Grails 1.2 探検隊 -新たな聖杯をもとめて・・・-
 
Groovy ネタ NGK 忘年会2009 ライトニングトーク
Groovy ネタ NGK 忘年会2009 ライトニングトークGroovy ネタ NGK 忘年会2009 ライトニングトーク
Groovy ネタ NGK 忘年会2009 ライトニングトーク
 
G*なクラウド 雲のかなたに ショートバージョン
G*なクラウド 雲のかなたに ショートバージョンG*なクラウド 雲のかなたに ショートバージョン
G*なクラウド 雲のかなたに ショートバージョン
 
JGGUG Camp 2009 いっぽう熱海では、
JGGUG Camp 2009 いっぽう熱海では、JGGUG Camp 2009 いっぽう熱海では、
JGGUG Camp 2009 いっぽう熱海では、
 
ExtJS勉強会@名古屋
ExtJS勉強会@名古屋ExtJS勉強会@名古屋
ExtJS勉強会@名古屋
 
G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~G*なクラウド ~雲のかなたに~
G*なクラウド ~雲のかなたに~
 
はじめてのGroovy
はじめてのGroovyはじめてのGroovy
はじめてのGroovy
 

Recently uploaded

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 

Recently uploaded (9)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 

JJUG CCC 20150411 grails3 Spring-boot

  • 3. 活動 • 今週のGrails 意訳版 • grails.jp/news • Grailsリリース情報を
 ほぼリアルタイム配信。
 9年目に突入! • はてな id: mottsnite
  • 4. 本日のお話 • Grails ? • Road to 3.0 • Grails 2.4.x ∼ Grails 2.5 • Grails 3 の話 • 新機能情報など • Grails2との違い。 • Grails 3 とSpring Boot。
  • 5. 祝!New GRAILS_HOME!(4.9) ↓ Object Computing, Inc. 昔からGroovyに関心を持っている会社です。 Jeff氏が昔いた会社
  • 6. Grails て何? (知らない人へ) • Springフレームワークをベースに
 ドメインドリブンでサクッと開発する
 フルスタックフレームワーク。 • RoRにインスパイアされてJava/Groovyで開発。 • RoR系なので、CoCです。 • 開発には、
 ディレクトリベースの規約とGroovy DSLを活用。
  • 7. Road to 3.0 Grails 3.0への道
  • 8. 図解説明 Road to 3.0 Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Spring 4.1.x Groovy 2.4.x Grails 2.4.x Grails 2.5 Grails 3.0.x 今までと同じアーキテクチャ Grails以外で 使用可能 Standalone GORM Standalone GSP Asset Pipeline Gradle Asset Pipeline Plugin Grails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると? Spring Boot 1.2.x Spring 4.1.x Groovy 2.4.x そぎゃんこと言うても、変わっ とだけんしょんなかたい! アーキテクチャが変わった!? アップデート大変!? Spring 4.1なので依存するプラグイン は注意してね。
  • 9. 図解説明 Road to 3.0 Grails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると?
  • 10. Road to 3.0 • Road to 3.0 構想 • 3.0リリースというゴールに向けて
 2.4.xから、リファクタリングを開始。
 一部の実装は2.4でも含む。 • Spring Bootをベースにするために。 • コアコードを集中的にリファクタリング • 主要機能は、生Spring BootなどGrails外でも使用できるように 再構築。
 (以前できてた?できかけてた物も再度見直し) • ただゴールのGrails3では一部仕様変わるかもよっ! • なんなら、実際に更新大変かもよっ! • それでもモダンなアーキテクチャにするのだよ!
  • 11. Grails 2.4.x リリース • Spring 4.0 • Java 8 対応 • Groovy 2.3 に更新 • @CompileStatic 対応 • アセットパイプライン • コードベースのモジュラー化 • Hibernate 4 対応 • 単独利用できる GORMとGSP
  • 12. 図解説明 Road to 3.0 Grails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると? Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Grails 2.4.x Grails以外で 使用可能 Standalone GORM Standalone GSP Asset Pipeline
  • 14. Spring 4.1は Grails 3で対応する(キリッ
  • 17. Grails 2.5 • Grails 2.4 系と同じアーキテクチャ。 • 違い • Groovy 2.4 対応 • Spring 4.1 対応 • いきなり Grails3 だと アレ な人向けに、
 ベースとなるライブラリを
 更新して対応させたバージョン。
        ただし、Spring 4.1の互換に悩む事も。
  • 18. 図解説明 Road to 3.0 Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Grails 2.4.x Grails以外で 使用可能 Standalone GORM Standalone GSP Asset PipelineGrails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると? Spring 4.1.x Groovy 2.4.x Grails 2.5 今までと同じアーキテクチャ Spring 4.1なので依存するプラグイン は注意してね。
  • 19. 図解説明 Road to 3.0 Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Grails 2.4.x Grails以外で 使用可能 Standalone GORM Standalone GSP Asset PipelineGrails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると? Spring 4.1.x Groovy 2.4.x Grails 2.5 今までと同じアーキテクチャ Spring 4.1なので依存するプラグイン は注意してね。
  • 20. 図解説明 Road to 3.0 Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Grails 2.4.x Grails以外で 使用可能 Standalone GORM Standalone GSP Asset PipelineGrails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレだね。 今後はどうすると? Spring 4.1.x Groovy 2.4.x Grails 2.5 今までと同じアーキテクチャ Spring 4.1なので依存するプラグイン は注意してね。 Grails 3 の話を始める前に おさえて起きたい内容。 ★ Asset Pipeline ★ スタンドアロンGORM, GSP
  • 21. Asset Pipeline • Web用リソースアセット(CSS,JS,画像)をアレするアレ。 Railsの人にはお馴染みかな。 • Resourcesプラグインに変わりコチラが公式となった。 assetタグ <asset:javascript src="application.js"/> <asset:stylesheet href="application.css"/> <asset:image src="grails_logo.png" height="60" /> application.js //= require jquery //= require_self //= require file_a //= require_tree . console.log('some javascript');
  • 22. Standalone GORM • GORM - Grails O/R マッピング
 Grails3へ向けて外部利用もできるようになった。 • https://github.com/tyama/standalone-gorm-examples
 ↑以下のサンプル詰め合わせ • Groovyスクリプト • GORM MongoDB • GORM Hibernate 4 • Spring Boot • GORM MongoDB • GORM Hibernate 4 デモ
  • 23. Standalone GSP & Spring Boot • Grailsでお馴染みのView層 GSP • https://github.com/grails/grails-boot
  • 24. Road to Grails 3.0 ここで、Grails 2.4.x , 2.5 の話は終了。
  • 25. 図解説明 Road to 3.0 Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Grails 2.4.x Grails以外で 使用可能 Standalone GORM Standalone GSP Asset PipelineGrails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると? Spring 4.1.x Groovy 2.4.x Grails 2.5 今までと同じアーキテクチャ Spring 4.1なので依存するプラグイン は注意してね。 Grails 3.0.x
  • 27. Grails 3 • 何かに られる形で3/31に3.0.0リリース。 • そしてすぐに3.0.1リリース。 • プロジェクトリーダーは、その後、長期休暇へ。戻ってくるのか!? • 前バージョンから更新はファイル複製! • Spring Bootをベースに構築。 • CoCとCoCのぶつかり合い。良い意味でも悪い意味でも。。 • ビルドシステムをGradleに。 • ビルドを柔軟に。
  • 28. 図解説明 Road to 3.0 Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Spring 4.1.x Groovy 2.4.x Grails 2.4.x Grails 2.5 Grails 3.0.x 今までと同じアーキテクチャ Grails以外で 使用可能 Standalone GORM Standalone GSP Asset Pipeline Gradle Asset Pipeline Plugin Grails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると? Spring Boot 1.2.x Spring 4.1.x Groovy 2.4.x アーキテクチャが変わった!? Spring 4.1なので依存するプラグイン は注意してね。
  • 29. Grails3 What s new! ザックリ、解説
  • 30. Grails3 What s new! - コアフィーチャ • Groovy 2.4 • AST, Trait, StaticCompile • Spring 4.1 • JMSアノテーション, JCache, WebSocket, 
 Groovyマークアップテンプレート • Spring Boot 1.2 • SpringのSpringによるCoC • Tomcat,Jetty,Undertowコンテナ組込の起動可能Jar • Gradle ビルドシステム • 今までのGantからGradleへ移行! 細かいことは
 Spring詳しい人に聞いて 細かいことは
 Groovy詳しい人に聞いて とりあえず、
 Boot本読んでね。 Gradle本 持ってないの?
  • 31.
  • 32. Grails3 - 何故 Spring Boot? • マイクロサービス
  • 35. モノリス vs マイクロサービス Alvaro Sanchez-Mariscal氏のスライドより。
  • 36. Grails3 - 何故 Spring Boot? • マイクロサービス • ファットJARと組込コンテナ。様々なランタイムに対応。 • Tomcat, Jetty, Undertow
 • モニタリングとヘルスチェックの仕組み • spring-boot-starter-actuator
 • Bootのオートコンフィグレーションの活用。 • 常識的なデフォルト設定 • spring-boot-autoconfigure
 • Springの柔軟性を活用 (今までもこれからも)

  • 38. Grails マイクロサービス • 作成 • grails create-app demo --profile=web-micro • 実行 • grails run-app / インタラクティブモードでもOK • パッケージ • grails package • java -jar build/demo-0.1.jar • 注意点: 現状の問題点 • テストコードがあると動かない • パッケージしたときにgroovy-antがなくて起動しない.. • @Grab('org.codehaus.groovy:groovy-ant:2.4.3') • 物によっては動きが?まあマイクロサービスですから。
  • 39. Grails3 What s new! - コアフィーチャ • アプリケーションプロファイル
  • 40. Keynote: Grails 3.0 Preview Grails3 - プロファイル •アプリケーションのプロファイルを指定することで
 さまざまなタイプのアプリケーション生成に対応。 •プロファイルはgithubリポジトリで管理されている。 •そこに使用可能なプロファイルが提供されている。 スライド流用
  • 41. Keynote: Grails 3.0 Preview Grails3 - プロファイル •リポジトリのprofile階層に使用可能なプロファイルが管理されて いる。 •そこに今後。 ratpackとか他のプロファイルも入る。 •プロファイルでは以下が定義されている。 •プロジェクトスケルトン •テンプレート •コマンド スライド流用
  • 42. Keynote: Grails 3.0 Preview Grails3 - プロファイル - コマンド •yamlでタスクステップを定義。 •groovyでスクリプトを提供も可能。 •GroovyScriptCommandクラスとして実行される。 •コマンド補完などの内容も定義 •コマンド作成用に新たなAPIなども用意されている。 •コード生成用のrender, modelなど。 スライド流用
  • 43. Keynote: Grails 3.0 Preview Grails3 - プロファイル - 継承 •プロファイルは継承できます。 •プロファイルを実装するときは
 近いプロファイルを継承して作成できる。多重継承も可能。 •継承するので、必要追加分のみを定義すればよい。 •不要なスケルトン・コマンドは除外も可能。 •でも、まだ自由にリポジトリを切替はできないのでアレです。 スライド流用
  • 44. Grails3 What s new! - コアフィーチャ • Traitをベースに再デザインされたAPI • Groovy 2.4.x の恩恵! • traitがASTされます!
  • 45. Grails3 What s new! - コアフィーチャ • 内部フローの変更
  • 46. Grails3 What s new! - Webフィーチャ • コントローラアクション用フィルターの廃止。 • Interceptor API に変更。 class MyInterceptor { boolean before() { true } boolean after() { true } void afterView() { // no-op } }
  • 47. Grails3 What s new! - 開発環境フィーチャ • 新たなシェルとコード生成API • 強化されたIDE統合 • Intellij IDEA にgradleプロジェクトとして取込 • アプリケーションメインクラス • static void main をもつ Applicationクラスを実行 • IDEで実行・デバッグも起動できる
  • 48. Grails3 What s new! - テストフィーチャ • インテグレーション • Spring Bootをベースとしたテスト実行の仕組みを使用
 • Gebファンクショナルテスト • create-functional-test で
 Spock/Gebファンクショナルテストを生成
 • Gradleテスト実行 • 並列実行でのテスト実行定義など。
  • 49. What s New だけだとわからんね。
  • 51. デモ • マイクロサービス - コードみましょ。 • 通常App - コードみましょ。 • Grails3 + Spring Boot
  • 52. Grails3 のコードいろいろ • メインファイル grails-app/init/パッケージパス/Application.groovy • Spring Bootと同じ感じだよ。 • 階層がかわった。 • http://grails.github.io/grails-doc/3.0.1/guide/upgrading.html • 定義設定が変わった。Config.groovy DataSource.groovy 廃止 • 今後のメインは application.yml • 今までのGroovyな設定ファイルは application.groovyを作成して書けば良いよ。 • 読込順: yml → groovy → 起動ルートyml → 環境変数 • ログの形式が変わったよ。 logback.groovy • http://logback.qos.ch/manual/groovy.html • Gradleになったから、BuildConfigは無しで、 build.gradle を使うよ! • Grails用のGradleプラグイン
  • 53. Grails3 のいろいろ • Grails2からの移行は結構大変。 • http://grails.github.io/grails-doc/3.0.1/guide/upgrading.html • Grails2で出来たことが実装変わってアレっとなる。 → 慣れろ! • 同時にSpring Bootのマニュアルを読むようになる。 • http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/html/ • Spring 4.1で提供されている便利な物は使え。 • http://docs.spring.io/spring/docs/4.1.x/spring-framework-reference/html/ • いろいろ解明するまで悩みまくる → まだ情報すくない。 • ドキュメントが嘘つきの時がある。(書いてある事がGrails2の情報だったり) • -noverify
  • 54. Grails3 でのプラグイン • プラグインまだ少ないね!? 現状: 17個 • 今後はbintrayで管理される: https://bintray.com/grails/plugins • Grails 2.4 系でのプラグイン数: 1200個 • Grails3では使えません。どうすんの? 以下でだいたいクリア。 • リソース系: webjarsを活用 • Spring系: オートコンフィグとかでどうにかなるでしょ? • ファンクショナル系: 自分で移行 • ライブラリ系: 依存追加すれば? • テクニカルな: 作者が対応するの待つ or 頑張って自分で実装! • ゴミ系: どうでもいい物もたくさんある。そいつらは気にしない。
  • 55. 図解説明 Road to 3.0 Spring 4.0.x Groovy 2.3.x コードベースのモジュラー化 Spring 4.1.x Groovy 2.4.x Grails 2.4.x Grails 2.5 Grails 3.0.x 今までと同じアーキテクチャ Grails以外で 使用可能 Standalone GORM Standalone GSP Asset Pipeline Gradle Asset Pipeline Plugin Grails 1.3.x Grails 1.2.x Grails 1.0.x 古代 Grails 2.3.x Grails 2.2.x Grails 2.1.x 近代 時代に合わせると いろいろアレね。 今後はどうすると? Spring Boot 1.2.x Spring 4.1.x Groovy 2.4.x そぎゃんこと言うても、変わっ とだけんしょんなかたい! アーキテクチャが変わった!? アップデート大変!? Spring 4.1なので依存するプラグイン は注意してね。
  • 56. Grails3 まとめ • Spring Bootの勉強が必要 • 必須ではないが知っておくと吉。 • むしろ必要でしょ。 • Spring Boot の開発をさらに迅速に! • アノテーション不要開発。 • コード配置場所を定めるCoCでメンテナンスしやすい。 • 小さな物はもちろん、大中規模のアプリやプラグインを活用したモジュラ開発が可能 • キレイに開発すれば、後からSpring Boot化も可能。 • まだバグが多い? • そこまで酷くはない。簡単な回避方法もある……と思う。 • 今までも初物はアレでした。 • Grails2との関係 • 違いが多いので。。。
  • 57. JGGUGに集まれ! • G*ワークショップ • 来週あります!来週金曜日! • Web API祭り! • もっとGrails3の事を知ることができます! • https://jggug.doorkeeper.jp/events/22473