Submit Search
Upload
簡単!Groovy入門
•
6 likes
•
4,459 views
Lee Choong Geun
Follow
第9回福岡市西区プログラム勉強会発表資料
Read less
Read more
Technology
Report
Share
Report
Share
1 of 16
Download now
Download to read offline
Recommended
「プログラミングGroovy」入門(公開用)
「プログラミングGroovy」入門(公開用)
orange clover
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
宏治 高尾
Rubyist started to learn Groovy - things important to leran new LL
Rubyist started to learn Groovy - things important to leran new LL
Uchio Kondo
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
宏治 高尾
Groovy base
Groovy base
Akura Pi
Java one 2013 sf 報告会lt
Java one 2013 sf 報告会lt
torutk
運用で爆発四散しないためのメタプログラミングとの付き合い方
運用で爆発四散しないためのメタプログラミングとの付き合い方
Yuki Ishikawa
ググリワードを探す話
ググリワードを探す話
toru ishikawa
Recommended
「プログラミングGroovy」入門(公開用)
「プログラミングGroovy」入門(公開用)
orange clover
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
小学生3年生から使えるRubyのビジュアルプログラミングエディタ「スモウルビー」と、それを活用した任意団体「Rubyプログラミング少年団」[第7回フクオカ...
宏治 高尾
Rubyist started to learn Groovy - things important to leran new LL
Rubyist started to learn Groovy - things important to leran new LL
Uchio Kondo
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
ぼくたちRubyプログラミング少年団!~小・中学生向けプログラミング言語Rubyの学習塾の運営、学習教材の開発・販売事業~
宏治 高尾
Groovy base
Groovy base
Akura Pi
Java one 2013 sf 報告会lt
Java one 2013 sf 報告会lt
torutk
運用で爆発四散しないためのメタプログラミングとの付き合い方
運用で爆発四散しないためのメタプログラミングとの付き合い方
Yuki Ishikawa
ググリワードを探す話
ググリワードを探す話
toru ishikawa
Ruby Introduction
Ruby Introduction
YushiroDodo
Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
Keisuke Utsumi
ウェブエンジニアとしての1年目を振り返って
ウェブエンジニアとしての1年目を振り返って
Kohki Yamagiwa
渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
Yoshitaka Kawashima
Walking front end
Walking front end
Hirata Tomoko
TypeScript 独習会
TypeScript 独習会
Masahiro Wakame
Ruby with My Life
Ruby with My Life
Hiroshi SHIBATA
Jvm言語とJava、切っても切れないその関係
Jvm言語とJava、切っても切れないその関係
yy yank
Java初心者がJava8のラムダ式をやってみた
Java初心者がJava8のラムダ式をやってみた
Aya Ebata
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
Hirata Tomoko
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
(未発表) JavaScriptテスト勉強会@福岡#0の前に考えていたこと
(未発表) JavaScriptテスト勉強会@福岡#0の前に考えていたこと
Kohki Nakashima
TypeScriptからひも解く方向性
TypeScriptからひも解く方向性
echigoya-jp
TypeScriptについて
TypeScriptについて
echigoya-jp
他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
Takeshi Sugiyama
Pythonによる黒魔術入門
Pythonによる黒魔術入門
大樹 小倉
JavaScriptと関数型言語
JavaScriptと関数型言語
Hideaki Miyake
私なりのGo言語のご紹介
私なりのGo言語のご紹介
Ryuji Iwata
DjangoのORMことはじめ
DjangoのORMことはじめ
ko ty
JavascriptでRubyの作り方
JavascriptでRubyの作り方
Shuyo Nakatani
社内勉強会1 go lang
社内勉強会1 go lang
Tsuyoshi Nakamura
More Related Content
What's hot
Ruby Introduction
Ruby Introduction
YushiroDodo
Django で始める PyCharm 入門
Django で始める PyCharm 入門
kashew_nuts
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
Keisuke Utsumi
ウェブエンジニアとしての1年目を振り返って
ウェブエンジニアとしての1年目を振り返って
Kohki Yamagiwa
渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
Yoshitaka Kawashima
Walking front end
Walking front end
Hirata Tomoko
TypeScript 独習会
TypeScript 独習会
Masahiro Wakame
Ruby with My Life
Ruby with My Life
Hiroshi SHIBATA
Jvm言語とJava、切っても切れないその関係
Jvm言語とJava、切っても切れないその関係
yy yank
Java初心者がJava8のラムダ式をやってみた
Java初心者がJava8のラムダ式をやってみた
Aya Ebata
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
Hirata Tomoko
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
Tatsuya Shinozuka
(未発表) JavaScriptテスト勉強会@福岡#0の前に考えていたこと
(未発表) JavaScriptテスト勉強会@福岡#0の前に考えていたこと
Kohki Nakashima
TypeScriptからひも解く方向性
TypeScriptからひも解く方向性
echigoya-jp
TypeScriptについて
TypeScriptについて
echigoya-jp
他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
Takeshi Sugiyama
Pythonによる黒魔術入門
Pythonによる黒魔術入門
大樹 小倉
JavaScriptと関数型言語
JavaScriptと関数型言語
Hideaki Miyake
私なりのGo言語のご紹介
私なりのGo言語のご紹介
Ryuji Iwata
DjangoのORMことはじめ
DjangoのORMことはじめ
ko ty
What's hot
(20)
Ruby Introduction
Ruby Introduction
Django で始める PyCharm 入門
Django で始める PyCharm 入門
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
PHPerがgolangでもがいてる話@第1回 関西Golang勉強会
ウェブエンジニアとしての1年目を振り返って
ウェブエンジニアとしての1年目を振り返って
渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
渋谷JVM#1 Immutable時代のプログラミング言語 Clojure
Walking front end
Walking front end
TypeScript 独習会
TypeScript 独習会
Ruby with My Life
Ruby with My Life
Jvm言語とJava、切っても切れないその関係
Jvm言語とJava、切っても切れないその関係
Java初心者がJava8のラムダ式をやってみた
Java初心者がJava8のラムダ式をやってみた
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
Bottle使ってPython学習一緒にはじめませんか?
Bottle使ってPython学習一緒にはじめませんか?
(未発表) JavaScriptテスト勉強会@福岡#0の前に考えていたこと
(未発表) JavaScriptテスト勉強会@福岡#0の前に考えていたこと
TypeScriptからひも解く方向性
TypeScriptからひも解く方向性
TypeScriptについて
TypeScriptについて
他人が書いたコードのリファレンスをSphinxで作る方法
他人が書いたコードのリファレンスをSphinxで作る方法
Pythonによる黒魔術入門
Pythonによる黒魔術入門
JavaScriptと関数型言語
JavaScriptと関数型言語
私なりのGo言語のご紹介
私なりのGo言語のご紹介
DjangoのORMことはじめ
DjangoのORMことはじめ
Similar to 簡単!Groovy入門
JavascriptでRubyの作り方
JavascriptでRubyの作り方
Shuyo Nakatani
社内勉強会1 go lang
社内勉強会1 go lang
Tsuyoshi Nakamura
The History of Groovy #GroovyBase
The History of Groovy #GroovyBase
kyon mm
MF GeeksNight pplogの話
MF GeeksNight pplogの話
Naoto Koshikawa
G* Workshop in Fukuoka - Introduction
G* Workshop in Fukuoka - Introduction
Kazuchika Sekiya
Sprocketsを捨てたい
Sprocketsを捨てたい
Masato Noguchi
Swiftで外部ライブラリを使ってみよう
Swiftで外部ライブラリを使ってみよう
Kanako Kobayashi
オブジェクト指向プログラマが今関数型言語を学ばないといけない理由
オブジェクト指向プログラマが今関数型言語を学ばないといけない理由
Kohei Taniguchi
Guide to GraalVM (JJUG CCC 2019 Fall)
Guide to GraalVM (JJUG CCC 2019 Fall)
Koichi Sakata
これからはじめるための JavaScript 開発環境
これからはじめるための JavaScript 開発環境
Ryo Higashigawa
Mrubyの始め方
Mrubyの始め方
Masaki Muranaka
そろそろJavaみなおしてもええんやで
そろそろJavaみなおしてもええんやで
なおき きしだ
Groovy Grails eXchage 2014 報告
Groovy Grails eXchage 2014 報告
Tsuyoshi Yamamoto
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
Takuya Mukohira
開発を彩る技術たち
開発を彩る技術たち
Oda Shinsuke
Ruby on Railsではじめるrspecテスト
Ruby on Railsではじめるrspecテスト
Kanako Kobayashi
goog.require()を手書きしていいのは小学生まで
goog.require()を手書きしていいのは小学生まで
Teppei Sato
VMを改めて学んで見る
VMを改めて学んで見る
kishima7
JavaScriptで出来る、あんなことこんなこと
JavaScriptで出来る、あんなことこんなこと
Mayu Kimura
Alluren of prototype-based OOP
Alluren of prototype-based OOP
azuma satoshi
Similar to 簡単!Groovy入門
(20)
JavascriptでRubyの作り方
JavascriptでRubyの作り方
社内勉強会1 go lang
社内勉強会1 go lang
The History of Groovy #GroovyBase
The History of Groovy #GroovyBase
MF GeeksNight pplogの話
MF GeeksNight pplogの話
G* Workshop in Fukuoka - Introduction
G* Workshop in Fukuoka - Introduction
Sprocketsを捨てたい
Sprocketsを捨てたい
Swiftで外部ライブラリを使ってみよう
Swiftで外部ライブラリを使ってみよう
オブジェクト指向プログラマが今関数型言語を学ばないといけない理由
オブジェクト指向プログラマが今関数型言語を学ばないといけない理由
Guide to GraalVM (JJUG CCC 2019 Fall)
Guide to GraalVM (JJUG CCC 2019 Fall)
これからはじめるための JavaScript 開発環境
これからはじめるための JavaScript 開発環境
Mrubyの始め方
Mrubyの始め方
そろそろJavaみなおしてもええんやで
そろそろJavaみなおしてもええんやで
Groovy Grails eXchage 2014 報告
Groovy Grails eXchage 2014 報告
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
苫小牧高専 ソフトウェアテクノロジー部 Rubyで遊ぼう 1
開発を彩る技術たち
開発を彩る技術たち
Ruby on Railsではじめるrspecテスト
Ruby on Railsではじめるrspecテスト
goog.require()を手書きしていいのは小学生まで
goog.require()を手書きしていいのは小学生まで
VMを改めて学んで見る
VMを改めて学んで見る
JavaScriptで出来る、あんなことこんなこと
JavaScriptで出来る、あんなことこんなこと
Alluren of prototype-based OOP
Alluren of prototype-based OOP
More from Lee Choong Geun
ヤマハルータで始める自宅LANのすゝめ
ヤマハルータで始める自宅LANのすゝめ
Lee Choong Geun
TeslaCryptを焼き肉に変えた話
TeslaCryptを焼き肉に変えた話
Lee Choong Geun
Gradle入門
Gradle入門
Lee Choong Geun
もっと気軽に勉強会を
もっと気軽に勉強会を
Lee Choong Geun
PBLのためのはじめてのGit
PBLのためのはじめてのGit
Lee Choong Geun
Effective Java輪読会 vol0
Effective Java輪読会 vol0
Lee Choong Geun
出、出~!勉強会参加技術向上思奴wwww
出、出~!勉強会参加技術向上思奴wwww
Lee Choong Geun
LINQ雑談
LINQ雑談
Lee Choong Geun
xamarin for android試してみた
xamarin for android試してみた
Lee Choong Geun
西区プログラム勉強会説明資料OSC発表版
西区プログラム勉強会説明資料OSC発表版
Lee Choong Geun
ハードウェアで遊ぼうよ
ハードウェアで遊ぼうよ
Lee Choong Geun
西区プログラム勉強会(仮)Ver2
西区プログラム勉強会(仮)Ver2
Lee Choong Geun
More from Lee Choong Geun
(12)
ヤマハルータで始める自宅LANのすゝめ
ヤマハルータで始める自宅LANのすゝめ
TeslaCryptを焼き肉に変えた話
TeslaCryptを焼き肉に変えた話
Gradle入門
Gradle入門
もっと気軽に勉強会を
もっと気軽に勉強会を
PBLのためのはじめてのGit
PBLのためのはじめてのGit
Effective Java輪読会 vol0
Effective Java輪読会 vol0
出、出~!勉強会参加技術向上思奴wwww
出、出~!勉強会参加技術向上思奴wwww
LINQ雑談
LINQ雑談
xamarin for android試してみた
xamarin for android試してみた
西区プログラム勉強会説明資料OSC発表版
西区プログラム勉強会説明資料OSC発表版
ハードウェアで遊ぼうよ
ハードウェアで遊ぼうよ
西区プログラム勉強会(仮)Ver2
西区プログラム勉強会(仮)Ver2
Recently uploaded
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
Recently uploaded
(9)
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
簡単!Groovy入門
1.
簡単!Groovy入門 2014/06/29 西区プログラム勉強会 李充根
2.
発表の流れ • きっかけ • Groovyとは? •
Hello world • 基本的な文法 • フルスタックフレームワークGrails 2014/6/29 第9回福岡市西区プログラム勉強会 2
3.
きっかけ • 仕事でWEB開発することがないので趣味でやろう • スクリプト系の言語を勉強したい •
PythonやRubyを勉強したことあるけどどうもなれない • 最近関数型とかはやってるけど(Haskell、Scala、…) – いきなり関数型のパラダイムに入るのは怖い • JVMで動く言語って面白そう(Scala、Clojure) • せっかくなので今使えるJavaに似た言語 =Groovy 2014/6/29 第9回福岡市西区プログラム勉強会 3
4.
Groovyとは? • JVM上で動作する動的言語 • Java的な文法で記述できるスクリプト言語 •
Rubyの影響を多大に受けており、その他Smalltalkなども影 響している • Gradle設定を記述するのに使用する • 最近Androidで動くようになったのでSwiftとの対比で 注目されるかも? • 一言で言うとJavaをスクリプトにした言語 ≠JavaScript 2014/6/29 第9回福岡市西区プログラム勉強会 4
5.
Groovyの特徴 • Java(っぽい文法)でスクリプトかける • コンパイル不要(.classにコンパイルすることもできる) •
Javaで不便だった部分を使いやすく – Java8になり改善された部分も • 今バージョン2.3 • 今年中に3.0 betaリリース予定 – Java8対応 – ラムダ式、streamAPI、Date Time API対応 – (クロージャとラムダ式どうなるんだろう) 2014/6/29 第9回福岡市西区プログラム勉強会 5
6.
Hello world • 何はともあれプログラムの基本「Hello
world」 • 動的スクリプト言語なのでクラス宣言なしでも動かすことがで きる • もう少し丁寧に書くと println “Hello world”1 class Hello{ static final main(String... args){ println “Hello world” } } 1 2 3 4 5 Groovyはデフォルトでpublic ;は不要(入れてもよい) 2014/6/29 第9回福岡市西区プログラム勉強会 6
7.
基本的な文法 • 変数宣言 – 動的型付けの場合はObject型として扱われる •
List、Map int hoge = 1 String fuga = “fugafuga” def piyo = “piyopiyo” 1 2 3 動的型付け def list1 = [1, 2, 3] def list2 = (1..3) def map = [id:1, name: “ligun”] 1 2 3 2014/6/29 第9回福岡市西区プログラム勉強会 7
8.
基本的な文法 • for、for in –
for文はJavaと同様 – クロージャを使って下記のようにも記述できる for(i in 1..3){ println i } 1 2 3 (1..3).each { println it }1 2014/6/29 第9回福岡市西区プログラム勉強会 8
9.
基本的な文法 • クロージャ – Groovyはクロージャをサポートしてる –
sortなども簡単 def clos = { a, b -> println “$a + $b = ${a+b}” } clos(1, 2) 1 2 3 def list = [[id:1,name:"fukuoka"], [id:2,name:"oita"], [id:3,name:"saga"], [id:4,name:"kumamoto"], [id:5,name:"miyazaki"]] def sortList = list.sort {it.name} println sortList 1 2 3 4 5 6 7 8 { it -> it.name } 1 + 2 = 3 2014/6/29 第9回福岡市西区プログラム勉強会 9
10.
基本的な文法 • その他 – returnの省略可 •
最後に実行した文が戻り値になる – 文字列比較が==で可能 – switch文で文字列、Rangeを使用可能 – アクセッサの自動生成 • クラスメソッドにはgetXxx、setXxxでアクセス可能 2014/6/29 第9回福岡市西区プログラム勉強会 10
11.
フルスタックフレームワークGrails • Grails? – Ruby
on Railsを参考にしたGroovy用の WEBアプリケーションフレームワーク – RoRと同じように「設定より規約」を重視した作り – MVCパターンに従って開発できる – warファアイルにデプロイすることで簡単に サーブレットコンテナで起動することができる 2014/6/29 第9回福岡市西区プログラム勉強会 11
12.
Grailsの特徴 • JSPのGrails版GSPを使うことでViewを完結に記述すること ができ、デザインとコードを分離できる • 標準で軽量DBも付属しているためテスト環境構築も簡単 •
Groovyで開発できるため、Javaとの親和性が高く様々なライ ブラリを使用できる • プラグインを導入することで様々な機能を追加できる – ログイン認証など 2014/6/29 第9回福岡市西区プログラム勉強会 12
13.
ちょっとだけGrails入門 • 新規Grailsアプリの作成 • コントローラの作成 –
helloControllerというクラスが作成される • コントローラに記述されたメソッド名と同名のGSPファイルを 作成することでコントローラが呼び出された時遷移する • モデルの作成 2014/6/29 第9回福岡市西区プログラム勉強会 13 grails create-app helloapp1 grails create-controller hello1 grails create-domain-class helloapp.Hello1
14.
Grails入門 • 基本的にコマンドで新しいファイルを作成した時点で基本的 な記述がされている • Model(ドメインクラス)を作成した時点で自動で CREATE
TABLEしてくれる • サンプル作成 2014/6/29 第9回福岡市西区プログラム勉強会 14
15.
まとめ • Groovy – Java的で使いやすい! –
Javaで痒かったところに手が届く(Java8で改善されたもの もあるけど) – 日本語資料少ない – Fukuoka.groovyたちあげたいな • Grails – 便利・簡単・速い – XMLの記述が不要なので楽 – やっぱり日本語資料少ない 2014/6/29 第9回福岡市西区プログラム勉強会 15
16.
ご清聴ありがとうございました 2014/6/29 第9回福岡市西区プログラム勉強会 16
Download now