Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
レッツゴーデベロッパー2011「プログラミングGroovy〜G*エコシステム編」
Search
Yasuharu Nakano
March 25, 2023
Programming
19
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
レッツゴーデベロッパー2011「プログラミングGroovy〜G*エコシステム編」
Yasuharu Nakano
March 25, 2023
More Decks by Yasuharu Nakano
See All by Yasuharu Nakano
GroovyServ - Technical Part
nobeans
0
90
JavaOne2010 Groovy/Spring Roo
nobeans
0
62
Groovy's Builder
nobeans
0
41
How about Gradle?
nobeans
0
22
JavaSE7 Launch Event: Java7xGroovy
nobeans
0
34
The report of JavaOne2011 about groovy
nobeans
0
33
Gr8conf EU 2013 Speed up your development: GroovyServ and Grails Improx Plugin
nobeans
0
29
OSS Product feat. Gradle
nobeans
1
39
Java開発の強力な相棒として今すぐ使えるGroovy
nobeans
0
63
Other Decks in Programming
See All in Programming
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
6k
技術記事、 専門家としてのプログラマ、 言語化
mizchi
14
7.5k
使用 Meilisearch 建立新聞搜尋工具
johnroyer
0
150
関数型プログラミングのメリットって何だろう?
wanko_it
0
170
yield再入門 #phpcon
o0h
PRO
0
270
act1-costs.pdf
sumedhbala
0
230
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
470
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
180
トークンをケチるな、設計しろ:GitHub Copilotを賢く使うコンテキスト戦略
ochtum
0
320
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
120
OSINT for SRE: 学術論文とポストモーテムから探る システム障害の共通パターン / SRE NEXT 2026
tomoyk
1
3.6k
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
360
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Thoughts on Productivity
jonyablonski
76
5.2k
Navigating Team Friction
lara
192
16k
How to train your dragon (web standard)
notwaldorf
97
6.7k
Darren the Foodie - Storyboard
khoart
PRO
3
3.4k
WENDY [Excerpt]
tessaabrams
11
38k
Become a Pro
speakerdeck
PRO
31
6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Accessibility Awareness
sabderemane
1
150
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2k
Writing Fast Ruby
sferik
630
63k
Transcript
Java ( ΤίγεςϜฤ
8IPBN* 㾎ࢯ໊ɿத༃࣏ʢBLBOPCFBOTʣ 㾎ॴଐɿ/55ιϑτΣΞגࣜձࣾ 㾎ϒϩάɿ౾ແه IUUQEIBUFOBOFKQOPCFBOT 㾎4USJOHUS ΛίϯτϦϏϡʔτ͠·ͨ͠ 㾎(SPPWZ4FSW࡞ͬͯ·͢
$ time groovy -e 'println "Hello, world!";' Hello, world! real
0m1.806s user 0m1.321s sys 0m0.171s $ time groovyclient -e 'println "Hello, world!";' Hello, world! real 0m0.029s user 0m0.001s sys 0m0.002s
$ time groovyserver GROOVY: /Users/ynak/Developer/runtime/groovy/bin/groovy GROOVYSERV_HOME: /usr/local/Cellar/groovyserv/0.5/libexec starting.... groovyserver 71209(1961)
is successfully started real 0m5.038s user 0m0.015s sys 0m0.048s
http://www.flickr.com/photos/turyddu/2682923190/ lݟΑɺ͋Ε͕ (SPPWZεΫϦϓτ ͍ୡͷرͰ͋Δz
http://groovy.dzone.com/news/dzone-interviews-yasuharu
None
Java એ͓ΘΓ
( ΤίγεςϜ
ΤίγεςϜ cc ੜଶܥ http://www.flickr.com/photos/philippeguillaume/4027168508
l͋ΔΛڞ༗͠ɺؔ Λ࣋ͭछʑͷߏཁ ૉ͕ͦͷ׆ಈΛҡ࣋͠ ͯߦͨ͘ΊͷΈz http://www.venturenow.jp/column/ogawa/20100721008569.html
ͪͭ ͨΕͭ
4QPDL
4QPDL ͪͭ
4QPDL ͨΕͭ
4QPDL ࣮༻తͳϥΠϒϥϦɾ πʔϧ܈શ෦ͻͬ͘ ΔΊͯ(SPPWZͰ͢
Γ࣌ؒͰɺ(SPPWZΤ ίγεςϜͷओཁϓϩμ ΫτΛϥΠτχϯάհ ͠·͢
4QPDL
㾎ϑϧελοΫͷ8FCΞϓϦέʔγϣϯϑϨʔϜϫʔΫ 㾎(SPPWZ൛ɺ3VCZPO3BJMT 㾎ݱࡏ4QSJOH4PVSDFࣾͷϥΠϯφοϓͷͭ 㾎4QSJOH.7$ 4QSJOH'SBNFXPSL )JCFSOBUFͳͲͷσϑΝΫ τͳϓϩμΫτΛج൫ͱͯ͠࠾༻ 㾎໘ͳઃఆʮنˍ%4-ʯͰ·Ζ͔ʹϥοϐϯά 㾎ϓϥάΠϯ͕ศརʂ 㾎ೝূػೳʁˠͦΕɺ4QSJOH4FDVSJUZϓϥάΠϯͰ
SZ 㾎$47ΤΫεϙʔτʁˠͦΕɺ&YQPSUϓϥάΠϯͰ SZ 㾎ৄ͘͠+((6(໊ݹࢧ෦ͷ!UZBNB͞Μʹʂ
㾎4XJOHϕʔεͷ3*"ϑϨʔϜϫʔΫ 㾎(SPPWZͷ4XJOH#VJMEFSΛϑϧ׆༻ 㾎(SBJMTͷΞʔΩςΫνϟΛͦͷ··౿ऻ 㾎+BS "QQMFU +84ͳͲʹύοέʔδϯάՄೳ 㾎কདྷతʹ+BWB'9ͷରԠ༧ఆ 㾎ৄ͘͠+((6(ؔࢧ෦ͷ!LJZUBLB͞ Μʹʂ
㾎ฒߦϓϩάϥϛϯάͷͨΊͷϥΠϒϥϦ 㾎(SPPWZ͔Βඪ४Ͱόϯυϧ͞Εͨʂ 㾎ฒߦॲཧɺඇಉظॲཧɺࢄॲཧͷͨΊͷײ తͰ҆શͳํ๏Λఏڙ 㾎ίϨΫγϣϯͷฒߦॲཧʢ.BQ3FEVDF෩ 㾎&SMBOH4DBMBͷΞΫλʔϓϩάϥϛϯάϞσϧ 㾎$MPKVSFͷΤʔδΣϯτ 㾎 ۚ ͷH
XPSLTIPQͰ;͞Μ !GVNPLNN ͕ൃද༧ఆͰ͢ʂ
㾎 ϙετ.BWFOͷ૯߹తͳϓϩδΣΫτཧπʔϧ 㾎 .BWFO͔ͳΓҙࣝͯ͠·͢ 㾎 σΟϨΫτϦߏ.BWFOํࣜΛ౿ऻ 㾎 ͪΖΜɺґଘϥΠϒϥϦཧͰ͖Δʢ*WZར༻ 㾎 ֤छϓϥάΠϯʹΑΔ؆୯ػೳՃʢએݴΛՃ͢Δ͚ͩʣ
㾎 (SPPWZ .BWFO &DMJQTF 04(J 4DBMB FUD 㾎 શ໘తʹ(SPPWZϕʔεͷ%4-Λ࠾༻ 㾎 ॊೈͳϚϧνϓϩδΣΫτߏ͕࣮ݱͰ͖Δ 㾎 ͋ͷ)JCFSOBUF(SBEMFʹҠߦͨ͠ʂ 㾎 ৄ͘͠υΩϡϝϯτຊޠ༁Ϧʔμ!MJUFSBMJDF͞Μʹʂ
㾎(PPHMF"QQ&OHJOF༻πʔϧΩοτ 㾎(SPPWZͷ1SPKFDU-FBEͰ͋Δ(VJMMBVNF -BGPSHFࢯ͕։ൃ 㾎("&ͷ"1*Λ(SPPWZ෩ʹ͢ΔͨΊͷബ͍ϥούʔ 㾎(SPPWZϥΠΫͳ%4-ه๏Λϑϧ׆༻ 㾎πΠολʔ#PUఔͳΒָʑ 㾎ৄ͘͠+((6(ӡӦҕһ݉ࣥචϦʔμͷ !LB[VDIJLB͞Μʹʂ
㾎#%%ʢϏϔΠϏΞۦಈ։ൃʣϑϨʔϜϫʔΫ 㾎1PXFS"TTFSUͷग़ 㾎"45มΛ׆༻ͯ͠ɺΘ͔Γ͍͢Ξαʔ γϣϯϝοηʔδΛදࣔͰ͖Δ 㾎(SPPWZͰຊՈʹऔΓࠐ·Ε͍ͯΔ 㾎؇ืɿຊ(SPPWZքͷϛελʔεϙοΫ 4QPDL
// ʮ0ʙ9ʹؚ·ΕͯΔۮͷݸ4ݸͩΑͶʁʯʢҧ def list = [0, 1, 2, 3, 4,
5, 6, 7, 8, 9] assert list.findAll{ it % 2 == 0 }.size() == 4 ʢࢀߟʣ1PXFS"TTFSU !!!!!!!!!!!!!!!!!!!!!!!!!! Caught: Assertion failed: assert list.findAll{ it % 2 == 0 }.size() == 4 | | | | | [0, 2, 4, 6, 8] 5 false [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
ૣ͗͢Δʁ Α͘Θ͔Βͳ͍ʁ ਓʹৼΓ͗͢ʁ αϯϓϧίʔυ͕ͳ͍ʁ
ষ
!"#"$%&'"()*+&',,-.%/*0'%&',1# ! " # " $ % & ' WPM
$ P O U F O U T (SBJMT. ϦϦʔεɹۓٸاը ݕূ (SBJMT ͷੈքʜʜʜʜʜʜʜʜ !"#$"%&'( (SJ⒎PO ෆఆظศ ʙୈ ճόΠϯσΟϯάฤʙ ʜʜʜʜʜʜʜʜʜ !"#$"%&') $PEF/BSD Λར༻ͯ͠ (3007: ͷίʔυ࣭Λ্͛Δ ʙୈ ճ։ൃπʔϧͱ࿈ܞʙ ʜʜʜʜʜʜʜʜʜ !"#$"%&'* ͠৽ਓঁࢠ +BWB ϓϩάϥϚ͕ ʰ(SPPWZ ΠϯɾΞΫγϣϯʱΛಡΜͩΒ ʙୈ̍ষɹ͔ʰ(SPPWZ ΠϯɾΞΫγϣϯʱͱग़ձͬͨʙ ʜ !"#$"%&'+ (SBJMT1MVHJO ୳๚ ʙୈ ճ.POHP%#(03.ϓϥάΠϯʙ ʜʜʜʜ ,-./#012$/- ϦϦʔεใʜʜʜʜʜʜʜʜʜʜʜʜʜʜʜ +((6( ̐ίϚອըʮ͙ΔʔͼʔͨΜʯୈ ʜʜ http://grails.jp/g_mag_jp/ ͍·͙͢μϯϩʔυ