$30 off During Our Annual Pro Sale. View Details »
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
1.1k
Scalaつまみ食い - CADDi STUDDi
[email protected]
December 10, 2021
Tweet
Share
More Decks by
[email protected]
See All by
[email protected]
事業状況で変化する最適解。進化し続ける開発組織とアーキテクチャ
caddi_eng
1
12k
キャディでのApache Iceberg, Trino採用事例 -Apache Iceberg and Trino Usecase in CADDi--
caddi_eng
0
490
製造業の会計システムをDDDで開発した話
caddi_eng
3
2k
【CADDI VIETNAM】Company Deck for Engineers
caddi_eng
0
1.7k
CADDi Company Deck_Global.pdf
caddi_eng
1
580
[ English ] Company Overview for Engineers
caddi_eng
1
9.7k
エンジニア向け会社紹介資料
caddi_eng
17
630k
キャディ株式会社 会社紹介・採用説明資料
caddi_eng
12
1.3M
機械学習チームのモノレポ移行
caddi_eng
0
710
Other Decks in Programming
See All in Programming
MAP, Jigsaw, Code Golf 振り返り会 by 関東Kaggler会|Jigsaw 15th Solution
hasibirok0
0
240
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
6
2.2k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
110
エディターってAIで操作できるんだぜ
kis9a
0
730
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
150
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
150
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
3
720
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
140
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
160
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
160
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
8
5.6k
Microservices rules: What good looks like
cer
PRO
0
1.4k
Featured
See All Featured
Fireside Chat
paigeccino
41
3.7k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
How STYLIGHT went responsive
nonsquared
100
6k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Scaling GitHub
holman
464
140k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Code Reviewing Like a Champion
maltzj
527
40k
What's in a price? How to price your products and services
michaelherold
246
13k
Mobile First: as difficult as doing things right
swwweet
225
10k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Into the Great Unknown - MozCon
thekraken
40
2.2k
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ॻָ͍͍͍ͯͯ͠৭ʑֶΔݴޠͳͷͰੋඇࢼͯ͠Έ͍ͯͩ͘͞ʂ