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
Rails な受託の会社でぼくがやっていること / What I do in a Rails ...
Search
takkanm
March 22, 2019
Technology
6
13k
Rails な受託の会社でぼくがやっていること / What I do in a Rails consulting company
RailsDM 201903 での発表
takkanm
March 22, 2019
Tweet
Share
More Decks by takkanm
See All by takkanm
わたしの知っているRubyKaigiとESM / The relationship between RubyKaigi and ESM that I know
takkanm
0
390
Learn Programming Essence from Ruby patches
takkanm
4
2.2k
UpdateAdhoqToSupportRails5
takkanm
0
1.4k
That I speak when talking about language that starts from R
takkanm
3
2.5k
journey through the programming language(censored edition)
takkanm
1
240
10th anniversary Rubyist Magazine
takkanm
0
160
ordk03-ninja-talk
takkanm
0
560
ソーシャルコーディング時代のふつうのプログラマサバイバルガイド
takkanm
17
7.2k
bookshelf_in_my_head.pdf
takkanm
0
120
Other Decks in Technology
See All in Technology
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.5k
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
130
AndroidXR 開発ツールごとの できることできないこと
donabe3
0
130
分解して理解する Aspire
nenonaninu
1
420
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
280
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
25
13k
CZII - CryoET Object Identification 参加振り返り・解法共有
tattaka
0
410
PHPで印刷所に入稿できる名札データを作る / Generating Print-Ready Name Tag Data with PHP
tomzoh
0
140
OSS構成管理ツールCMDBuildを使ったAWSリソース管理の自動化
satorufunai
0
200
Helm , Kustomize に代わる !? 次世代 k8s パッケージマネージャー Glasskube 入門 / glasskube-entry
parupappa2929
0
260
コンピュータビジョンの社会実装について考えていたらゲームを作っていた話
takmin
1
390
次世代KYC活動報告 / 20250219-BizDay17-KYC-nextgen
oidfj
0
290
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
Docker and Python
trallard
44
3.3k
Done Done
chrislema
182
16k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
A Modern Web Designer's Workflow
chriscoyier
693
190k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Transcript
Rails ͳडୗͷձࣾͰ ΅͕͍ͬͯ͘Δ͜ͱ ࡾଜ ӹོ a.k.a takkanm ӬγεςϜϚωδϝϯτ ΞδϟΠϧࣄۀ෦ /
Asakusa.rb
Who am I • ӬγεςϜϚωδϝϯτ ΞδϟΠϧࣄۀ෦ • RubyΞδϟΠϧάϧʔϓ νʔϑϓϩάϥϚʔ •
Asakusa.rb ϝϯόʔ • 1 of 6 ਓ͍ΔύʔϑΣΫτRubyஶऀ
ࠂ
None
https://esminc.connpass.com/event/123239/
ࠓͷ
Θͨ͠ͱ Rails • Ruby ֶੜͷͱ͖͔Β (2004)͙Β͍ • Rails 0.6
͙Β͍ʹ৮͚ͬͨͲɺ͓ࣄͰ͏Α͏ʹͳͬͨͷ 2008 ͷ Rails2 ͙Β͍ͷͱ͖ • Railsษڧձ@౦ژͱ͍͏ษڧձͷ N ͷ։࠵ऀ
ࠓͷ༰ ͦΜͳΘ͕ͨ͠ӬγεςϜϚωδϝϯτͱ͍͏ Rails ʹΑΔγε ςϜ։ൃΛϝΠϯͱͨ͠डୗձࣾͰͲ͏ࣄΛ͍ͯ͠Δ͔ͱ͍͏ Λ͠·͢ɻʮʑϓϩδΣΫτͰͲ͏ࣄΛ͍ͯ͠Δ ͔ʯɺʮ৽͍͕ؒ͠དྷͨͱ͖Ͳ͏͍ͯ͠Δ͔ʯɺʮϓ ϩδΣΫτ֎ͷ׆ಈΛͲ͏͍ͯ͠Δ͔ʯͱ͍͏؍Ͱ͓ ͑Ͱ͖Εͱࢥ͍·͢ɻ
What is ӬγεςϜϚωδϝϯτ ΞδϟΠϧࣄۀ෦ ?
ESMΞδϟΠϧࣄۀ෦ͷྺ࢙ • 2000 ͙Β͍ʹମͱͳΔࣄॴͷൃ • ݩɺXP ΞδϟΠϧએݴʹײԽ͞Εͨਓؒͨͪͷू·Γ • 2006 ͙Β͍͔Β
Ruby Ͱࣄ͍ͯͧ͘͠એݴ
ESMΞδϟΠϧࣄۀ෦now • Ruby ʹΑΔγεςϜ։ൃΛߦ͍ͬͯΔϝϯόʔ 21 ໊ • ϕςϥϯͱएख͕ࠞࡏ • ࣗϕςϥϯͱएखͷத͙ؒΒ͍(ͱ͓ͬͯΔ
ʑͷࣄ
Ӭͷࣄͱͯ͠Δ͜ͱ • Ҋ݅ަবͷஈ֊ͷଧͪ߹ΘͤݟੵΓ • νʔϜϝϯόʔͷબఆ • ϓϩδΣΫτͷӡӦɺ݉։ൃ
ׂѪ
ʑͷϓϩδΣΫτͷ ։ൃͷࡍʹ͍ͬͯΔ͜ͱ ҙ͍ࣝͯ͠Δ͜ͱ
ීஈ͍ͬͯΔ͜ͱ • ಋೖ͢ΔϥΠϒϥϦϛυϧΣΞͷબఆͱஅ • ίʔυϨϏϡʔ • ϓϩδΣΫτΛ͑ͯར༻Ͱ͖ΔΑ͏ʹ͢Δ
ϛυϧΣΞϥΠϒϥϦͷબఆ • ӡ༻ɾอकΛ୭͕Δ͔Λߟ͑Δ • ՄೳͳݶΓܾఆΛΒͤΔ
ྫ) background job ʹԿΛ͏͔ • sucker_punch Λ͍ΕͯɺՄೳͳݶΓ ActiveJob Ͱ࣮ݱͰ͖Δ ൣғͰϓϩδΣΫτΛਐΊΔ
• γεςϜͷ͜ͱ͕Θ͔͖ͬͯͨ͋ͨΓͰɺ͜ͷ··͢͢ΊΔ͔ɺ DB ΛΩϡʔͱͯ͠͏ͷʹ͢Δ͔ɺ
ίʔυϨϏϡʔ • ߟྀ࿙ΕͷέʔεύϑΥʔϚϯεʹؔΘΓͦ͏ͳ͕ͳ͍͔ Λ֬ೝ • ҙਤ͕ͪΌΜͱΘΔίϝϯτΛ৺͔͚Δ • ͕ࣗड͚ೖΕΔ֮ޛ͕ͯΔ͔Ͳ͏͔
ίʔυϨϏϡʔΏΔΊ • ઃܭํࣄલʹνʔϜͰ͢Γ͋ΘͤΔ • ίʔυϨϏϡʔͰݫ͍͠ײ͡ʹͳΔͷɺͦ͜·Ͱʹ͕͋ Δͱࢥ͍ͬͯΔͷͰɺͦ͜Λ͍͚ͯ͠ΔΑ͏ʹ͢Δ • ҰఆྔͷࢦఠΛ͠ͳ͍ͱ͍͚ͳ͍ͱஅͨ͠ΒɺϨϏϡʔΛࣙ ΊͯҰॹʹΔͱ͍͏͜ͱΛબ͢Δ
ϓϩδΣΫτΛ͑ͯར༻Ͱ͖ΔΑ͏ʹ͢ Δ • ϓϩδΣΫτͷίʔυΛॻ͖ͳ͕Βɺ൚༻తʹͰ͖ͦ͏ͳՕॴ ΛgemʹΓग़ͯ͠ΈΔ • ࣮ࡍɺ·ͨ͏͔Ͳ͏͔ޒޒ • େ࡞͡Όͳͯ͘࡞Δ͜ͱΛ༏ઌ
͜͏͍͏ϨϕϧͰgemʹ͍ͯ͠Δ • esminc/operate_do • AS::CurrentAttributes Έ͍ͨͳͷΛ࣮ݱ͢Δͭ • esminc/jis_x_0401 • JISX0401ͷͨΊͷϥΠϒϥϦ
• esminc/s3_reproxy_download • S3 ʹ͋ΔϑΝΠϧΛ X-REPROXY-URL ΛͬͯฦͤΔΑ͏ʹ͢Δ
͍ͬͯͯͲ͏͔ • ʮҙຯ͋ΔΜͰ͔͢ʯͱ͔ʮηϯεͳ͍ʯΈ͍ͨͳ͜ͱΛݴΘ ΕΔ͜ͱ͋Δ • ͜͏͍͏͜ͱ͕Ͱ͖ΔϑοτϫʔΫͷܰ͞ΛࣗͰ͍ͬͯ ͍ͨ • ෑډͷ͞Λԋग़ͯ͠ɺଞͷਓʹͬͯΒ͑ΔΑ͏ʹͨ͠ ͍
৽͍͕͖ؒͨ͠ͱ͖
Ӭଜʹ͋ͨΒ͍͕͖ؒͬͯͨ͠ • ͬͯ͘Δස 1, 2 ਓ͙Β͍(৽ଔআ͘ • Ruby ͷ͓ࣄܦݧΊ •
ҟۀछస৬
ΦϯϘʔσΟϯάࣄ
ΦϯϘʔσΟϯάࣄ "
ܾΊΒΕͨͷ͕ͳ͍ཧ༝ • ਓʹΑͬͯঢ়گ͕ҧ͏ • ೖࣾλΠϛϯάʹΑͬͯࣾঢ়گ͕ҧ͏ • Railsʹର͢Δڭҭࢿྉੈͷதʹ͋ΔͷͰࣗ࡞͢ΔϞνϕʔ γϣϯ͕͍
ͰɺͲ͏͍ͯ͠Δ͔ • ೖࣾΔ͜ͱܾ·͓ͬͯΓ์ஔ͍ͯ͠ΔΘ͚Ͱͳ͍ • ϓϩδΣΫτͷঢ়گͦͷϓϩδΣΫτͷϝϯόʔΛΈͯɺ͜ ͷਓ͕͍ΔͳΒ҆৺ͱ͍͏ϓϩδΣΫτͰͷ OJT
Θ͕ͨ͠ΈΔͱ͖ͷํ • ଞͷνʔϜʹଐ͞Ε͔ͯΒɺ৽͍͠ϝϯόʔͱͦͷϓϩδΣ ΫτͷνʔϜ͕ࠔΒͳ͍Α͏ʹ͍ͨ͠ • ද໘తͳٕज़ཁૉͳͲϓϩδΣΫτʹΑͬͯҧ͏ͷͰɺͦΕ ΒΛࢧ͑ΔͱͳΔࣝߟ͑ํΛ·ͣʹ͚ͭͯཉ͍͠
ϓϩδΣΫτʹೖͬͯࠔΔ͜ͱ • Ruby on Rails ͷίʔυ͕ॻ͚Δॻ͚ͳ͍͔ΑΓɺίϛϡχ έʔγϣϯ͕ͱΕͳ͍͜ͱ͕ͱͳΔ͜ͱ͕ଟ͍ • ϕςϥϯϦʔμʔͱͷࣝߟ͑ํͷΪϟοϓʹΑΓൃੜ͠ ͯͦ͏
ࠔΒͳ͍Α͏ʹͳΔͨΊʹ • Θ͔Βͳ͍͜ͱΛͪΌΜͱ͑ΒΕΔΑ͏ʹͳΔ • λεΫͷݟੵΓͱܭը͕Ͱ͖Δ • ࣄΛָ͘͠Ͱ͖ΔΑ͏ʹͳΔ
Θ͔Βͳ͍͜ͱΛ͑Δٕज़ॏཁ • Θ͔Βͳ͍͜ͱΛͪΌΜͱ͑Δͷ͍͠ • Θ͔Βͳ͍͜ͱ͕͋ΔͱɺͦͷΘ͔Βͳ͍··૬ஊͯ͠͠·͏ • ͦͷཻ͕େ͖͗͢Δͱɺฉ͖खԿ͕Θ͔Βͳ͍ͷ͔Θ͔Β ͣରԠ͕Ͱ͖ͳ͍
Θ͔Βͳ͍͜ͱΛཧղ͑͠ΒΕΔΑ͏ʹ • Λཧͯ͠ɺΓ͚ɺখ͘͞ղͰ͖ΔΑ͏ʹҙࣝͤ͞ Δ • ࣭Λͯ͠ɺҙ͍ࣝͯ͠ͳ͔ͬͨͱ͜ΖΛ͋ͿΓͩ͢ • ͍ͬͯΔ༻ޠ͕ਖ਼͍͔͠ͷ֬ೝ
λεΫͷݟੵΓͱܭը͕Ͱ͖Δ • ݟੵΓ͕Ͱ͖Δͱ͍͏͜ͱɺͦͷλεΫΛͲ͏͢ΕΕ Δ͔ͱ͍͏͜ͱ͕Θ͔Δͱ͍͏͜ͱ • ܭը͕Ͱ͖Δͱ͍͏͜ͱɺΞϥʔτΛ͋͛ΔλΠϛϯάΛࣗ ͰஅͰ͖Δ
ԿނݟੵΓͱܭըΛॏࢹ͢Δ͔ • ࣌ؒ༗ݶͳͷͰɺظ͢ΔظؒͰऴΘΔ͔ͱ͍͏͜ͱʹେ͖ ͍ؔ৺͕ΑͤΒΕΔ • ݟੵΓʹΑͬͯɺΔ͜ͱ͕໌֬ʹͳͬͨΓɺଞͷਓͱͷҙ ࣝ͋Θ͕ͤͰ͖ΔΑ͏ʹͳΔ • ܭըʹΑͬͯɺ͕ࣗͲ͜ʹ͍ͯɺຊདྷͲ͜ʹ͍ͳ͍ͱ͍͚ ͳ͍͔ΛҙࣝͰ͖ΔΑ͏ʹͳΔ
ࣄָ͍͠ʁ • Γ͍ͨͱࢥ͍ͬͯͨ͜ͱΛฏனؒʹͰ͖ΔΑ͏ʹͳΔͷͰɺ ؤுΓ͗͢Δ • λεΫΛҰਓͰᘳʹ͜ͳ͢ͱ͍͏ҙࣝͰΞϥʔτ͕͋͛ΒΕ ๊ͣ͑ࠐΉ • ࢦఠ͞ΕΔ͜ͱ͕ຯ
ଉൈ͖ͱܹ • దͳλΠϛϯάͰΛ͔͚ͯɺաूதΛආ͚Δ • Rails ։ൃํ๏ͳͲͷCͷΑ͏ͳΛҙࣝతʹ͢Δ • OSS ͷίϯτϦϏϡʔγϣϯνϟϯεΛڭ͑Δ •
ϓϩδΣΫτͱؔͷͳ͍ίʔυΛॻ͍ͯΒ͏
࠷ۙߦͬͨड͚ೖΕ
۩ମతʹͲ͏͍͏͜ͱΛ͔ͬͨ(1) • ࡞ۀΛᝦͰλεΫղͯ͠Β͍ɺݟੵΓΛ͠ɺΧϨϯμʔ ʹϚοϐϯάͯ͠ɺຖ࣮Λ֬ೝ͠ɺݟੵΓɺܭըͷ֬ೝ Λ͢Δ • ௨Γ͕͢ΓͷϝϯόʔʹΞδϟΠϧ TDD ͳͲͷӬͷΧϧ νϟʔͷՁʹͳ͍ͬͯΔ͜ͱͷࡶஊΛͯ͠Β͏
۩ମతʹͲ͏͍͏͜ͱΛ͔ͬͨ(2) • Γͳͦ͏ͳ͕ࣝΘ͔͖ͬͯͨͱ͜ΖͰɺීஈͷ࡞ۀͱผ ͷ՝(ࠓճ shell ࡞Γ)Λ༩͑Δ • ҧ͏ϓϩδΣΫτʹߦ͘લʹ;Γ͔͑ΓΛͯ͠ɺݱঢ়ͷ֬ೝͱ ࣍ͷظΛ͑Δ
ϓϩδΣΫτ֎ͷ׆ಈ
WebγεςϜ։ൃ͍͠ • ૿͑ଓ͚Δकඋൣғ • มΘΓଓ͚ΔτϨϯυ • ҠΓมΘΔࣗͷڵຯ
ࣗͷࣄʹର͢Δෆ҆ • ࣗͷಘҙྖҬͰղܾ͍ͯ͠Δ͚ͩͰɺຊʹͦΕ͕ྑ͍ํ๏ ͩͬͨͷ͔ • Rails + ݟͷͳ͍ͷϕετϓϥΫςΟε૬ͷ͜ͱ͕ਖ਼ ͍͔͠ݕূͰ͖ͳ͍
RailsʹಛԽͨ͠डୗձࣾͷδϨϯϚ • ઐՈΛޏ͑ΔΘ͚Ͱͳ͍ • ϓϩδΣΫτʹϩοΫΠϯ͞ΕΔͱ৽͍͜͠ͱΛܦݧͰ͖ΔՄ ೳੑ͕Լ͕Δ • Կͷٕज़ͷϓϩδΣΫτʹ͋ͨΔͷ͔༧ଌ͕ͨͯΕͳ͍
ԿނRailsΛࣙΊͳ͍ͷ͔(ݸਓͷݟղ) • ͓٬༷ͷΛզʑ͕ૉૣ͘ղܾ͢Δಓ۩ͱͯ͠ fit ͔ͨ͠Β • RubyΛબΜͰ͘ΕΔ͓٬༷ͱ૬ੑ͕Α͍ • RubyίϛϡχςΟ͕͖
ࠓޙRubyͰࣄΛ͍ͯͨ͘͠Ίʹ ΑΓ͏·͘ͳ͍͚ͬͯΔΑ͏ʹ
ͦ͜Ͱ࢝ΊͨऔΓΈ • ۀ࣌ؒͷ 10% Λҧ͏࡞ۀʹׂΓͯΔΈ͕͋Δ • ϓϩδΣΫτ֎ͷϝϯόʔͰνʔϜΛΉ • ࣗͷڵຯ͕͋Δٕज़ཁૉΛ༻͍ͯԿ͔Λ࡞Δ
͜ͷऔΓΈͷࢥ • Ұਓ͕શ෦͍ͬͯΔͱ͍͏ͷ͍͠ͷͰɺ୭͔͕Կ͔Λͬ ͍ͯΔͱ͍͏ঢ়گΛ࡞Δ • ϓϩδΣΫτͰͰ͖ͳ͍͜ͱΛΔ͜ͱͰʑͷܹΛ૿͢ • ීஈҙࣝ͠ͳ͍ͱࢼͤͳ͍͜ͱΛࢼͯ͠ܦݧͱͯ͑͠ΒΕ ΔΑ͏ʹ͢Δ
1 ଓ͚ͯΘ͔ͬͨ͜ͱ • ࠷ॳීஈͷ։ൃʹ͍͚ۙͲख͕·ΘΒͳ͍͜ͱΛҙ͕ࣝͨ͠ɺ ڵຯ͕ͦ͜·ͰͷͷΛܧଓ͢Δͷ͍͠ • औΓΈͷΰʔϧΛେ͖͗ͨ͘͢͠ • ܖͱ͕ͯ࣌ؒ֬͠อ͞Ε͍ͯΔͱ͍͑ɺϓϩδΣΫτঢ়گ ʹΑ͕ͬͯ࣌ؒ֬อ͞Εͳ͍
1ଓ͚ͨ݁ՌΛলͯ͠ • ՌΛٻΊͳ͍ • ษڧͰऴΘΒͳ͍Α͏ʹ͢Δ • ڵຯͱۀͷڑΛҙࣝ͢Δ
2ͷݱঢ় • 2 ਓνʔϜ͕ 2 ͭͱɺ 1 ਓνʔϜ͕ 1 ͭ
• ͍ͬͯΔ༰ɺΠϯϑϥɺϑϩϯτΤϯυɺαʔόϨεͳ Ͳ༷ʑ
·ͱΊ
ࣗͷࠜఈʹ͋Δ͜ͱ • ͪΌΜͱऴΘΒͤͭͭɺ͍͔ʹָ͕ࣗ͠ΊΔཁૉΛͭ͘Δ͔ • ࣗΛԿ͔͠ΒΞοϓσʔτ͍͖͔͚ͯͬ͘͠Λ࡞Δ
ͪΌΜͱऴΘΒͤͭͭɺָ͠ΊΔΑ͏ʹ • ݱ࣮Λݟͳ͕ΒऴΘΒͤΔ͜ͱ͕ɺΘͨ͠ͷࣄ • ࣄͱ͍͑ɺָ͘͠ͳ͍͜ͱ͋·ΓΓͨ͘ͳ͍ • ͜ΕΛཱ྆͢ΔͨΊʹɺࣗͷͰ͖Δ͜ͱΛ૿͍ͯ͘͠ඞཁ ͕͋Δ
ΞοϓσʔτΛ͢Δ͖͔͚ͬΛҙࣝ͢Δ • ಉ͡ΓํΛ͍ͯ͠Δ͜ͱɺΑ͍͜ͱ͔ͩΒͳͷ͔ɺଦੑͳ ͷ͔Λߟ͑Δ • ࠓΑΓΑ͍Γํ͕͋Δ͔ɺҧ͏͜ͱΛͬͯΈͳ͍ͱΘ͔ Βͳ͍
େࣄͳ͜ͱRubyɾRailsίϛϡχςΟ͔ ΒֶΜͩ • RubyRailsͷ·ΘΓʹ͍Δਓ͔ͨͪΒɺ͍ΖΜͳܹΛ͏͚ղ ऍͯ͠ɺࣗͷΓํΛࡧ͍ͯ͠Δ • RubyɾRailsίϛϡχςΟͰ͏͚ͨ͜ͱΛฦ͍͚ͯ͠ΔΑ͏ʹࣗ ͳ͍͖͍ͬͯͨ
࠷ޙʹ
OedoRubyKaigi02 • 2012/02 ʹߦΘΕͨ Asakusa.rb ͷ Meetup • جௐߨԋୡਓ Dave
Thomas • ςʔϚϥϕϧʹ͍ͭͯ
https://magazine.rubyist.net/ /articles/0039/ 0039-MetPragdaveAtAsakusarb.html
Ruby-ಓ(by Dave Thomas) • OOP ͚͕ͩ།Ұͷํ๏͡Όͳ͍ • खଓ͖ܕ͚͕ͩϓϩάϥϜΛॻͨͬͨ͘Ұͭͷํ๏Ͱͳ͍ • ”Α͍”ίʔυ͚͕ͩίʔυͳΘ͚͡Όͳ͍
• Ruby͕࠷্ͷϓϩάϥϛϯάݴޠͬͯΘ͚͡Όͳ͍ • ͦͦ࠷্ͷϓϩάϥϛϯάݴޠͳΜͯͳ͍
Α͍ߦಈΛ͠Α͏ by Dave Thomas Έͳ͞Μɺ࿅श͍ͯ͠·͔͢ʁɹࣗ৴खΛಈ͔ͯ͠࿅श͢Δ͜ ͱ͔Βੜ·Ε·͢ɻ͔ࣝΒੜ·Ε·ͤΜɻ͍ͭͲ͏ͬͯ࿅श ͨ͠Β͍͍ͩΖ͏ͱߟ͑·͠ΐ͏ɻͦΜͳΘ͚ͰɺΤΩεύʔτͱ ݺΕΔਓϕετϓϥΫςΟεɺϥϕϧΛ৴͢Δ͜ͱΊ·͠ΐ ͏ɻϥϕϧ͋ͳͨΛࢥߟఀࢭͤ͞·͢ɻϥϕϧ͋ͳͨΛʹΊ ·͢ɻϥϕϧ͕͋ͳͨΛڱΊΔ͜ͱʹͳΓ·͢ɻࣗࣗʹϥϕϧΛ
షΔͷΊ·͠ΐ͏ɻ͋ͳ͕ͨԿऀ͔͋ͳ͕ͨԿΛ͢Δ͔Ͱܾ ·Γ·͢ɻ໊ࢺͰͳ͘ಈࢺͰ͍·͠ΐ͏ɻΑ͍ߦಈΛ͠·͠ΐ͏ʂ