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
Scalaつまみ食い - CADDi STUDDi
Search
[email protected]
December 10, 2021
Programming
0
1k
Scalaつまみ食い - CADDi STUDDi
[email protected]
December 10, 2021
Tweet
Share
More Decks by
[email protected]
See All by
[email protected]
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
360
製造業の会計システムをDDDで開発した話
caddi_eng
3
1.8k
【CADDI VIETNAM】Company Deck for Engineers
caddi_eng
0
1.5k
CADDi Company Deck_Global.pdf
caddi_eng
1
460
[ English ] Company Overview for Engineers
caddi_eng
1
8.2k
エンジニア向け会社紹介資料
caddi_eng
17
560k
キャディ株式会社 会社紹介・採用説明資料
caddi_eng
12
1.1M
機械学習チームのモノレポ移行
caddi_eng
0
680
BtoB SaaS を支える 認証認可基盤の設計
caddi_eng
0
1.5k
Other Decks in Programming
See All in Programming
AWS発のAIエディタKiroを使ってみた
iriikeita
1
190
Tool Catalog Agent for Bedrock AgentCore Gateway
licux
7
2.5k
HTMLの品質ってなんだっけ? “HTMLクライテリア”の設計と実践
unachang113
4
2.9k
Amazon RDS 向けに提供されている MCP Server と仕組みを調べてみた/jawsug-okayama-2025-aurora-mcp
takahashiikki
1
110
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
450
時間軸から考えるTerraformを使う理由と留意点
fufuhu
16
4.8k
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
2.4k
テストコードはもう書かない:JetBrains AI Assistantに委ねる非同期処理のテスト自動設計・生成
makun
0
420
Design Foundational Data Engineering Observability
sucitw
3
200
詳解!defer panic recover のしくみ / Understanding defer, panic, and recover
convto
0
250
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
400
CloudflareのChat Agent Starter Kitで簡単!AIチャットボット構築
syumai
2
500
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.2k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Building an army of robots
kneath
306
46k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Thoughts on Productivity
jonyablonski
70
4.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
850
Documentation Writing (for coders)
carmenintech
74
5k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
530
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Transcript
4DBMBͭ·Έ͙͍
4DBMBͬͯͲΜͳݴޠʁ 4DBMBҰൠతͳϓϩάϥϛϯάํ๏Λ؆͔ܿͭΤϨΨϯτ͔ͭܕ҆શͳํ๏Ͱදݱ͢ΔͨΊʹઃܭ͞Εͨ ϞμϯͳϚϧνύϥμΠϜݴޠͰ͢ɻͦΕΦϒδΣΫτࢦݴޠͱؔܕݴޠͷػೳΛεϜʔζʹ౷߹͍ͯ͠·͢ɻ #Z4DBMB%PDVNFOUBUJPO IUUQTEPDTTDBMBMBOHPSHKBUPVSUPVSPGTDBMBIUNM º ͯ͢ͷ͕ΦϒδΣΫτ ɾΫϥε ɾτϨΠτ ͯ͢ͷ͕ؔ
ɾߴ֊ؔ ɾΧϦʔԽ ɾύλʔϯϚονϯά ͋͘·ͰϝΠϯΦϒδΣΫτࢦɺͦ͜ʹؔܕͷΤοηϯεΛ͍͍ײ͡ʹ༥߹͍ͤͯ͞ΔΠϝʔδ ʢݸਓͷײͰ͢ʣ ؔܕ ΦϒδΣΫτࢦ
4DBMBͬͯͲΜͳݴޠʁ w ੩తܕ͚ w ܕਪ w δΣωϦΫε w +BWB7JSUVBM.BDIJOF +7.
্Ͱಈ࡞ w 4DBMB͔Β+BWBͷϓϩάϥϜΛݺͼग़ͤΔ w (BSCBHF$PMMFDUJPO ࠓ4DBMBܥʢYʣͷΛ͠·͢ 4DBMBग़͍ͯΔͷͰ͕͢ɺ݁ߏ༷มΘΓ͍ͯ͠Δͷͱ ࣮ͰऔΓೖΕ͍ͯΔͱ͜ΖΛฉ͔ͳ͍ͷͰʜʢ֤छϥΠϒϥϦ͕ͦΜͳʹରԠͰ͖͍ͯͳ͍ʣ
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
DMBTT ίϯετϥΫλ WBM WBSΛ͚ͭΔͱϝϯόʔʹͳΔ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
DMBTT WBM͕͍͍ͭͯΔͷͰެ։͞Ε͍ͯΔ WBSʹ͢ΔͱՄมʹͳΔ QSJWBUFWBMͱ͢ΕӅ͢͜ͱͰ͖Δ
DMBTT WBM͕͍͍ͭͯΔͷͰެ։͞Ε͍ͯΔ WBSʹ͢ΔͱՄมʹͳΔ QSJWBUFWBMͱ͢ΕӅ͢͜ͱͰ͖Δ
DMBTT WBM͕͍͍ͭͯͳ͍ʢϝϯόʔͰͳ͍ʣ ͷͰࢀরͰ͖ͳ͍
DMBTT ϝιουఆٛ 4DBMBͰ৽͍͠ΦϒδΣΫτΛฦ͢ ͜ͱ͕ଟ͍ ϝιουͷݺͼํ
ίϯύχΦϯΦϒδΣΫτ ͋ΔΫϥεͱಉ͡ॴͰಉ໊ͷΦϒδΣΫτΛఆٛͨ͠ͷ ޓ͍ͷϓϥΠϕʔτϝϯόʔʹΞΫηεͰ͖Δ ϓϥΠϕʔτϝϯόʔʹΞΫηεՄ
ίϯύχΦϯΦϒδΣΫτ ͋ΔΫϥεͱಉ͡ॴͰಉ໊ͷΦϒδΣΫτΛఆٛͨ͠ͷ ޓ͍ͷϓϥΠϕʔτϝϯόʔʹΞΫηεͰ͖Δ 6TFSBQQMZΛݺͼग़͍ͯ͠Δ OFXͰͳ͍͜ͱʹҙ 4DBMBͷBQQMZͱVOBQQMZͱ͍͏ϝιου໊ লུͯ͠ݺͼग़͢͜ͱ͕Ͱ͖Δ ͜ͷྫͰ6TFSBQQMZ lUBOJHVDIJz
ͱಉ͡ҙຯ
DBTFDMBTT ৭ʑศརͳͷΛੜͯ͘͠ΕΔ ɾίϯύχΦϯΦϒδΣΫτ͕ੜ͞ΕΔ ɾϑΟʔϧυͷ֤߲͕WBMએݴͱಉ͡ҙຯΛ࣋ͭ ɾDPQZϝιουΛ࣋ͭ ɾͰͷൺֱ͕ͯ͢ͷϑΟʔϧυ໊ͷ͕Ұக͢Δ͔Ͳ͏͔Ͱผ͞ΕΔ ɾNBUDIͰ༻Ͱ͖Δʹͯ͘͠ΕΔ
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
4FRྻΛද͢ίϨΫγϣϯ BQQMZϝιουΛݺͼग़͍ͯ͠Δ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
4FRྻΛද͢ίϨΫγϣϯ ୈҾͷཁૉΛऔಘɻൣғ֎ͳΒୈҾͷؔΛ࣮ߦ ୈҾɿ*OU*OUͷؔ Ҿͷ*OUఴࣈΛද͕͢ࠓճৗʹΛฦ͢ͷͰΘͳ͍ͷͰʮ@ʯ
4FRͷNBQ NBQϝιουͰද
4FRͷGMBUUFO NBQϝιουͰද fl BUUFOͰೖΕࢠΛͳͯ͘͠4FR<4USJOH>ʹ
4FRͷGMBU.BQ NBQϝιουͰද fl BUUFOͰೖΕࢠΛͳͯ͘͠4FR<4USJOH>ʹ NBQ fl BUUFO fl BU.BQͰʂ
GPSࣜͰΑΓݟ͘͢ NBQϝιουͰද fl BUUFOͰೖΕࢠΛͳͯ͘͠4FR<4USJOH>ʹ NBQ fl BUUFO fl BU.BQͰʂ
GPSࣜೖΕࢠʹͳͬͨNBQ fl BU.BQͷ γϯλοΫεγϡΨʔ
0QUJPO<"> ͕͋ͬͨΓͳ͔ͬͨΓΛදݱ͢Δܕ ɾ͕͋Δˠ4PNF<"> ɾ͕ͳ͍ˠ/POF 0QUJPO<4USJOH>Λ࡞ͬͯΈΔ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
0QUJPO<">ɿཁૉͷऔಘ ͕͋ͬͨΓͳ͔ͬͨΓΛදݱ͢Δܕ ɾ͕͋Δˠ4PNF<"> ɾ͕ͳ͍ˠ/POF 0QUJPO<4USJOH>Λ࡞ͬͯΈΔ ΛऔΓͩͯ͠ΈΔ ύλʔϯϚονͰ͍͚Δ
0QUJPO<">ɿNBQͰม ͕͋ͬͨΓͳ͔ͬͨΓΛදݱ͢Δܕ ɾ͕͋Δˠ4PNF<"> ɾ͕ͳ͍ˠ/POF 0QUJPO<4USJOH>Λ࡞ͬͯΈΔ NBQϝιουͰม fl BU.BQ͋ΔΑ GPSࣜ͑ΔΑ
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
0QUJPOܕͷίϯϏωʔγϣϯ 0QUJPOܕΛෳΈ߹Θͤͯॲཧ͢Δํ๏ΛΈͯΈ·͢ ͓ ࣍ͷσʔλߏ͔ΒࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલͱͱʹग़ྗͤΑ ग़ྗɿ lKJSPz lIBOBz
͓ʮWEB+DB PRESS Vol.112 ࣮ફScalaʯΑΓ
BWFSBHFϝιουΛߟ͑Δ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
BWFSBHFϝιουΛߟ͑ΔʢJGࣜฤʣ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ ࠃޠӳޠΛडߨͨ͠Γ͍ͯ͠ͳ͔ͬͨΓ͢ΔͷͰ0QUJPOͰදݱͰ͖ͦ͏ ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
BWFSBHFϝιουΛߟ͑Δʢ0QUJPOฤʣ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ #FGPSFJGࣜ "GUFS0QUJPONBQ fl BU.BQ ࢀߟɿWEB+DB
PRESS Vol.112 ࣮ફScala
BWFSBHFϝιουΛߟ͑ΔʢGPSࣜʣ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊ໊ͯલ ͱͱʹग़ྗͤΑ #FGPSFJGࣜ "GUFS0QUJPONBQ fl BU.BQ "GUFSΛGPSࣜͰॻ͘
ࢀߟɿWEB+DB PRESS Vol.112 ࣮ફScala
͓·͚ɿʹՃ͑ͯฏۉҎ্ͷΈग़ྗ͍ͨ͠߹ ࠃޠͱӳޠΛडߨͨ͠ੜెʹ͍͚ͭͯͩɺ ࠃޠͱӳޠͷฏۉΛٻΊͯ ͦΕ͕Ҏ্ͷ߹ʹ ໊લͱͱʹग़ྗͤΑ GPSࣜͰ͜Μͳ;͏ʹॻ͚Δ ࠨͷGPSࣜҎԼͷγϯλοΫεγϡΨʔ ࢀߟɿWEB+DB PRESS Vol.112
࣮ફScala
͓͠ͳ͕͖ w DMBTT ίϯύχΦϯΦϒδΣΫτ DBTFDMBTT w ඪ४ϥΠϒϥϦ͔Β͍͔ͭ͘հ w 4FR 0QUJPO
w 4DBMBͷνΧϥͷยྡྷ w 0QUJPOܕͷίϯϏωʔγϣϯ w ߴΧΠϯυܕ 4DBMBͷجຊ ʢׂͱ୶ʑͱਐΊΔύʔτʣ 4DBMBͬΆ͞ͷհ ʢϝΠϯίϯςϯπʣ
ߴΧΠϯυܕʜͷલʹ 4DBMBʹ৭ʑͳܕ͕͋Γ·͢ΑͶʢಥʣ *OU 4USJOH .Z$MBTT
0QUJPO<">ͱ͔4FR<">ͱ͔͋Γ·͢ΑͶ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> ฒߦॲཧͷͨΊͷܕ 4VDDFTTͱ'BJMVSF͕͋Δ
0QUJPO<">ͱ͔4FR<">ͱ͔͋Γ·͢ΑͶ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> ֨ࢠ͕۩ମతͳܕ
NBQͱ͔GMBU.BQͬͯϝιου͋Γ·͢ΑͶ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> EFGNBQ<#> G"# 0QUJPO<#>
EFG fl BU.BQ<#> G"0QUJPO<#> 0QUJPO<#> EFGNBQ<#> G"# 4FR<#> EFG fl BU.BQ<#> G"4FR<#> 4FR<#> EFGNBQ<#> G"# 'VUVSF<#> EFG fl BU.BQ<#> G"'VUVSF<#> 'VUVSF<#> ˞'VUVSFNBQ fl BU.BQͷγάωνϟͪΐͬͱӕ͍͍ͭͯ·͢
ͳΜ͔γάωνϟࣅͯͳ͍Ͱ͔͢ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> EFGNBQ<#> G"# 0QUJPO<#>
EFG fl BU.BQ<#> G"0QUJPO<#> 0QUJPO<#> EFGNBQ<#> G"# 4FR<#> EFG fl BU.BQ<#> G"4FR<#> 4FR<#> EFGNBQ<#> G"# 'VUVSF<#> EFG fl BU.BQ<#> G"'VUVSF<#> 'VUVSF<#> 0QUJPO<"> 4FR<"> 'VUVSF<">ΛଋͶͨ֓೦ɺੜΈग़ͤͦ͏͡Όͳ͍Ͱ͔͢ʁ
)FMMP IJHIFSLJOEFEUZQFʢߴΧΠϯυܕʣ *OU 4USJOH .Z$MBTT 0QUJPO<"> 4FR<"> 'VUVSF<"> EFGNBQ<#> G"#
0QUJPO<#> EFG fl BU.BQ<#> G"0QUJPO<#> 0QUJPO<#> EFGNBQ<#> G"# 4FR<#> EFG fl BU.BQ<#> G"4FR<#> 4FR<#> EFGNBQ<#> G"# 'VUVSF<#> EFG fl BU.BQ<#> G"'VUVSF<#> 'VUVSF<#> '<"> EFGNBQ<#> G"# '<#> EFG fl BU.BQ<#> G"'<#> '<#>
ߴΧΠϯυܕΛఆٛͯ͠ΈΔ 0QUJPO 4FR 'VUVSFΛ·ͱΊΔ֓೦͕ ͭ͘Εͨ ͜ΕΒΛ)JHIFS,JOEͷΠϯελϯεͱͯ͠ ఆٛͰ͖ͨ ͜Ε͕ϑΝϯΫλʔɺϞφυͳͲͷ֓೦ʹͭͳ͕͍ͬͯͨΓ͠·͢ Ͱɺ͜ΕͳʹʁͳΜͷʹཱͭͷΑʁ·ͨผͷػձʹͰʜ
·ͱΊ w 4DBMBΛͬ͘͟Γͭ·Έ͙͍ͯ͠Έ·ͨ͠ w ·ͩ·ͩղઆͰ͖͍ͯͳ͍ػೳ֓೦͕ͨ͘͞Μ͋Γ·͢ w .BQ4FRͷΠϯελϯεΛؔͱͯ͠͏ w ܕΫϥε w
JNQMJDJUDMBTTʹΑΔطଘͷܕͷ֦ு w FUDʜ w 4DBMBॻָ͍͍͍ͯͯ͠৭ʑֶΔݴޠͳͷͰੋඇࢼͯ͠Έ͍ͯͩ͘͞ʂ