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
- Rでオブジェクト指向プログラミング- クラス設計入門の入門
Search
yu_sekiya
January 21, 2023
Technology
1.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
- Rでオブジェクト指向プログラミング- クラス設計入門の入門
TokyoR#103応用セッションの資料です。
yu_sekiya
January 21, 2023
More Decks by yu_sekiya
See All by yu_sekiya
TokyoR#119 rvestでhtml_liveをさわってみた話
kotatyamtema
0
58
TokyoR#119 bignners session2 Visualization
kotatyamtema
0
240
Shinyのすすめ - Introduction to shiny -
kotatyamtema
0
180
TokyoR116_BeginnersSession1_環境構築
kotatyamtema
0
270
TokyoR#114 shiny+DT超(ザックリ)入門
kotatyamtema
0
110
TokyoR#113 bignners session2 Visualization
kotatyamtema
0
140
TokyoR #112 Beginners' Session2 data handing
kotatyamtema
0
140
TokyoR #111 Beginners' Session1 data handing
kotatyamtema
0
110
TokyoR#95 bignners session2 Visualization
kotatyamtema
0
73
Other Decks in Technology
See All in Technology
4人目のSREはAgent
tanimuyk
0
390
AWS Summit Japan 2026の振り返りと2027へ向けて / AWS Summit Japan 2026 Recap and Prospects for 2027
kaminashi
1
200
AIに障害切り分けを全部やってもらった。 。 。 。
estie
0
360
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
7
2k
Agentic AI 時代のテスト手法: Kiro とはじめるプロパティベーステスト (AWS Summit Japan 2026 | DEV212)
ymhiroki
0
210
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
250
認証認可だけじゃない! ID管理の構成要素と ライフサイクルを意識しよう
ritou
1
470
Why is RC4 still being used?
tamaiyutaro
0
290
「ちゃんとやっている」は独りよがりだった ― 不安に寄り添うインシデント対応へ / Towards incident response that addresses anxieties
chmikata
1
550
背中から、背中へ /paying forward to community
naitosatoshi
0
220
cccccc
moznion
0
1.7k
攻撃者がいなくてもAIエージェントはインシデントを起こす
nomizone
0
200
Featured
See All Featured
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
220
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
450
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
170
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
320
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.6k
The Invisible Side of Design
smashingmag
301
52k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
My Coaching Mixtape
mlcsv
0
170
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Exploring anti-patterns in Rails
aemeredith
3
440
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
230
Transcript
Ԡ༻ηογϣϯ 3ͰΦϒδΣΫτࢦϓϩάϥϛϯά Ϋϥεઃܭೖͷೖ 5PLZP3 !LPUBUZBNUFNB
ࣗݾհ 5XJUUFS*%!LPUBUZBNUFNB େֶͰͷઐߦಈੜଶֶ ཱҊdั֫d࣮ݧdੳ·ͰϫϯΦϖ ࠓ·Ͱ٬ઌ΅ͬͪੳˠΞύϨϧ௨ൢձࣾ ݱࡏҩྍݕࠪձࣾ 3ྺա͔͗ͨʁӬԕͷॳ৺ऀ ۙگͳΜ͔ͪΐͬͱ͍Ζ͍ΖมԽ͕͠ΜͲ͍ ɹɹࠓ͜ͷࠒɻ ࣗ༝ͱ͕࣌ؒཉ͍͠ɺ͋ͱࢿۚҰԯԁ͘Β͍
࠷ۙͷ͓ࣄ ͳ։ൃҊ݅ ϑϩʔਤઃܭॻͳΜͳ͍·· ίʔυ͚ͩདྷΔͱ͔ͳΜͳͷ͞ ౖ ͳΜͰ1ZUIPOͰ։ൃͯ͠Δͷʹ Ϋϥεઃܭͯ͠ͳ͍ͷ͞ʁ
ͦͦΫϥεͬͯ ͳΜͩΖ͏ʁ
త ΦϒδΣΫτࢦϓϩάϥϛϯάͱ ʙΫϥεͱͳΜͳͷ͔ʙ 3ͰΦϒδΣΫτࢦϓϩάϥϛϯά Ϋϥε࡞
࣍ ΦϒδΣΫτࢦϓϩάϥϛϯάͱ ΫϥεͱʙϓϩάϥϜͷઃܭਤͷ࠷খ୯Ґ ΫϥεΛ͏͝རӹ 3ͷΫϥεʙ3ೖͷೖ
ΦϒδΣΫτࢦϓϩάϥϛϯάͱ ΦϒδΣΫτࢦϓϩάϥϛϯάͱ ʮ͋ΔׂΛ࣋ͬͨϞϊʯ͝ͱʹΫϥεʢϓϩάϥϜશମͷ ઃܭਤʣΛׂ͠ɺϞϊͱϞϊͱͷؔੑΛఆ͍ٛͯ͘͜͠ ͱͰγεςϜΛ࡞Γ্͛Α͏ͱ͢ΔγεςϜߏͷߟ͑ํ IUUQTSPCPEPOFDPNCMPHEPOFTIJQ@PCKFDU@PSJFOUFE දతͳݴޠɿQZUIPOɺKBWBTDSJQUɺ$ ɺ$
ΫϥεͱʙϓϩάϥϜͷઃܭਤͷ࠷খ୯Ґ Ϋϥεͱɿσʔλͱϝιουͷू߹ ʙΦϒδΣΫτͷઃܭਤʹ͋ͨΔͷ ཧղͷͨΊʹඞཁͳ༻ޠͱఆٛ ΠϯελϯεɿΫϥεΛݩʹ࡞ΒΕͨͷɺ࣮ମʹ͢Δ ͜ͱΛΠϯελϯεԽͱදݱɺΦϒδΣΫτͱ΄΅ಉٛ ϝιουɿΫϥεʹఆٛ͞Εͨॲཧಈ࡞ͷ͜ͱɺ3Ͱ ؔͱಉٛ
ϓϩύςΟɿΠϯελϯεʹ͍ͭͯͷใɺଐੑɺσʔλ ؚ·ΕΔ ΦϒδΣΫτɿʮରʯʮϞϊʯͱ͍͏ҙຯͰɺσʔλ ʢϓϩύςΟʣͱϝιουʢΫϥεʹఆٛ͞Εͨॲཧʣͷ ू·ΓɺΠϯελϯεͱ΄΅ಉٛ IUUQTXFCDBNQJPNBHB[JOFBSDIJWFT
ΫϥεΛ͏͝རӹ ΫϥεΛ͏͝རӹ ڞ௨͢Δ༰ͷίʔυΛ·ͱΊΔ͜ͱ͕Ͱ͖Δ ʙػೳ͝ͱʹΫϥεΛ·ͱΊΔ͜ͱͰݟ௨͕͠ྑ͘ͳΔ ಉ͡༰ΫϥεΛ͍ճ͢͜ͱ͕Ͱ͖Δ ʙΫϥεΛܧঝ͢Δ͜ͱͰಉ͜͡ͱΛ܁Γฦ͠ॻ͔ͳͯ͘ྑ͍ɺɹ ɹػೳՃ͕؆୯ʹͳΔ
σόοάվम͕͘͢͠อकཧίετΛԼ͛Δ ʙػೳ͝ͱʹ·ͱ·͍ͬͯΔͷͰมߋՕॴ͕গͳ͍ ෳਓͰ։ൃ͢Δͱ͖ʹศར ʙΫϥεؒͰͷׯব͕গͳ͍ͷͰΫϥε͝ͱʹ͚ͯ։ൃ͕Ͱ͖Δ ظؒվम͠͏ɺن͕େ͖͍ɺෳਓͰ։ൃ͢Δ ͍ͣΕ͔ͷཁૉ͕͋Δ։ൃΫϥεΛͬͨઃܭ͕ศར
3ͷΫϥεʙ3ೖͷೖ 3ͰΦϒδΣΫτࢦϓϩάϥϛϯά ʙ3ͱͱؔܕݴޠ ɹؔʹϝιου ɹΫϥεʹϝιουͱσʔλͷू·Γ 3ͰΦϒδΣΫτࢦతॻ͖ํ͕Ͱ͖Δ 3ͷΫϥε̏ͭɿࠓճ3ΛͬͯΫϥεΛ࡞ Ϋϥε ಛ 4
ຊ࣭తʹΦϒδΣΫτͷΫϥεଐੑ DMBTTBUSJCVUF จࣈྻɻ࠷ॳʹΫϥεΛఆٛͨ͠Γ ͤͣɺΦϒδΣΫτΛੜ͠ɺޙ͔ΒଐੑΛϖλϖλష͍ͬͯ͘Πϝʔδɻ݁ߏద 4 4ΑΓຊ֨తʹΦϒδΣΫτࢦɻ Ϋϥεؚ͕Ή͖σʔλͰ͋Δεϩοτ TMPU ͱͦͷܕ UZQF ͕໌ࣔతʹදݱ SFQSFTFOUBUJPO ͞ΕɺҟͳͬͨܕͷσʔλΛؚ·ͳ͍Α͏ʹνΣοΫػೳ͕ಇ͘ 3 ΑΓࣗવͳΦϒδΣΫτࢦɺ3ύοέʔδΛΠϯετʔϧͯ͠͏ QBCMJDϝϯόͱQSJWBUFϝϯό͕͋Δ ΫϥεΛ·͍ͨͰಈ࡞͢ΔܧঝʢεʔύʔΫϥεʣ͕Ͱ͖Δ
3ͷΫϥεʙ3ೖͷೖ 3Λͬͯʮྑ͍ίʔυѱ͍ίʔυͰֶͿઃܭೖʯͷ࠷ॳʹ ग़ͯ͘ΔήʔϜγεςϜͷ)1ཧΫϥεΛ࣮ͯ͠ΈΔ IUUQTHJIZPKQCPPL Ϋϥεͷ༰ɾ݅ QͷώοτϙΠϯτ )1 Λදݱ͢ΔΫϥε ܭࢉ͍ͨ͜͠ͱɿώοτϙΠϯτͷݮগɺώοτϙΠϯτͷճ෮ ೖྗɿ࠷ॳͷώοτϙΠϯτɺड͚ͨ߈ܸͷɺճ෮͞Εͨ
݅ɿͯ͢ͷ࣮ ώοτϙΠϯτ )1 ͷൣғ)1 ड͚ͨ߈ܸͷ ճ෮͞Εͨ
3ͷΫϥεʙ3ೖͷೖ )JUQPJOU3$MBTT )JUQPJOU QVCMJDMJTU JOJUJBM)1/" JOJUJBMJ[FGVODUJPO JOJUJBM)1
\ TUPQJGOPU JTOVNFSJD JOJUJBM)1 MFOHUI JOJUJBM)1 JOJUJBM)1JOJUJBM)1 TFMGJOJUJBM)1JOJUJBM)1 ^ μϝʔδΛड͚ͨͱ͖ͷܭࢉ )1EBNBHFGVODUJPO EBNBHF"NPVOU \ TUPQJGOPU JTOVNFSJD EBNBHF"NPVOU MFOHUI EBNBHF"NPVOU EBNBHF"NPVOU /FX)1TFMGJOJUJBM)1EBNBHF"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ճ෮Λड͚ͨͱ͖ͷܭࢉ )1SFDPWFSGVODUJPO SFDPWFSZ"NPVOU \ TUPQJGOPU JTOVNFSJD SFDPWFSZ"NPVOU MFOHUI SFDPWFSZ"NPVOU SFDPWFSZ"NPVOU /FX)1TFMGJOJUJBM)1 SFDPWFSZ"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^
3ͷΫϥεʙ3ೖͷೖ )JUQPJOU3$MBTT )JUQPJOU QVCMJDMJTU JOJUJBM)1/" JOJUJBMJ[FGVODUJPO JOJUJBM)1
\ TUPQJGOPU JTOVNFSJD JOJUJBM)1 MFOHUI JOJUJBM)1 JOJUJBM)1JOJUJBM)1 TFMGJOJUJBM)1JOJUJBM)1 ^ μϝʔδΛड͚ͨͱ͖ͷܭࢉ )1EBNBHFGVODUJPO EBNBHF"NPVOU \ TUPQJGOPU JTOVNFSJD EBNBHF"NPVOU MFOHUI EBNBHF"NPVOU EBNBHF"NPVOU /FX)1TFMGJOJUJBM)1EBNBHF"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ճ෮Λड͚ͨͱ͖ͷܭࢉ )1SFDPWFSGVODUJPO SFDPWFSZ"NPVOU \ TUPQJGOPU JTOVNFSJD SFDPWFSZ"NPVOU MFOHUI SFDPWFSZ"NPVOU SFDPWFSZ"NPVOU /FX)1TFMGJOJUJBM)1 SFDPWFSZ"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ΫϥεͷॳظԽϝιου )1EBNBHFϝιου )1SFDPWFSϝιου
3ͷΫϥεʙ3ೖͷೖ )JUQPJOU3$MBTT )JUQPJOU QVCMJDMJTU JOJUJBM)1/" JOJUJBMJ[FGVODUJPO JOJUJBM)1
\ TUPQJGOPU JTOVNFSJD JOJUJBM)1 MFOHUI JOJUJBM)1 JOJUJBM)1JOJUJBM)1 TFMGJOJUJBM)1JOJUJBM)1 ^ μϝʔδΛड͚ͨͱ͖ͷܭࢉ )1EBNBHFGVODUJPO EBNBHF"NPVOU \ TUPQJGOPU JTOVNFSJD EBNBHF"NPVOU MFOHUI EBNBHF"NPVOU EBNBHF"NPVOU /FX)1TFMGJOJUJBM)1EBNBHF"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ճ෮Λड͚ͨͱ͖ͷܭࢉ )1SFDPWFSGVODUJPO SFDPWFSZ"NPVOU \ TUPQJGOPU JTOVNFSJD SFDPWFSZ"NPVOU MFOHUI SFDPWFSZ"NPVOU SFDPWFSZ"NPVOU /FX)1TFMGJOJUJBM)1 SFDPWFSZ"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ΫϥεͷॳظԽ 3ͷ߹ɿ`JOJUJBMJ[F`ʹGVODUJPOͱͯ͠ࢦఆ ಛ Πϯελϯε࡞࣌ʹࣗಈతʹҰ͚ͩݺΕΔɻ ॳظԽϝιουʹҾ͕͋Δ߹ɺΠϯελϯε࡞࣌ʹҾΛઃఆ͢Δඞཁ͕͋Δɻ ͝རӹ ϝιουͷ࣮ߦΕΛ͛Δɻ Πϯελϯε࡞͔࣌͠Θͳ͍͜ͱ͕໌֬ʹͳΔɻ ΠϯελϯεมͷͷઃఆΛڧ੍Ͱ͖Δɻ ΫϥεͷॳظԽϝιου
3ͷΫϥεʙ3ೖͷೖ )JUQPJOU3$MBTT )JUQPJOU QVCMJDMJTU JOJUJBM)1/" JOJUJBMJ[FGVODUJPO JOJUJBM)1
\ TUPQJGOPU JTOVNFSJD JOJUJBM)1 MFOHUI JOJUJBM)1 JOJUJBM)1JOJUJBM)1 TFMGJOJUJBM)1JOJUJBM)1 ^ μϝʔδΛड͚ͨͱ͖ͷܭࢉ )1EBNBHFGVODUJPO EBNBHF"NPVOU \ TUPQJGOPU JTOVNFSJD EBNBHF"NPVOU MFOHUI EBNBHF"NPVOU EBNBHF"NPVOU /FX)1TFMGJOJUJBM)1EBNBHF"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ճ෮Λड͚ͨͱ͖ͷܭࢉ )1SFDPWFSGVODUJPO SFDPWFSZ"NPVOU \ TUPQJGOPU JTOVNFSJD SFDPWFSZ"NPVOU MFOHUI SFDPWFSZ"NPVOU SFDPWFSZ"NPVOU /FX)1TFMGJOJUJBM)1 SFDPWFSZ"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ )1EBNBHFϝιου TUPQJGOPUͰEBNBHF"NPVOUϓϩύςΟͷ݅ઃఆ JOJUJBMJ[FϝιουͰઃఆͨ͠TFMGJOJUJBM)1Λݺͼग़͠ ΫϥεͷॳظԽϝιου
3ͷΫϥεʙ3ೖͷೖ )JUQPJOU3$MBTT )JUQPJOU QVCMJDMJTU JOJUJBM)1/" JOJUJBMJ[FGVODUJPO JOJUJBM)1
\ TUPQJGOPU JTOVNFSJD JOJUJBM)1 MFOHUI JOJUJBM)1 JOJUJBM)1JOJUJBM)1 TFMGJOJUJBM)1JOJUJBM)1 ^ μϝʔδΛड͚ͨͱ͖ͷܭࢉ )1EBNBHFGVODUJPO EBNBHF"NPVOU \ TUPQJGOPU JTOVNFSJD EBNBHF"NPVOU MFOHUI EBNBHF"NPVOU EBNBHF"NPVOU /FX)1TFMGJOJUJBM)1EBNBHF"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ճ෮Λड͚ͨͱ͖ͷܭࢉ )1SFDPWFSGVODUJPO SFDPWFSZ"NPVOU \ TUPQJGOPU JTOVNFSJD SFDPWFSZ"NPVOU MFOHUI SFDPWFSZ"NPVOU SFDPWFSZ"NPVOU /FX)1TFMGJOJUJBM)1 SFDPWFSZ"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ TUPQJGOPUͰSFDPWFSZ"NPVOUϓϩύςΟͷ݅ઃఆ JOJUJBMJ[FϝιουͰઃఆͨ͠TFMGJOJUJBM)1Λݺͼग़͠ )1SFDPWFSϝιου ΫϥεͷॳظԽϝιου
3ͷΫϥεʙ3ೖͷೖ )JUQPJOU3$MBTT )JUQPJOU QVCMJDMJTU JOJUJBM)1/" JOJUJBMJ[FGVODUJPO JOJUJBM)1
\ TUPQJGOPU JTOVNFSJD JOJUJBM)1 MFOHUI JOJUJBM)1 JOJUJBM)1JOJUJBM)1 TFMGJOJUJBM)1JOJUJBM)1 ^ μϝʔδΛड͚ͨͱ͖ͷܭࢉ )1EBNBHFGVODUJPO EBNBHF"NPVOU \ TUPQJGOPU JTOVNFSJD EBNBHF"NPVOU MFOHUI EBNBHF"NPVOU EBNBHF"NPVOU /FX)1TFMGJOJUJBM)1EBNBHF"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ ճ෮Λड͚ͨͱ͖ͷܭࢉ )1SFDPWFSGVODUJPO SFDPWFSZ"NPVOU \ TUPQJGOPU JTOVNFSJD SFDPWFSZ"NPVOU MFOHUI SFDPWFSZ"NPVOU SFDPWFSZ"NPVOU /FX)1TFMGJOJUJBM)1 SFDPWFSZ"NPVOU /FX)1JGFMTF /FX)1 /FX)1 DBU Γ)1 /FX)1 Ͱ͢ ^ Ϋϥεͷ͝རӹ )1EBNBHFϝιουͱ)1SFDPWFSϝιουͷ྆ํͰ ڞ௨ͯ͠͏JOJUJBM)1ϓϩύςΟͷఆ͕ٛճͷهࡌͰࡁΉ ڞ௨͢Δ߲ΛҰʹݟΒΕΔͷͰվमσόοά͕ Γ͍͢
3ͷΫϥεʙ3ೖͷೖ UFTU)Q)JUQPJOUOFX UFTU)Q)JUQPJOUOFX &SSPSJOJOJUJBMJ[F JOJUJBM)1JOJUJBM)1JTOPU536& UFTU)Q)JUQPJOUOFX
&SSPSJOJOJUJBMJ[F JOJUJBM)1JOJUJBM)1JTOPU536& ΦϒδΣΫτΛੜ ࢦఆͨ͠ൣғΛ͑ͨ߹
3ͷΫϥεʙ3ೖͷೖ UFTU)Q)1EBNBHF Γ)1Ͱ͢ UFTU)Q)1EBNBHF Γ)1Ͱ͢ μϝʔδΛड͚ͨ߹ͷܭࢉ
࠷ॳͷ)1ΑΓখ͞ͳμϝʔδ ࠷ॳͷ)1ΑΓେ͖ͳμϝʔδ
3ͷΫϥεʙ3ೖͷೖ UFTU)Q)1SFDPWFS Γ)1Ͱ͢ UFTU)Q)1SFDPWFS Γ)1Ͱ͢ ճ෮ͨ͠߹ͷܭࢉ
࠷େΑΓগͳ͍ճ෮ ࠷େΑΓଟ͍ճ෮
3ͷΫϥεʙ3ೖͷೖ ࠓճग़དྷͨ͜ͱ ɾ3Λͬͯ؆୯ͳΫϥεΛ࣮ͯ͠ڍಈΛ֬ೝͨ͠ ·ͩग़དྷ͍ͯͳ͍͜ͱ ɾQSJWBUFͷڍಈΛࢼ͢ ɾܧঝͷڍಈΛࢼ͢ ɾ3ಛ༗ͷڍಈͷ֬ೝ
·ͱΊ w ΫϥεͱΦϒδΣΫτࢦϓϩάϥϛϯάͷհ w 3ύοέʔδΛͬͯΫϥεΛ࡞ͯ͠Έͨ w ·ͩ·ͩΫϥεઃܭʹ3ʹཧղ͕ઙ͍ͷͰ ͍Ζ͍Ζࢼ͢ 3ͰΦϒδΣΫτࢦϓϩάϥϛϯάత ։ൃ͕Ͱ͖Δ
ࢀߟࢿྉ ɾ"EWBODFE3ষ IUUQTBEWSIBEMFZO[SIUNM ɾʦ༁ʧ3WJHOFUUF3Ϋϥεೖ IUUQTRJJUBDPNOBLBNJDIJJUFNTEFGEBD ɾ3DMBTTͬͦ͘͞ௐࠪSTUBUTK IUUQTRJJUBDPNIPYP@NJUFNTCCGGCFBB
&/+0: