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
数学とバッファ
Search
YasuhiroKimesawa
November 29, 2019
Programming
0
360
数学とバッファ
YasuhiroKimesawa
November 29, 2019
Tweet
Share
More Decks by YasuhiroKimesawa
See All by YasuhiroKimesawa
XP祭り2024 『アジャイルとは何か?なぜアジャイルなのか?』1年間のアジャイルコーチとの1on1を通してやっとわかったアジャイル
yasuhirokimesawa
0
600
VUCAの時代にプロダクト開発のためにできること
yasuhirokimesawa
1
500
ユニットテストとカバレッジの 本質をチーム内で共有する / Unit testing and coverage Share the essence within the team
yasuhirokimesawa
0
120
DIPのことを知っておこう
yasuhirokimesawa
0
49
タスク管理術
yasuhirokimesawa
0
29
ドメイン駆動設計の実際(2020/4/20 DDD Online MeetUp)
yasuhirokimesawa
3
390
良いコードに正解はあるか
yasuhirokimesawa
0
490
Other Decks in Programming
See All in Programming
The State of Fluid (2025)
s2b
0
190
Dart 参戦!!静的型付き言語界の隠れた実力者
kno3a87
0
200
decksh - a little language for decks
ajstarks
4
21k
令和最新版手のひらコンピュータ
koba789
14
8k
オープンセミナー2025@広島LT技術ブログを続けるには
satoshi256kbyte
0
120
UbieのAIパートナーを支えるコンテキストエンジニアリング実践
syucream
2
680
STUNMESH-go: Wireguard NAT穿隧工具的源起與介紹
tjjh89017
0
380
実践 Dev Containers × Claude Code
touyu
1
240
DockerからECSへ 〜 AWSの海に出る前に知っておきたいこと 〜
ota1022
5
1.8k
CSC305 Summer Lecture 04
javiergs
PRO
1
100
Google I/O recap web編 大分Web祭り2025
kponda
0
2.9k
kiroでゲームを作ってみた
iriikeita
0
180
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
RailsConf 2023
tenderlove
30
1.2k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Practical Orchestrator
shlominoach
190
11k
A Tale of Four Properties
chriscoyier
160
23k
Optimizing for Happiness
mojombo
379
70k
Gamification - CAS2011
davidbonilla
81
5.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Facilitating Awesome Meetings
lara
55
6.5k
Producing Creativity
orderedlist
PRO
347
40k
Transcript
ֶͱόοϑΝ ߁ኍ 2JJUB!:BTVIJSP,JNFTBXB5XJUUFSQJMHSJN@SFET ۚ +CVHٶ࡚
͍ᶃ ݟੵΓͬͯͲ͏ͬ ͯ·͔͢ʁ ଞͷݱͷΓํΓͨ ͍
͍ᶄ ͦͦͳͥݟੵΔ ͷ͔ʁ
֎෦ͱͷௐɾ࿈ܞͷͨΊͰͳ͍͔ʂ ֎෦ͱͷௐ͕ͳ͚Εɺ࣌ؒͷཧ͍Βͳ͍͕ɺ ௐ͕ͳ͍ϓϩμΫτͳͲͳ͍ • αʔϏε։࢝ͷࠂ • ଞγεςϜͱͷ࿈ܞ • εςʔΫϗϧμͷڞ༗ɾڭҭ •
αʔϏε։࢝ͳͲϚΠϧετϯʹؒʹ߹Θͳ͍ͱஅ ͞Εͨࡍͷରࡦ • ϚωʔδϟʔɺܦӦਞͳͲͷใࠂ • ɾɾɾ
ɹɹʹ͍ͭͯ։ൃνʔ Ϝʹͱͬͯେࣄͳ͜ͱ ͱ͍͏͜ͱʁ ૣ্͛͘Δ͜ͱͰͳͯ͘ɺৗʹࠓͷཱͪҐஔͱকདྷͷݟ௨ཱ͕ͯ͠Β ΕΔ͜ͱͰͳ͍͔ʁ
ૣ্͛͘Δ͜ͱͰͳͯ͘ɺৗʹࠓͷཱͪҐஔͱকདྷͷݟ௨ཱ͕ͯ͠Β ΕΔ͜ͱͰͳ͍͔ʁ • ֎෦ͱͷௐ͕Ͱ͖ͳ͍ͱ͜Ζ·Ͱདྷ͔ͯΒঢ় گʹؾ͕͔ͭ͘Βૣ্͛͘Δ͜ͱ͕ࣄʹ ͳͬͯ͠·͏ɻ • ௐՄೳͳ͏ͪʹݟ௨ཱ͕ͯ͠ΒΕΕɺৗ ʹݟ௨ཱ͕ͯ͠ΒΕ͍ͯΕɺແཧ্ͯ͠ ͛Δඞཁͳ͘ͳΔʢύϑΥʔϚϯε͕େࣄ
Ͱͳ͍ͱݴ͍ͬͯͳ͍ɾɾɾ)
ൃੜʂ
ෆ࣮֬ੑͷ
ෆ࣮֬ੑͷ ʙ։ൃॳظʙ • Ͳ͏͍͏ը໘ʹ͢Δʁ • Ͳ͏͍͏ϩδοΫʹͳΔʁ • ֎෦γεςϜͷ༷ʁ୭ʹฉ͚͍͍ʁ • ༻ͨ͜͠ͱٕज़ɾπʔϧ
• ɾɾɾ
ෆ࣮֬ੑͷ ʙ։ൃ͕ਐΜͰʙ • ࢥΘ͵όά • ࢥΘ͵ύϑΥʔϚϯεԼ • ఆ֎ͷ࣮ • ༷มߋɾ༏ઌॱҐͷೖΕସ͑
• ɾɾɾ
ෆ࣮֬ੑʹ͖߹͑Δ Α͏ͳݟੵΓͷํ ͕ඞཁ
όοϑΝΛऔΔ ෆ࣮֬ੑʹ ͖߹͏ͨΊʹ ͦΕͬͯ ී௨ɾɾɾ
͍ᶅ όοϑΝͬͯͲ͏ͬͯ औͬͯ·͔͢ʁ ଞͷݱͷΓํΓͨ ͍
"3",*4BUPSVߘऀࣗʹΑΔ࡞ $$දࣔܧঝ IUUQTDPNNPOTXJLJNFEJBPSHXJOEFYQIQ DVSJEʹΑΔ ଟ͜ͷลͰͰ͖Δ ઈରͰ͖Δ ͏·͘ߦ͚ ɹɹɹɹɹɹɹɹɹɹ ͜ͷκʔϯͰ ΛΧόʔʂ
͍ᶆ ภ֮ࠩͬͯ͑ͯ·͢ʁ ࣗΕͯ·͠ ͨɾɾɾ
ฏۉ ࠷ѱ ภࠩ? ϢʔβʔετʔϦʔ ϢʔβʔετʔϦʔ
ϢʔβʔετʔϦʔ ϢʔβʔετʔϦʔ ϢʔβʔετʔϦʔ ඪ४ภࠩ όοϑΝ
ϙΠϯτ w όοϑΝϢʔβʔετʔϦ͝ͱͰ ͳ͘ɺશମͰऔΔ ඞͣޙΖ͠͠ ͯ͠·͏ͷ͕ਓؒ w ෆ҆ྔ ภࠩ
ͷେ͖͍ͷ͔Βย͚ Δɻ ෆ࣮֬ੑͷߴ͍ͷΛ͓ͯ͠ ͔ͳ͍ʣ
ൃੜʂ
͍ᶇ ฏۉͱ࠷ѱͷ݁ہ צʁʁʁ
ෆ࣮֬ੑίʔϯ ϓϩδΣΫτϚωδϟʔͷͨΊͷʮϓϩηεઃܭज़ʯϓϩδΣΫτͷຊ࣭ͱͳʹ͔ܦ4:45&.4ΑΓ
͍ᶇ ࢦ֮ؔͬͯ͑ͯ· ͢ʁ ࣗΕͯ·ͨ͠ɾɾɾ
ෆ࣮֬ੑίʔϯ 6 8FYQ U5 5શମͷظؒ Uܦաͨ͠ظؒ 8ϒϨ෯
͍ᶈ צʹཔΒͳ͍ݟੵΓ Λߟ͍͑ͨʁʁʁ
૬ରݟੵΓͱϙΠϯτ
Ϣʔβʔε τʔϦʔ ϢʔβʔετʔϦʔ ̎ ̎ഒʂ
Ϣʔβʔ ετʔϦʔ ϢʔβʔετʔϦʔ̎ ̑ ⇛ ઃܭͷ͕࣌ؒඞཁ ⇛ ઃܭͷ͕࣌ؒඞཁ ɾઃܭ
ɾ։ൃ࣌ؒ ɾ୯ମςετ ɾσϓϩΠ ɾಈ࡞֬ೝ ઃܭͷ࣌ؒΛݟͯͳ ͔ͬͨʂʂʂ
Ϣʔβʔε τʔϦʔ ϢʔβʔετʔϦʔ ̎ ͲͪΒʹͯ̎͠ഒʂ ɾઃܭ ɾ։ൃ࣌ؒ ɾ୯ମςετ ɾσϓϩΠ ɾಈ࡞֬ೝ
ɾઃܭ ɾ։ൃ࣌ؒ ɾ୯ମςετ ɾσϓϩΠ ɾಈ࡞֬ೝ
Ϣʔβʔε τʔϦʔ ϢʔβʔετʔϦʔ ̎ ϢʔβʔετʔϦʔ̏ ̍ϙΠϯτ ج४ ϙΠϯτ ϙΠϯτ
εϓϦϯτͱϕϩγςΟ
εϓϦϯτͱϕϩγςΟ ݻఆͨ͠ظؒͰɺͲͷ͘Β͍ϙ ΠϯτΛফඅ͔ͨ͠ ϕϩγ ςΟ Λܭଌ͢Δ͜ͱͰɺকདྷͷ ༧ଌ͕Ͱ͖Δ
࣮ εϓϦϯτ̍ εϓϦϯτ̎ εϓϦϯτ̏ εϓϦϯτ̐ εϓϦϯτ̑
εϓϦϯτ ݻఆͷظؒͰϙΠϯτͰ͖ͨ Βɺ࣍ͷಉ͡ظؒͰɺಉ͚ͩ͡࡞ ۀͰ͖ΔͳΒେମಉ͚ͩ͡ՌΛ ग़ͤΔͩΖ͏ͱ༧ଌͰ͖Δɻ ͪΖΜɺશʹ༧ଌͰ͖Δ ͷͰͳ͍ͷͰɺࠩҟग़Δʣ
࣮ ฏۉ ࠷ߴ ฏۉ ภࠩ Y ࠷ѱ ฏۉภࠩ Y εϓϦϯτ̍
εϓϦϯτ̎ εϓϦϯτ̏ εϓϦϯτ̐ εϓϦϯτ̑ εϓϦϯτ ͦΕ·Ͱͷฏ ۉ͔Β࠷ߴ ɺ࠷ѱ͔ ΒόοϑΝΛ ܭࢉ͢Δ͜ͱ Ͱ͞Βʹܭը ཱ͕ͯ͘͢ ͳΔ
࣮ ฏۉ ࠷ߴ ฏۉ ภࠩ Y ࠷ѱ ฏۉภࠩ Y εϓϦϯτ̍
εϓϦϯτ̎ εϓϦϯτ̏ εϓϦϯτ̐ εϓϦϯτ̑ εϓϦϯτ ͪΖΜɺ ֤εϓϦϯτ ͷՌ͕ෆ҆ ఆͰ͋Εܭ ըཱͯͮΒ ͍
εϓϦϯτ
ฏۉ ࠷ߴ ࠷ѱ ҆ఆ͍ͯ͠ͳ͍ϕϩγςΟ ࠷ѱɾ࠷ߴ ͷ͕ࠩେ͖ ͘ɺόοϑΝ Λେ͖͘औΒ ͟ΔΛಘͳ ͍ɻ
εϓϦϯτ
ฏۉ ࠷ߴ ࠷ѱ ҆ఆ͍ͯ͠ΔϕϩγςΟ ࠷ѱɾ࠷ߴ ͷ͕ࠩখ͞ ͍ͷͰେ͖ͳ όοϑΝऔ Βͳͯ͘ࡁΉ
εϓϦϯτͱϕϩγςΟ ϕϩγςΟ͕҆ఆ͍ͯ͠Δͱ༧ ଌ͕͘͢͠ܭըཱ͕͍ͯ͢ ٯʹ҆ఆ͍ͯ͠ͳ͍ͱ༧ଌ͕͠ ʹ͍͘
҆ఆͨ͠ϕϩγςΟΛ ્͢ΔͷԿ͔ʁ ɾෆҙͳMTG ɾ͍૬ஊɾ࣭ ɾٸͳӡ༻λεΫ ɾڞ༗ͷ࣌ؒ(ڞ༗͚ͩͷ͍࣌ؒͯ͠Δํɺड͚͍ͯΔํੜ࢈ੑ0) ɾਓͷೖΕସ͑ ɾۀʢଟ͔ͬͨΓগͳ͔ͬͨΓ͢Δͱ҆ఆ͠ͳ͍) ɾٸͳٳΈɻ෩अͱ͔ ɾۃͳർΕ
ɾ༧֎ͷόά༷ͷߟྀ࿙Ε ɾٕज़ྗͷԼ(ٕज़తʹղܾͰ͖ΔͷΛͲ͏ʹ͔ؤுͬͯ͠·͏) ɾɾɾɾ
͍ᶉ ͜ΕΒͷ્ཁҼΛͲ͏ ղܾ͠·͔͢ʁ ଞͷݱͷΓํΓͨ ͍
҆ఆͨ͠ϕϩγςΟΛ્͢Δ ͷΛղܾ͍ͯ͘͠ʹɺݱ ʹΑͬͯ՝͕ҧ͏ͨΊɺ ։ൃνʔϜશһͷ ܙ͕͍Δɻ
ৼΓฦΓ ͦͷͨΊͷ εϓϦϯτ͝ͱʹ࣮ࢪ ݸਓͷলձͷͰͳ͍ ։ൃνʔϜશһͷ ܙΛग़͢ɻ
ৼΓฦΓͰେࣄͳ͜ͱ ։ൃνʔϜશһͷܙΛग़͢ɻ ʹ͓ޓ͍Λೳྗ͋Δ ಠཱͨ͠ݸਓͱͯ͠ ଚܟ͠ͳ͚ΕͳΒͳ͍
͜Μͳݴ༿͕ඈͼަͬͯ·ͤΜ͔ʁ • ʰ̋̋(ਓͷ໊લ)ʱ(͜ͷ݅ʹ͍ͭͯ)λεΫΛׂΓͯΒΕͳ͍ɻ·ͩૣ͍ɻ • ʰ̋̋(ਓͷ໊લ)ʱͷXX(ΊΜͲ͍͘͞ɺΘ͔Γʹ͍͘ɺҙݟ͕߹Θͳ͍)ɻ • ʰ̋̋(ਓͷ໊લ)ʱͷࣄͷΓํ͕XX(ޮѱ͍ɺਐḿ͍ɺۀΛΖ͏ͱ͠ͳ͍ɺ˚˚͢Ε͍͍ͷʹɺΘ͔ͬͯͳ ͍ɺ͠ͳ͍ɺɺɺ) • ʰ̋̋(ਓͷ໊લɺओʹ৽ଔ)ʱXXͬͯཉ͍͠ɻ
• ࢼ࿅Λ༩͍͑ͯΔɻ • ͯ͠΄͍͔͠ΒɻͲ͏͢ΕͰ͖Δʁ • ܦݧ͕ඞཁʢͰҰਓͰͬͯɾɾɾ) ੑ͕͋Δਓ͍Δ ͍ͬͯΔͷ͕ͦͷΑ͏ͳϝϯ όʔ͔ ͕ɺࣗඞཁͳ͍ͱࢥͬͯ͠·ͬͨΒɾɾɾ εΩϧ͕ߴ͍εʔύʔϚϯ͚ͩͰ֤ʑݸਓͰؤுΕ͍͍ ͚ͩͳΒͳ͘ɺͰ͖Δਓͱੑ͕͋Δਓ͚ͩͰ ࣄΛਐΊΒΕΔɻ ͦͷ߹ɺνʔෆཁɺ͜͜·Ͱͷෆཁɻ ແҙࣝʹ
৺ཧత҆શੑ • Googleͷݚڀɹੜ࢈ੑͷߴ͍νʔϜʹޭ͢ΔνʔϜ࡞Γʹඞཁͳͷͷͯ͢ͷ͕৺ཧత҆શɻ • νʔϜͰϦεΫͷ͋Δ͜ͱΛ͢Δͱ͖ʹɺෆ҆ஏ͔ͣ͠͞Λײ͡ͳ͍͔ [৺ཧత҆શੑʹෆ҆ΛҾ͖ى̐ͭ͜͢ͷෆ҆] • ແͩͱࢥΘΕΔෆ҆ • ແೳͩͱࢥΘΕΔෆ҆
• अຐΛ͍ͯ͠ΔͱࢥΘΕΔෆ҆ • ωΨςΟϒͩͱࢥΘΕΔෆ҆ ৺ཧత҆શੑͷ͋ΔνʔϜɺνʔϜͰͷڞײྀ͕Ͱ͍ͯΔঢ়ଶͰɺ ͓ޓ͍͕ͦΕͧΕͷଟ༷ੑΛೝΊɺ ͦΕͧΕͷߟ͑ํΛ͏·͘׆͔͢͜ͱ͕Ͱ͖͍ͯΔνʔϜɻ ͓ޓ͍Λೳྗ͋Δಠཱͨ͠ݸਓͱͯ͠ଚܟ͠ͳ͚ΕͳΒͳ͍
৺ཧత҆શੑ͕ߴ͍νʔϜͷྫ w ਓΛׂΓͯΔɺਓʹλεΫΛৼΔɺ͜ͷλεΫYY͔͠Ͱ͖ͳ͍ɺɺɺͷͰͳͯ͘νʔ ϜͷλεΫͱͯ͠औΓѻ͏ w ϖΞϓϩɾϞϒϓϩ w ࣗΒλεΫΛऔΔʢऔΓѻ͍ҙ w
ྃͷఆٛ w ேձ w ɾɾɾ w ୭͕ιʔεΛॻ͘ɺɺɺ͜͜୭͕ιʔεΛॻ͍ͨɺɺɺͰͳ͘ɺιʔενʔϜͷڞಉ ॴ༗ w ୭͕ΧΠθϯͰ͖ͯɺ୭͕मਖ਼Ͱ͖Δ w ઈ͑ؒͳ͍ϦϑΝΫλϦϯάͱ্࣭ w ɾɾɾ w YYͷਐḿཧͲ͏ͳͬͯΔͷʁɺɺɺͰͳ͘ɺνʔϜͷϕϩγςΟ w ҆ఆͨ͠ϕϩγςΟΛࢦ͢ w ৼΓฦΓͰΛɺܙΛग़͠߹͏ w ɾɾɾ
·ͣνʔϜΛ࡞Δʂ ·ͣ৺ཧత҆શੑͷߴ͍νʔϜΛ࡞Δɻ ͦͷ্ͰɺνʔϜ͕Λͯ͠ɺ҆ఆͨ͠ϕϩγςΟΛ ܭଌͰ͖Εɺ͋ͱͪΐͬͱֶͨ͠ͷࣝͰɺ ҆ఆ͠ͳ͕ΒՃͰ͖ΔɺՁ͕ߴ͍ࣄۀ͕ߦ͑Δʂ ·ͱΊ