Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
新しく言語を学ぶ私のやり方 / My way of learning a new lang
Search
linyows
January 22, 2019
Programming
1.7k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
新しく言語を学ぶ私のやり方 / My way of learning a new lang
Jan 22, 2019 / Fukuoka.rsでLT発表した資料
linyows
January 22, 2019
More Decks by linyows
See All by linyows
GoとClickhouseで作るRAGアプリ / Building RAG Application with Go and Clickhouse
linyows
1
120
Kubernetesを使わない環境にもCloud Nativeなデプロイを実現する / Enabling Cloud Native deployments without the complexity of Kubernetes
linyows
3
830
Protocol Buffersの型を超えて拡張性を得る / Beyond Protocol Buffers Types Achieving Extensibility
linyows
0
310
研究開発と実装OSSと プロダクトの好循環 / A virtuous cycle of research and development implementation OSS and products
linyows
1
990
コードジェネレーターで 効率的な開発をする / Efficient development with code generators
linyows
0
510
研究を支える拡張性の高い ワークフローツールの提案 / Proposal of highly expandable workflow tools to support research
linyows
0
730
非コンテナ環境において宣言的Deploymentを手軽に実現する / Declarative deployment in non-container environments
linyows
1
650
メール送信サーバの集約における透過型SMTP プロキシの定量評価 / Quantitative Evaluation of Transparent SMTP Proxy in Email Sending Server Aggregation
linyows
0
1.3k
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
720
Other Decks in Programming
See All in Programming
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
350
AI Agent時代のリアーキテクチャ戦略と実践
hokaccha
9
4.4k
手動確認はもう限界 〜XCUITestでCustom URL Schemeの遷移を起動種別ごとに自動テストする〜 / Testing Custom URL Schemes with XCUITest
otouto
0
270
From 6 People Classroom Meetup to 100 People Regional Conference / FOSS4G Hiroshima 2026
furukawayasuto
0
200
数年滞っていたダークモード対応をおよそ2週間で完了させる
chigichan24
0
710
Are APIs Still Relevant in the AI Era?
soyuka
0
150
WebRTC映像をAirPlayに対応させる挑戦.pdf
monolithic_adam
0
190
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
GKE で Pod の見方を変えたら、スケールアウト時の挙動を真に捉えられた話
stkk
0
120
Building an Out-of-Order CPU
latte72
1
770
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
350
選挙速報を多くのユーザーへ 届ける Live Activities 設計
hamayokokuririn
0
140
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
520
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
430
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
400
[SF Ruby Conf 2025] Rails X
palkan
3
1.4k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
360
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
A better future with KSS
kneath
240
18k
エンジニアに許された特別な時間の終わり
watany
109
250k
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