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
新しく言語を学ぶ私のやり方 / My way of learning a new lang
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
linyows
January 22, 2019
Programming
3
1.7k
新しく言語を学ぶ私のやり方 / My way of learning a new lang
Jan 22, 2019 / Fukuoka.rsでLT発表した資料
linyows
January 22, 2019
Tweet
Share
More Decks by linyows
See All by linyows
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
190
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
800
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
410
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
590
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
1
480
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1.1k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
590
研究の再現性を高める 仕組みをGoでつくる / Creating a system to improve the reproducibility of research using go
linyows
1
320
奥が深いメールのシステム / The depth of Email system
linyows
4
750
Other Decks in Programming
See All in Programming
Data-Centric Kaggle
isax1015
2
780
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
150
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
330
Unicodeどうしてる? PHPから見たUnicode対応と他言語での対応についてのお伺い
youkidearitai
PRO
1
2.6k
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
1
1k
今から始めるClaude Code超入門
448jp
8
9.1k
MUSUBIXとは
nahisaho
0
140
QAフローを最適化し、品質水準を満たしながらリリースまでの期間を最短化する #RSGT2026
shibayu36
2
4.4k
AtCoder Conference 2025
shindannin
0
1.1k
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
310
AIによる開発の民主化を支える コンテキスト管理のこれまでとこれから
mulyu
3
500
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
3.9k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
380
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
740
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
53
How to Ace a Technical Interview
jacobian
281
24k
Building Applications with DynamoDB
mza
96
6.9k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
110
Raft: Consensus for Rubyists
vanstee
141
7.3k
エンジニアに許された特別な時間の終わり
watany
106
230k
Transcript
৽͘͠ݴޠΛֶͿࢲͷΓํ 5PNPIJTB0EB(.01FQBCP *OD 'VLVPLBST+BO
Fukuoka.rs #1 !MJOZPXT CMPHUPNPIJTBPEBDPN (.0ϖύϘ ϓϦϯγύϧΤϯδχΞ 2
Fukuoka.rs #1 3 8&# %#13&44WPM )BTIJ$PSQ7BVMUͷهࣄدߘ Ԭͷ(PMBOHίϛϡχςΟ 'VLVPLBHPͷओ࠵ͷਓ MJOVYϢʔβͷ໊લղܾΛ (JU)VC͔ΒϚοϐϯά͢Δ
ιϑτΣΞͷ։ൃ
Fukuoka.rs #1 QSJOUMO )FMMP3VTUBDFBOT 4
Fukuoka.rs #1 3VTUͱࢲ w /P3VOUJNFɺ/P($ ͢͝ʔʔʔ͍ w ͳ͔ͳ͔ίϯύΠϧ௨Βͳ͍ͬͯฉ͘ w
(PͬͯͯࠔΔ͜ͱͳ͍ΑʁԿ͕خ͍͠ͷʁ w ͣͬͱ͜ͷௐࢠͳͷͰɺൃදυϦϒϯͰษڧΛ։࢝͠Α͏ʂ w ΜͰɺؾ͍ͮͨΒਖ਼݄ऴΘͬͯษڧձͷिؒલ 5
Fukuoka.rs #1 ͋͞ษڧΛ࢝ΊΔͧ w ͱΓ͋͑ͣڥͷߏஙʢ3VTUVQೖΕͨΓɺWJNQMVHJO୳ͨ͠Γʜʣ w ͱΓ͋͑ͣ3VTUͷ5IF#PPLΛಡΈ࢝ΊΔ w ͙͢ʹ಄ʹೖͬͯ͜ͳ͘ͳͬͨͷͰखΛಈ͔࢝͠ΊΔ w
ϦϙδτϦ࡞ͬͯࣸܦHJUIVCDPNMJOZPXTSVTUMFBSOJOH w ͖ͦͯͯ͠ɺHJUIVCDPNͰ⭐ͷࢁ͍ͭͨ3VTUϦϙδτϦΛோΊΔ w ऴྃʜ 6
Fukuoka.rs #1 aϞνϕʔγϣϯ͕ଓ͔ͳ͍κ 7
Fukuoka.rs #1 ϞνϕʔγϣϯΛ୳ཱྀ͢ w Α͏͠ɺϞνϕʔγϣϯΛͻͶΓग़ͧ͢ w 3VTUͬͯԿ͕͍͍ͷʂʢ࠶ʣΦϑΟγϟϧαΠτʹ͋Δͣ w ͔͍ͭͲ͜ΖͲ͜ʁʁʢ࣮ʣ͜ΕɺΦϑΟγϟϧαΠτʹ͋Δͣ w
ࣗͩͬͨΒͲ͏͏ 8
Fukuoka.rs #1 3VTUͷಛ w ͱͯߴͰϝϞϦޮ͕Α͍ͷͰϋΠύϑΥʔϚϯεɺͦͯ͠ΈࠐΈ ͱ͔؆୯ʹଞݴޠͱ౷߹Ͱ͖Δ w ๛ͳܕͱ0XOFSTIJQϞσϧʹΑΓϝϞϦεϨου͕҆શͰ͋Δ͜ͱΛ อূ͢Δɺ͔ͩΒଟ͘ͷछྨͷόάΛίϯύΠϥͰഉআͰ͖Δ w
๛ͳυΩϡϝϯτɺݡ͍ίϯύΠϥɺ౷߹͞ΕͨύοέʔδπʔϧͰੜ ࢈ੑߴ͍ 9
Fukuoka.rs #1 3VTUͷΩϟονίϐʔ ৴པੑޮੑͷߴ͍ιϑτΣΞΛ ୭͕ॻ͚ΔྗΛ༩͑ΔΑʂ ·͔͡ʜ 10
Fukuoka.rs #1 3VTUWT(P 11 Rust Go Performance Great Good Simple
and Readable Code OK Great Concurrency Yes Yes Forcing error checking Yes No
Fukuoka.rs #1 ϚγϯϦιʔεΛΒ͍ͣΔ·Ͱ ύϑΥʔϚϯεΛॏࢹ͍ͨ͠ͷͳΒ3VTUʂ 12
Fukuoka.rs #1 3VTUͷ͔͍ͭͲ͜Ζ w ύϑΥʔϚϯεॏࢹͰ҆શͳιϑτΣΞͷ։ൃͰ͋ΕҰͰ͠ΐ͏ʂ ʢύϑΥʔϚϯεͬͯ͋ͱ͔Βཁٻ͞ΕΔʁʣ w 3VTUͰͦΕͳΓʹੜ࢈ੑߴΊΔʹ࿅͕ඞཁͦ͏ͳͷͰɺڭҭମ੍͋ Δ։ൃɺ·ͨख़࿅ूஂͰͷ։ൃ w
ະख़ऀɺ044ͱ͔ɺԶಘ$-*πʔϧͱ͔ͽͬͨΓͳͷͰʁ 13
Fukuoka.rs #1 ఆΊͨΰʔϧ w ·ͣಈ͘ͷΛ࡞Ζ͏ w ࣮ͷਖ਼͠͞ɺεϚʔτ͞ؾʹ͠ͳ͍ w ࣮͍ͯ͘͠தͰɺͭ͗ʹͭͳ͕Δ՝Λݟ͚ͭΔ w
ΰʔϧΛ໌֬ʹ͢ΔͱΔ͜ͱ͕ఆ·ͬͯΔؾ͕ग़Δ w Α͠ʂʂʂʂʂʂʂʂʂʂʂ 14
Fukuoka.rs #1 15
Fukuoka.rs #1 ࡞ͬͨ$-* w (FP*1ͷཧใΛ*1Ͱݕࡧͯ͠දࣔ͢Δ͘Μ IUUQTHJUIVCDPNMJOZPXTHMJQ w XFFLͰಈ͘ͷͰ͖ͨʂ w ͦͯ͠ɺDSBUFTJPͰύοέʔδΛެ։Ͱ͖ͨʂ
16
Fukuoka.rs #1 ͭ·͍ͣͨͱ͜Ζ w ϑΝΠϧׂͨ͠ࡍͷNPEVMFͷ֓೦ w ϥΠϒϥϦͱ$-*ͷ྆ํΛఏڙ͢ΔύοέʔδͷσΟϨΫτϦߏ w ΤϥʔνΣοΫڧ੍ͷͨΊͷΤϥʔॲཧ w
VOXSBQ͔ͬΓʹͳͬͯɺԿͳͷ͜Εʁʁʁ w JGͷதͰNVUBCMFͳมߋ৽ͰౖΒΕΔ 17
Fukuoka.rs #1 18
Fukuoka.rs #1 ݟ͖͑ͯͨ՝ w ςετॻ͍ͯͳ͍ͷʢDPWFSBHFͱΔͧʣ w ͏·͘ॻ͚ͯͳ͍ͷʢHFOFSJDTUSBJU͑៉ྷʹͳΔͣʣ w ͦͦɺͬͯΔ͜ͱ͋ͬͯΔʁʁ w
ʹDBSHPJOTUBMM͡Όͳͯ͘$SPTT$PNQJMJOH͓͖͍ͯͨ͠Μ w ฒߦͯ͠ɺΓͯͳ͍ࣝΛʮ5IF#PPLΛཏʯʮຊΛಡྃʯͰಘΔ 19
Fukuoka.rs #1 ։ൃυϦϒϯͷԿ͕ྑ͍͔ w ࣗ͝ͱʹͳΔͷͰ࠳͠ʹ͍͘ͳͯͬͯ͠·͏ w ͠ΐ͏ͳ͍͜ͱͰΑͭ͘·ͣ͘ϑϥετϨʔγϣϯཷ·Δ w ମܥతʹֶͿҙཉ͕༙͘ʂ w
ͬͨ݁Ռ͕Δ͍ͷ͕ग़དྷͯஏ͔͍ͣ͠ w ͍ίʔυΛͪΌΜͱ͢Δҙཉ͕༙͘ʂ- 20
Fukuoka.rs #1 aͳΜ͔ͩΜͩ݁Ռతʹྑ͍ ☺ 21
Fukuoka.rs #1 ·ͱΊ ৽͘͠ݴޠΛֶͿͨΊʹҎԼͷखॱͰ͢͢Ί·ͨ͠ɻ w ·ֶͣͿཧ༝Λ୳͢ɺͳ͚Ε࡞Δ w ։ൃυϦϒϯͰखΛಈ͔͠ͳ͕ΒֶͿʢ໌֬ͳΰʔϧʣ w ڵຯ͕༙͍͖ͯͨΒମܥతʹֶͿ
w ͦͯ͠·ͨ࡞Δʂ 22
Fukuoka.rs #1 'VLVPLBSTͷΈͳ͞Μ 3VTUڭ͍͍͍͍͑ͯͩ͘͞ ίʔυϨϏϡʔر ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ 23
Fukuoka.rs #1 3FGFSFODFT w 5IF#PPLIUUQTEPDSVTUMBOHPSHCPPL w 3VTUIUUQTXXXSVTUMBOHPSH w 4IPVME*3VTU PS4IPVME*(PIUUQTDPEFCVSTUJPTIPVMEJSVTUPSTIPVMEJ
HPBFFB w 3JQ(SFQIUUQTHJUIVCDPN#VSOU4VTIJSJQHSFQ w #BUIUUQTHJUIVCDPNTIBSLEQCBU w ϓϩάϥϛϯά3VTUIUUQTXXXPSFJMMZDPKQCPPLT 24