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
Rust, in contrast to Ruby
Search
condor
November 15, 2016
Technology
0
800
Rust, in contrast to Ruby
2016/11/15のginza.rbにて発表した時の資料。
condor
November 15, 2016
Tweet
Share
More Decks by condor
See All by condor
RestfulWebService-ginza.rb-20180821
condor
0
24
Other Decks in Technology
See All in Technology
AWS re:Invent2025最新動向まとめ(NRIグループre:Cap 2025)
gamogamo
0
160
I tried making a solo advent calendar!
zzzzico
0
140
AI with TiDD
shiraji
1
340
Scrum Guide Expansion Pack が示す現代プロダクト開発への補完的視点
sonjin
0
520
善意の活動は、なぜ続かなくなるのか ーふりかえりが"構造を変える判断"になった半年間ー
matsukurou
0
360
BidiAgent と Nova 2 Sonic から考える音声 AI について
yama3133
2
150
AWS re:Inventre:cap ~AmazonNova 2 Omniのワークショップを体験してきた~
nrinetcom
PRO
0
130
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
140
1万人を変え日本を変える!!多層構造型ふりかえりの大規模組織変革 / 20260108 Kazuki Mori
shift_evolve
PRO
6
1k
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
280
Master Dataグループ紹介資料
sansan33
PRO
1
4.2k
Java 25に至る道
skrb
3
190
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
0
51
Discover your Explorer Soul
emna__ayadi
2
1k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
45
Statistics for Hackers
jakevdp
799
230k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
110
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Speed Design
sergeychernyshev
33
1.5k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
67
Facilitating Awesome Meetings
lara
57
6.7k
Transcript
3VTUݴޠʹ͍ͭͯ
ࠓ͢͜ͱ w 3VTU͕͍͔ʹ3VCZͱҧ͏͔ w 3VTU໘ന͍Α
ࣗݾհ w !FMDPOEPS w 3BJMTΤϯδχΞ Yͷࠒ͔Β w ͜͜΄΅3BJMT͕ϝγͷछ w
ࠓͷݴޠ3VTUʹ͠·ͨ͠
3VTUͱ
–rust-lang.org (https://www.rust-lang.org/en-US/) “Rust is a systems programming language that runs
blazingly fast, prevents segfaults, and guarantees thread safety. ”
ओཁͳಛ w ڧ͍ܕͷίϯύΠϧܕΦϒδΣΫτࢦݴޠ w ܕ༷ࣜɿOPNJOBMUZQJOH MJLF$ +BWBʜ w ϥϯλΠϜෆཁͷόΠφϦΛग़ྗ
MJLFHPMBOHʜ w $ͱͷߴޓੑ w ίϯύΠϧ࣌ͷਂ͍Ϩϕϧͷߏจݕࠪ
ओཁͳಛ w ΤίγεςϜ w DSBUFJPͱ͍͏αʔϏε w DSBUFͱ3VCZͰ͍͏HFNͷΑ͏ͳͷ w DBSHPͱ͍͏ϢʔςΟϦςΟπʔϧ w
FMJYJSͷNJYʹࣅͯΔɺΑ͏ͳʜ
3VCZͱൺֱͯ͠ w ࣮ߦ༷ࣜͷҧ͍ w ίϯύΠϧWTΠϯλϓϦλ w ϥϯλΠϜෆཁWTϥϯλΠϜඞཁ w ܕ༷ࣜOPNJOBMUZQJOHWTEVDLUZQJOH
3VCZͱൺֱͯ͠ w ਂ͍Ϩϕϧͷߏจݕࠪͷ༗ແ ˠίʔυΛॻ͍͔ͯΒಈ͘·Ͱͷϓϩηεʹࠩ
ίʔυΛॻ͍͔ͯΒಈ͘·Ͱ 3VCZͷ߹ ίʔσΟϯά σόοά 3VTUͷ߹ ίʔσΟϯά σόοά ίϯύΠϥͱ֨ಆ
–elcondor “ʮFinishedʯͱcargoίϚϯυ͕ฦ͖ͬͯͨͳ Βο!ͦͷ࣌εσʹσόοά͋Β͔ͨऴΘͬͯ ͍ΔΜͩο!” ˞༷ͨͩ͠όάআ͘
3VCZͱͷؔ w l5VSCP3BJMTXJUI3VTU IUUQSVCZLBJHJPSHQSFTFOUBUJPOT XZDBUT@DIBODBODPEF
3VCZͱͷؔ w )FMJY3VCZޓϨΠϠʔ w IUUQTHJUIVCDPNSVTUCSJEHFIFMJY
3VCZͱͷؔ w 3VCZͷӨڹ w (VJME
3VCZͷӨڹ https://twitter.com/_ko1/status/773327911118004224
ݴޠ༷ EVDLUZQJOH TUSVDUVSBM UZQJOH OPNJOBMUZQJOH ੩తܕ HPMBOH $ +BWB
3VTU ಈతܕ 1FSM 3VCZ
͖͢ͱࢥͬͨ 3VTUͷಛ
IFBQΛ͋·ΓΘͳ͍ w جຊతʹมTUBDLʹ֬อ w OFXͱ͔΄ͱΜͲ͠ͳ͍ɻͳͥͳΒ༧ΊελοΫʹ ֬อ͞Ε͍ͯΔ͔Β w IFBQʹஔ͘͜ͱͰ͖Δ w #PY
3$ "3$ w ཁૉ͕ಈతͳͷIFBQʹ࣮ମ͕͋ͬͯελοΫ ্͔Βࢀর͢Δܗ 7FD )BTI.BQʜ
͍ w OBUJWFDPNQJMF͢ΔΜ͔ͩΒવ w ͦͦϩʔΧϧมͩͱIFBQΘͳ͍
͞Λࢼ͢ w KTPOΛQBSTF͢ΔϥΠϒϥϦΛ࡞ͬͯΈͨ w 3VCZͷର߅അ+40/ͱPK
݁Ռ ݴޠ ϥΠϒϥϦ ॴཁ࣌ؒ OTFD 3VTU ࣗ࡞QBSTFS 3VCZ PK
+40/
ϕϯνϚʔΫʹ͍ͭͯ w 3VTUඪ४Ͱϕϯνػೳ͕͍͍ͯΔ w ࠓճͷܭଌͰ༻ w ܁Γฦ͠Λదͳճͬͯ͘ΕΔ w ඪ४ภࠩग़Δ
TUSVDUͱUSBJU w TUSVDU w σʔλܕͱৼΔ͍Ληοτʹͨ͠ͷ w ͍ΘΏΔΫϥε w USBJU w
ৼΔ͍ͷఆٛͯ͋͠Δ͕࣮ͳͯ͘ྑ͍ͷ w +BWBͰ͍͏JOUFSGBDF 4XJGUͰ͍͏QSPUPDPM w σϑΥϧτ࣮ఏڙͰ͖Δ
TUSVDUͱUSBJU w TUSVDUܧঝͰ͖ͳ͍ w JOIFSJUBODFΑΓDPNQPTJUFͱ͍͏͜ͱΒ͍͠ w USBJUܧঝͰ͖Δ w TUSVDUαΠζ͕ܾ·͍ͬͯΔ͕USBJUܾ·Β ͳ͍
طଘTUSVDUͷػೳՃ w ৽͍͠USBJUΛ࡞ͬͯͦΕΛಡΈࠐΉ w USBJUଆͰɺطଘΫϥεͰ͋ͬͯɺͦͷUSBJUʹ ४ڌ͘͢ϝιουΛఏڙ͢Δ͜ͱ͕Մೳ w ࣗͷΫϥεطଘUSBJUʹ४ڌͤ͞Δ͜ͱ͕ Ͱ͖Δ w
طଘΫϥεͷطʹ४ڌ͍ͯ͠ΔUSBJU࣮ͷ্ॻ͖ Ͱ͖ͳ͍
طଘTUSVDUͷػೳՃ طଘTUSVDU ࣗݾ࣮TUSVDU طଘUSBJU º ˓ ࣗݾ࣮ USBJU ˓ ˓
طଘTUSVDUͷػೳՃ
USBJU༻্ͷ੍ݶ w มΛUSBJUͰड͚Α͏ͱ͢ΔͱΤϥʔ w ؔͷԾҾϩʔΧϧม w ม͕TUBDLʹ͍Δ͜ͱʹ༝དྷ͢ΔΆ͍ w ݱࡏͷCFUB
Ͱ͏গ͍͘͢͠ͳΔΒ͍͠
Մมੑ w 3VTUͷม௨ৗJNNVUBCMF w NVUBCMFʹ͢ΔʹɺมએݴͰNVUΛ͚ͭΔ w NVUʹɺʮࢦ͍ͯ͠Δ͕มΘΔʯʮࢦͯ͠ ͍ΔมΘΒͳ͍͕ͦͷத͕มΘΔʯͷೋ ͕ͭ͋Δ͕ɺ͍ͣΕNVUͱͯ͠ѻ͏ w
ʮεϨουؒͰ༧֎ͷมԽ͕ʯʹରԠ ͢ΔతͳͷͰ্ه྆ऀͷ۠ผͷඞཁͳ͍
Մมੑ
ύλʔϯϚονϯά w ࠷ۙͷϞμϯͳݴޠʹ͋Δͱ͍͏ΞϨ w 3VTUͰೖͱরձΛಉ࣌ʹͰ͖ΔλΠϓ w &MJYJSͷͦΕͱ͍͔ۙ ˞ݸਓͷײͰ͢
ύλʔϯϚονϯά w ѹతʹFOVNͰ͏ w ࠓͷOVMM҆શFOVNͷύλʔϯϚονϯά Ͱѻ͏ͷ͕3VTUͷྲّྀ w ͷ&JUIFSతͳͷ SZ w
߹Λਚ͍ͯ͘͠ͳ͍ͱίϯύΠϥౖ༷͕ܹ w ྻڍͨ͠Ҏ֎ͷͷͷ߹z@zͰ݅Λड͚Δ
ύλʔϯϚονϯά
ύλʔϯϚονϯά w ྑ͞ w ͢ΜͳΓֻ͚ͯ৺ྑ͍ w ࠓͻͱͭ w ωετ͕࣌ʑࡍݶͳ͘ਂ͘ͳͬͯඍົ w
ύλʔϯϚον͢Δͱωετ֊͕Α͘ਐΉ w ೖΕࢠʹͳΔͱ͞Βʹυϯ
ॴ༗ݖ
–ඇ࣮ࡏঁࢠߴੜɺۙॴͷϚοΫʹͯ l3VTUͷ͜ͱΛޠΔਓɺΈΜͳ ʮॴ༗ݖ͕ΠΠʯͬͯݴ͏ΑͶz
ॴ༗ݖ w 3VTUॳֶऀ͕ίϯύΠϧΛ௨ͤͳ͍ݪҼ w ֶशίετతʹਏ͍ w ׳ΕΔͱͱͯศརɻཧղͯ͠ίʔυΛॻ͚Δ ͱେมؾ࣋ͪྑ͍ɻ
؆୯ͳྫ
आ༻ w ॴ༗͕͋ΔͳΒआ༻͋Δɺͱ͍͏ w ظݶΛͬͨॴ༗ w ظݶʹؔͷείʔϓ ҾͰͷࢀর ·ͨ ϒϩοΫ
आ༻
आ༻ w 3VTUίʔυΛॻ͍͍ͯ͘ͱඞવతʹଟ༻͢Δ w TUSVDUͷϝιουఆٛͰɺΠϯελϯεϝιο υͳΒୈҰҾTFMG w ͜Εͬͯआ༻͡ΌΜ
ॴ༗ݖ w εϨουͷத·Ͱਫ਼ࠪͯ͠ΤϥʔΛ ग़ͯ͘͠ΕΔ
ॴ༗ݖ w ฒߦॲཧ࣮࣌ʹҖྗΛൃش w Ͱશ෦ͷόάΛ͛ΔΘ͚Ͱͳ͍ w σουϩοΫ w ༷όH SZ
$ͱͷ࿈ܞ w ׂͱָ w $Λݺͼग़͢TIBSFEMJCSBSZΛϦϯΫ͢Ε0, w $͔Βݺͼग़͞ΕΔؔʹଐੑOP@NBOHMFΛ͚ͭͯ Ϗϧυ w HPMBOHͱҧ͍ɺϔομϑΝΠϧ࡞Εͳ͍
w ϚΫϩવαϙʔτ֎ ˠ$ޓϨΠϠͰٵऩ͢Δ͔͠
$ͱͷ࿈ܞ w $ͷؔVOTBGFϒϩοΫͰғΉඞཁ͕͋Δ w VOTBGFͳॴΛ༰қʹಛఆՄೳͰศར w ғ·ͳ͍ͱίϯύΠϥʹౖΒΕΔ w $ͱ࿈ܞͰ͖Δ͕ɺ$Λ͏ͷΛ࠷ݶʹ ͠Α͏ɺͱ͍͏ؾʹͳΔΈ
αϯϓϧίʔυ
ݸਓͷײ w 3VTUΛͬͯɺීஈ3VCZͰίʔυΛॻ͍͍ͯΔ ͱҙࣝ͠ͳ͍͜ͱʹ͍ͭͯͷݟΛಘͨ w Ͳ͏ͤίϯύΠϧݴޠͰ͋Ε͜͜·ͰνΣο Ϋͯ͠΄͍͠ΑͶɺͱ͍͏͜ͱ͕͖ͪΜͱνΣο Ϋ͞Ε͍ͯΔ w ૣ͘QSPEVDUJPODPEFॻ͖͍ͨ
·ͱΊ w 3VTU3VCZͱൺΔͱׂͱਖ਼ରͷݴޠ͚ͩͲ ͦΕ͕݁ߏ໘ന͍͔ΒΈΜͳΖ͏Α