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
irof
December 15, 2018
Technology
27
19k
コードをどまんなかに据えた設計アプローチ
JJUG CCC 2018 Fall
2018-12-15T16:45+09:00
#ccc_e6
http://www.java-users.jp/ccc2018fall
irof
December 15, 2018
Tweet
Share
More Decks by irof
See All by irof
視座の上げ方
irof
1
55
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.8k
技術的負債の正体を知って向き合う
irof
0
690
関ジャバと言う場
irof
0
190
型で語るカタ
irof
2
1.5k
つよそうにふるまい、つよい成果を出すのなら、つよいのかもしれない
irof
1
420
複数アプリケーションを育てていくための共通化戦略
irof
9
5.2k
SpringBootにおけるオブザーバビリティのなにか
irof
1
1.2k
Javaアプリケーションモニタリングの基本
irof
7
2.8k
Other Decks in Technology
See All in Technology
まだ間に合う! Agentic AI on AWSの現在地をやさしく一挙おさらい
minorun365
17
2.9k
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
1
2k
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
AI との良い付き合い方を僕らは誰も知らない
asei
0
280
ハッカソンから社内プロダクトへ AIエージェント「ko☆shi」開発で学んだ4つの重要要素
sonoda_mj
6
1.7k
Identity Management for Agentic AI 解説
fujie
0
490
コールドスタンバイ構成でCDは可能か
hiramax
0
110
Next.js 16の新機能 Cache Components について
sutetotanuki
0
190
20251203_AIxIoTビジネス共創ラボ_第4回勉強会_BP山崎.pdf
iotcomjpadmin
0
140
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
520
Cloud WAN MCP Serverから考える新しいネットワーク運用 / 20251228 Masaki Okuda
shift_evolve
PRO
0
110
テストセンター受験、オンライン受験、どっちなんだい?
yama3133
0
180
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
Into the Great Unknown - MozCon
thekraken
40
2.2k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.8k
Docker and Python
trallard
47
3.7k
Paper Plane
katiecoart
PRO
0
44k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
83
Joys of Absence: A Defence of Solitary Play
codingconduct
1
260
Transcript
ίʔυΛͲ·Μͳ͔ʹ ਾ͑ͨ ઃܭΞϓϩʔν ++6($$$'BMM 5 DDD@F !JSPG
JSPG w;ͭ͏ͷϓϩάϥϚ wݸਓࣄۀओੜ wେࡕ wؔ+BWBΤϯδχΞͷձͱ͔
ҙ w্ڃऀ͚ηογϣϯͰ͢ɻ w ฉ͍ͯ͘ΕΔօ͞·ʹ্ڃऀ w ͢ࢲʹॳ৺ऀ wຊηογϣϯ͑Λఏڙ͢ΔͷͰ ͋Γ·ͤΜɻ
ίʔυͱઃܭͷ
ίʔυ͕ઃܭʜʜ wͱ͔ݴ͏͚Ͳɻ wݴ͑·͢ʁ wͰ͖ͯ·͢ʁ
ొਓ ઃܭ υΩϡ ϝϯτ ίʔυ
ઃܭඞཁʁ w࡞Δͷ͕ͳ͍ͱ࡞Γ࢝ΊΒΕͳ͍ɻ w ʮ৺ͷதͰࢥͬͨΒऴΘͬͯΔਓʯͳΒͰ͖Δ͔ɻ wʮԿΛ࡞Δ͔΅ͬͱࢥ͍ඳ͘ʯ͚ͩ Ͱઃܭɻ wͳͷͰɺઌʹઃܭ͢Δɻ w ඞཁͱ͔ඞཁ͡Όͳ͍Ҏલͷɻ
ίʔυඞཁʁ wඞཁɻ w ʮίʔσΟϯάෆཁʯͱ͔ݴ͏ͷɺͦΕίʔ υͩΖͱ͔ࢥͬͯͨΓɻ wίʔυෆཁઢɻલఏʹ͢Δɻ
υΩϡϝϯτඞཁʁ wཁΔʁඞͣʁ͍ͭʁͳΜͰʁ
ઌʹυΩϡϝϯτ͕ඞཁʁ wखΓ͠ͳ͍Α͏ʹυΩϡϝϯτͰ߹ ҙ͔ͯ͠ΒਐΊ͍ͨɻ w ίετͷɻΘ͔Βͳ͘ͳ͍ɻ
ޙͰυΩϡϝϯτ͕ඞཁʁ wϝϯςφϯεͷͨΊʹɺͲͷΑ͏ʹ࡞ ΒΕ͍ͯΔ͔ɺԿΛ͍ͯ͠Δͷ͔Λ Γ͍ͨɻ w Θ͔Δɻ
ಉ࣌ʹυΩϡϝϯτ͕ඞཁ wυΩϡϝϯτ͑ΔͷͳͷͰɺྲྀ ੴʹಉ࣌ʹඞཁͰͳ͍ͱࢥ͏ɻ wͱΓ͋͑ͣਂ͘ߟ͑ͳ͍ɻ
͜Μͳײ͡ʁ ઃܭ υΩϡ ϝϯτ ίʔυ ߟ͑Δ͜ͱ ࡞Δͷ ݟΔͷ ಈ͘ͷ
࠶υΩϡϝϯτඞཁʁ wίʔυ͡Όμϝͳͷʁ
ʮίʔυΛͲ·Μͳ͔ʹʯ %FW-07&ؔDPNNJUNFOU IUUQTTQFBLFSEFDLDPNJSPGLPEPXPEPNBOOBLBOJ
υΩϡϝϯτͳͤ͘Δʁ wίʔυ͚ͩͩͱ͍͔͠ΒυΩϡϝϯ τ͕ଘࡏ͢Δɻ w Կߟ͑ͣʹແ͘͢ͷΠϚΠνͩΖ͏ɻ w ແ͔ͯ͘͠Βߟ͑Δͬͯख͋Δ͚Ͳɻ
υΩϡϝϯτͷׂ wཧղͷͨΊʹ͋Δɻ w ԿΛ͠Α͏ͱ͍ͯ͠Δ͔͕Θ͔Δɻ w ԿΛ͍ͯ͠Δ͔͕Θ͔Δɻ
Θ͔Γ͍͢ίʔυΛॻ͚ʂ wͬͯݴͬͯݶք͋Δɻ w ͜Ε͜ΕͰॏཁͳΜ͚ͩͲɻ wυΩϡϝϯτΑΓΘ͔Γ͘͢ॻ ͚ͳ͍ɻ w ਓʹ͚ͩಡ·ΕΔυΩϡϝϯτͱɺػցͱਓ ͷ྆ํʹಡ·ΕΔίʔυɻͲͪΒ͕ਓʹΘ͔ Γ͘͢Ͱ͖Δ͔Λߟ͑Εɻ
ಡΈ͕͢͞ ༏ઌͰ͖Δ ಡΈ͢͞Λ ༏ઌͰ͖ͳ͍
ίʔυΘ͔ΓͮΒ͍ wࣄ࣮ɻࣄ࣮ड͚ೖΕΔɻ wίʔυʹʮͲ͏ಈ͔͘ʯؒҧ͍ͳ͘ ͋Δ͕ɺʮͲ͏͍͔ͨ͠ʯඍົɻ w ͦΕΛ୲͏υΩϡϝϯτ͕͋ΕബΕΔɻ
ίʔυίετ͕͔͔Δ w͜ΕͳΜͱ͔ͳΔɻʢޙड़ʣ
ίʔυʹ࣠Λஔ͘
ίʔυͰઃܭ͍ͨ͠ wص্ͷυΩϡϝϯτ࣮͠͠ݱෆ ՄೳͩͬͨΓɺݱ࣮͔Βဃͯͨ͠Γ ͢Δɻ w ࣗવݴޠࣗ༝ͳਤ߹ੑ͕औΓͮΒ͍ɻ w ͠͠ͳ͍͕͠Ζʹ͞ΕΔɻ
ʮίʔυΛॻ͖͍ͨʯ ͱݴ͏ࣗΛͳͩΊΔ ͷ͕໘
ґଘؔͷٯస wׂͦͷ··ɻ wυΩϡϝϯτ͔ΒίʔυͰͳ͘ɺίʔ υ͔ΒυΩϡϝϯτʹɻ wҙਤΛࠐΊͯίʔυΛॻ͍ͯɺҙਤ͕ දݱ͞ΕͨυΩϡϝϯτΛݟΔɻ w ཧղυΩϡϝϯτʹͤΔɻ
͜Μͳײ͡ ઃܭ υΩϡ ϝϯτ ίʔυ ߟ͑Δ͜ͱ ࡞Δͷ ݟΔͷ ಈ͘ͷ
None
ઃܭͷϧʔϓ ઃܭ υΩϡ ϝϯτ ίʔυ
ίʔυࢀՃͤ͞Δ ઃܭ υΩϡ ϝϯτ ίʔυ
ίʔυʹΑΔઃܭ
ઃܭʹҙਤ͕͋Δ
ίʔυ͕ઃܭͱݴ͏ʹ wίʔυ͔ΒҙਤΛಡΈऔΕΕ͍͍ɻ w͔͠͠ɺίʔυ͔ΒҙਤΛಡΈऔΔͷ ͍͠ɻ
ίʔυͱҙਤ wҙਤ͕ࠐΊΒΕ͍ͯΔ͔ո͍͠ɻ wҙਤΛࠐΊͨͭΓͷίʔυͰɺࣗ ͰಡΈऔΕͳ͔ͬͨΓ͢Δɻ w ͜ΕυΩϡϝϯτจষͰಉ͚ͩ͡Ͳɻ
࣮ݱ͍ͨ͜͠ͱ wίʔυʹҙਤΛࠐΊΔํ๏ w ߟ͑ͯΔ͜ͱΛશ෦ίʔυʹॻ͘ɻ w ܽམͨ͠ΓྼԽͨ͠Γ͠ͳ͍ํ๏Ͱɻ wࠐΊΒΕͨҙਤͷυΩϡϝϯτԽ w Ίͣɺ࣮֬ʹɺߴͰɺίετͰɻ
͕ࣗίʔυΛಡΉ࣌ wϓϨʔϯςΩετͰಡΜͰͳ͍ɻ w গͳ͘ͱγϯλοΫεϋΠϥΠτɻ w*%&ͷػೳΛͬͯಡΜͰΔɻ w ఆٛͷδϟϯϓ׆༻͢Δ͠ɺׅހͷڧௐද ࣔͱ͔ɺܕ֊ɺݺͼग़͠֊ͳΜ͔Έͨ Γ͢Δɻ
ͭ·ΓϏϡʔΞʔ͔ wίʔυΛυΩϡϝϯτͱͯ͠ݟΕΔ ϏϡʔΞʔ͕͋Ε࣮ݱ͢Δ wίʔυʹࠐΊͨͭΓͷҙਤ͕දݱͰ ͖͍ͯΔ͔ͦΕͰ֬ೝͰ͖ΔͷͰ
ίʔυ͕υΩϡϝϯτ ʹݟ͑Ε ίʔυͰઃܭͰ͖Δ Ծઆ
ϧʔϧ͚ wυΩϡϝϯτԽΛલఏʹͨ͠ίʔυͷ ॻ͖ํΛϧʔϧԽ͢Δɻ wͨͩ͠ɺυΩϡϝϯτԽͷͨΊʹίʔ υ͕Ήͷڐ༰Ͱ͖ͳ͍ɻ
͍͍ίʔυ υΩϡϝϯτԽ͕༰қ Ծઆ
࣮ݱํ๏
ҙਤΛಡΈऔΔͨΊͷ४උ
ࡾʴυϝΠϯϞσϧ IUUQTHJUIVCDPNTZTUFNTFLLFJJTPMBUJOHUIFEPNBJO
ࡾʴυϝΠϯϞσϧ wυϝΠϯʹযΛ߹ΘͤΔͨΊʹɺଞ ͷ͋ΒΏΔͷ͔Βִ͢Δɻ wυϝΠϯ͔Β࣮߹ΛഉআͰ͖Δɻ w ࣮߹ͷݴ͍༁͕Ͱ͖ͳ͘ͳΔɻ w ࣮ࡍΔͱ࣮߹ग़ͯ͘Δ͚ΕͲɺഉআ Ͱ͖Δɻڧ͍ҙࢤͱٕज़͕͋Εɻ
ʮυϝΠϯϞσϧʯͬͯʁ wʮυϝΠϯϞσϧʯͩͱΑ͘Θ͔Βͳ ͍ͷͰɺυϝΠϯϞσϧශ݂ʹͳͬ ͨΓɺυϝΠϯ͡Όͳ͍ͷ͕υϝΠ ϯʹೖͬͨΓ͢Δɻ w ʮೖग़ྗۀͰѻ͏͔ΒυϝΠϯʯͱ͔ݴ ͍࢝ΊͨΓɻ
ʮϏδωεϧʔϧʯ ͷΈΛऔΓѻ͏ ۀγεςϜΛલఏʹ͢Δ
࣮߹ ೖग़ྗ ϏδωεϧʔϧͷΈ
wࡾʴυϝΠϯϞσ ϧͷجຊతͳ࣮ํ ๏ʮݱͰཱͭ γεςϜઃܭͷݪଇʯ Λࢀরɻ
+*( wࡾʴυϝΠϯϞσϧͷΞʔΩςΫνϟ Ͱ࣮͞Εͨίʔυ͔Βੳɾઃܭ ใΛग़ྗ͢Δπʔϧɻ w+BWB*OTUBOUEPDVNFOU(B[FS w υΩϡϝϯτҰ࣌తʹݟΔͷ IUUQTHJUIVCDPNEEEKBWB+JH
+*(υΩϡϝϯτ wίʔυʹࠐΊͨઃܭҙਤΛදݱ͢Δɻ wੳɾઃܭͷิॿʹ͏ɻ wҰ࣌తͳͷɻอଘ͠ͳ͍ɻ w υΩϡϝϯτϝϯςφϯεରͰͳ͍ɻ
+*(υΩϡϝϯτ
ࣗͷࢹΛίʔυԽ wίʔυΛಡΉͱ͖ɺखݩ಄ͷதʹඳ ͍ͯΔͭɻ w Ϋϥεਤͱ͔ɻγʔέϯεਤͱ͔ɻݺͼग़͠ ֊ͱ͔ɻ͍͍ͩͨΦϨΦϨϞσϧɻ
Ϗδωεϧʔϧʹྗ͢Δ w൚༻తͳΫϥεਤͰͳ͍ɻ wϏδωεϧʔϧΛࡍཱͨͤΔɻ
ಡΈऔΓྫ
+*(ͷύοέʔδґଘਤ
ίΞʹͳΔͱ͜Ζ
ίΞʹͳΔͱ͜Ζ
ҙਤΛࠐΊΔ ίʔσΟϯά
ܕʹҙਤΛࠐΊΔ
4USJOHͳͲʜʜ wۀʹඞཁͳϩδοΫ͕ͳ͍ɻ wۀʹؔͳ͍ϩδοΫ͕ଟ͗͢Δɻ wѻ͑Δ໘͕ଟ͗͢Δɻ wॊೈͱݺͳ͍ɻ؇͍͚ͩɻ
ಛԽͨ͠ܕΛݶఆతʹ͏ wۀ্ඞཁͳϩδοΫ͚ͩΛ࣋ͭɻ wۀ্ѻΘΕΔ໘͚ͩͰѻ͑Δɻ
+BWBΛ͏ͷ͔ͩΒ wίϯύΠϥʹશྗͰࣄΛͤ͞Δɻ w੩తʹܾఆͤ͞ɺऔΓҧ͕͑ى͜ΓΑ ͏ͷͳ͍ઃܭʹ͢Δɻ w ҾͷޡΓ͕ࠜຊతʹͳ͘ͳΔɻ w ؾΛ͚ͭͨΓҙࣝͨ͠Γ͢Δ͜ͱͷϦιʔ ε͕ղ์Ͱ͖Δɻ
4USJOHTUS͕͋ΒΘΕͨ ͋͋ɺ͋ΕͶɻ ίϝϯτॻ͍͓ͯ͜͏ɻ ม໊ม͑Α͏ɻ Ϋϥε࡞Ζ͏ɻ
Կ͠ͳ͍ wΕͨΒ·ͨΉ͜ͱʹͳΔɻ w·ͨଞͷਓΉɻ wͦͷίετ͍ଓ͚Δͷʁ
ίϝϯτɺม໊ wϝϯς͞ΕΔ͔ඍົͳͱ͜Ζɻ wผͷॴͰొͨ͠ͱ͖ʹಉ໊͡લΛ ͚ͭΕΔʁ wಉ໊͡લͷಉ͡ʁҧ͏ʁ wऔΓҧ͑͛ͳ͍ɻ
ΫϥεΛ࡞Δ wྫ͑.BJM"EESFTTΫϥεΛ࡞Δɻ w͜Ε·ͩୈҰาɻ w ͦͷۀͷͯ͢ͷϝʔϧΞυϨεಉ͡Α͏ ʹΘΕΔʁͦΜͳΘ͚ͳ͍ͳΒɻ wྫ͑'SPN5PͰผʹ࡞Δɻ w ͦͷۀϝʔϥʔͳͷʁ w
ͬͱద໊ͨ͠લ͋ΔΑͶଟɻ
2Ͳ͜·Ͱࡉ͔ͳΫϥε࡞Δͷʁ "Ͳ͜·Ͱɻ
͑ɺͰʜʜ
૿͑͗ͯ͢ऩर͕ʜ wۀ͕ͦΕͰѻͬͯΔͷͰ͠ΐʁ wͦͷఔͷ͕ѻ͑ͳ͍Ͱɺۀ։ൃ ͱ͔Α͘ݴ͑Δɻ
%3:͡Όͳ͘ͳΔ wಉ͡ॲཧ͕ෳඞཁʹͳΓɺमਖ਼ͷԣ ฒͼ͕ඞཁʹͳΔɻ w ͦΕઃܭϛεɻϛεΒͳ͍ͨΊʹखൈ͖Λ ਖ਼Խ͍͚ͯ͠ͳ͍ɻ
Ϋϥε࡞Δͷ໘ w࡞ΔͷҰॠͰ͠ΐʁ w͏ͷͣͬͱͰ͢Αɻ
Φʔόʔϩʔυ͕૿͑Δʁ wෳͷͷΛѻͬͯΔͳΒɺͦΕ͕ਖ਼ ͍͠ɻ wಉ͡ͷͱͯ͠ѻ͍ͬͯΔͳΒɺඞཁ ͳͷมۀɻ
ଞʹԿ͔ʁ wص্ͷۭͰͳ࣮͘ʹ͖߹ͬͯ ίʔυΛॻ͖ͳ͕Βݕ౼͍ͨ͠ɻ
wಉ͡Α͏ʹѻΘΕ͍ͯΔͷΛ۠ผ͢ ΔΑΓɺผʑͷͷΛಉ͡Α͏ʹѻ͏ ํ͕҆શɻ wಉ͡ʹͳͬͨΒ͚ͬͭ͘Ε͍͍ɻ ͍͕͠ɺ౷߹͢Δͷ؆୯ɻ w গͳ͘ͱ+BWBͷίʔυͰɻ
࣮ࡍͷΓํ
*%ͷઃܭ wͳΜͪΌΒ*%͕ͨ͘͞Μ w ԿΛࣝผͯ͠Δͷʁ w Կछྨ͋Δͷʁ w ͲΜͳ൪߸ମܥͳͷʁ w Ͳ͏ͬͯੜ͢Δͷʁ
w ͍ͭΘΕΔͷʁ
String newShipIdentifier() { return UUID.randomUUID().toString(); } ίʔυʹॻ͔Ε͍ͯΔ͕ʜʜ ଞͷํ๏ͰੜͰ͖ͯ͠·͏ɻ ଞͷ͜ͱʹ͑ͯ͠·͏ɻ
class ShipIdentifier { String value; public ShipIdentifier() { value =
UUID.randomUUID().toString(); } ... } ધ*%Ͱࣝผ͞ΕΔɻ ൪߸ମܥ66*%ɻ ੜՕॴίϯετϥΫλͷࢀরɻ ༻ՕॴΫϥεࢀরɻ
*%ܕΛݸผʹͭ͘Δ wछྨࣝผͰ͖Δͷ͕Θ͔Δ w ҰཡʹͰ͖Δ w൪߸ମܥΫϥεΛݟΕΘ͔Δ w༻ՕॴΘΕํίʔυͰΘ͔Δ w ϝιουγάωνϟࢀরͳͲ w ҰཡμΠΞάϥϜʹͰ͖Δ
۠ͷઃܭ wFOVNͰࣔ͢ɻ w ѻ͏۠ΛҰཡԽͰ͖Δ w۠ͷѻΘΕํΛFOVNʹ࣮͢Δɻ
String sheetTypeCode = "1"; sheet_type_code | name ================|======= 1 |
ࣗ༝੮ 2 | ࢦఆ੮ 3 | άϦʔϯ੮ Α͘ݟΔίʔυͱ%#ͷΈ߹Θͤ
enum SheetType { ࣗ༝੮, ࢦఆ੮, άϦʔϯ੮ } ୯ͳΔྻڍͰɺͲ͏ݴ͏۠ ͕͋Δ͔දݱͰ͖͍ͯΔɻ
۠ͷ+*(υΩϡϝϯτ όϦΤʔγϣϯ Ͳ͜ͰΘΕ ͍ͯΔ͔ ͲΜͳFOVN͔
͑ɺϋʔυίʔσΟϯάʁ wϏδωεϧʔϧΛ࣮͢ΔͷͰ͋Εɺ ۠ͷՃͳͲ͕͋ͬͨ߹Ͳ͏ͤ σʔλͩͱରԠͰ͖ͳ͍ɻ
w൚༻తͳઃܭΕɺͲ͜·ͰಛԽ ͢ΔɻநԽͱ͔΄ͱΜͲ͍Βͳ͍ɻ ۀநͳΜͯͯ͠ͳ͍ͷͰɻ wநԽ͞Ε͏ΔϏδωεϧʔϧຆͲ ͳ͍ͱ࣮ײ͍ͯ͠Δɻ w ·ͩୈҰײͩͱΠϯλϑΣʔεͱ͔࡞ͬͯͪΌ ͏Μ͚ͩͲɺۀཧղ͕ਐΉͱશ෦ফ͑ͨɻ
ҙਤ͕ബΕΔ ίʔσΟϯάελΠϧ
൚༻ܕͰड͚͠ ൚༻ܕ4USJOHJOU *OUFHFSͳͲ
ShopIdentifier shopId = ... SchoolIdentifier schoolId = new SchoolIdentifier( shopId.toString());
γϣοϓͱεΫʔϧΛѻ͏ۀɻ γϣοϓʹεΫʔϧΛซઃ͢Δ߹ ಉ͡*%Λ͏Α͏͕ͩɺຒΕ ͯ͠·͏ɻ
ᐆດͳΫϥε
class Name { ... } School school = new School(name);
User employee = new User(name); ܕΛ࡞Δҙຯ͕ͳ͍ɻ ֶߍ໊ͱϢʔβʔ໊͕ಉ͡ͱ ͍͏ۀͳΒਖ਼͍͕͠ʜʜ
+*(Λͬͨઃܭ IUUQTHJUIVCDPNJSPGKKVHDDDF
༻ޠूΛ࡞Ζ͏
વΤΫηϧͰ ͍(PPHMF4QSFBE4IFFUͩ ςΩετͰΑ͘Ͷʁ ͜ʔͲ͔͖͍ͨ
+*( Ϋϥε࡞Δ
؆୯Ͱ͠ΐʁ wۭͷΫϥεͰ͍͍ɻ wΫϥε໊ͱ+BWBEPDίϝϯτΛॻ͘ɻ w͜Ε͚ͩͰʮυϝΠϯͰѻ͏ݴ༿ʯΛ ίʔυʹͰ͖Δɻ
ʮ+BWBEPDͰ͍͍͡ΌΜʯ wʮυϝΠϯͷ༻ޠҰཡʯͷυΩϡϝϯ τɺඪ४+BWBEPDͩͱݫ͍͠ɻ w ༻ޠूײ͕ͳ͍ɻ w ଞͷใ͕ଟ͗͢Δɻ w ·͋EPDMFUͰग़͍͍ͯ͠ɻ࠷ॳEPDMFUͰ Ζ͏ͱͨ͠ɻ
ॳظϞσϧΛ࡞Ζ͏
વΤΫηϧͰ 6.-πʔϧͰඳ͖͘ ϗϫΠτϘʔυʹඳ͍ͯ ࣸਅͱͬͱ͜͏ ͜ʔͲ͔͖͍ͨ
+*( QBDLBHFJOGPKBWBʹ ύοέʔδ໊Λॻ͘ ϑΟʔϧυͳͲͰ ؔ࿈͚ͮΔ
؆୯Ͱ͠ΐʁ wͱʹ͔ؔ͘࿈͚͍͍ͮɻ wؔ࿈ํଥੑΛઃܭ͢Δɻ wΦϒδΣΫτΛ͔࣋ͭɺࣝผࢠ͚ͩͰ ͍͍͔ͳͲޙͰ͍͚͍͍ͬͯɻ
ѻ͏Λઃܭ͢Δͥ
+*( Ұཡ όϦσʔγϣϯҰཡ ग़ՙɺਖ਼ͷ
؆୯Ͱ͠ΐʁ wΫϥεϏδωεϧʔϧஔ͖ɻ wαʔϏεͱ͔ίϯτϩʔϥʔͱ͔Ϧϙ δτϦʔͱ͔ʹॻ͔ͣɺΫϥεʹॻ͍ ͍ͯ͘ɻ
ίʔυͰͰ͖Δͤ wಉ࣌ฤूڝ߹ʹڧ͍ɻ wγʔϜϨεʹৄࡉԽͰ͖Δɻ wϝϯςφϯεΕͳ͍ɻ wΜͩΓมΘͬͨΓݕ͍͢͠ɻ
w+*(ʮίʔυʹࠐΊͨઃܭҙਤʯΛ ϞσϦϯά͢Δɻ w ࡞ΔաఔͰ৭ʑؾ͖ͮ͋ͬͨɻ wࢲͷઃܭʹཱ͍ͬͯΔɻͳ͏ɻ
લఏͱͳΔ͜ͱ
આ໌Ͱ͖ΔίʔυΛॻ͘ wҰݴҰ۟આ໌Ͱ͖Δ͜ͱɻ wઆ໌Ͱ͖ͳ͍ίʔυΛॻ͍͍ͯΔͱɺ ͔ͳΓݫ͍͠ɻ
ίʔυৗʹಈ͘ wಈ͔ͳ͍ίʔυͨͩͷจࣈྻɻ wίϯύΠϧ௨Βͳ͍ͱ͔ҙຯͳ͍ɻ wίʔυಈ͘͜ͱʹՁ͕͋Δɻ w ςετίʔυͷՁʮաڈʹಈ͍ͨʯͰ ͳ͘ʮࠓ͙͢ಈ͘͜ͱΛࣔͤΔʯ͜ͱʹ͋Δɻ
໊લͷ۠ผ wৗձͰɺಉ͡ͷΛผͷݺͼํΛ͠ͳ͍ɻ w ձһɺར༻ऀɺϢʔβʔɺΞΧϯτ͕͋ΔͳΒɺ໌֬ʹ ͍͚Δɻ w ಉ͡ͷΛࢦ͢ͳΒݺͼํΛ҆ఆͤ͞Δɻ wʮ"ͬͯԿͰ͢ʁʯʮ#ͷ͜ͱͰ͢ʯ w ͜͏͍͏ൃݴ͕ग़Δ͜ͱࣗମ͕·͍ͣɻ
wಉ͡ͷ͕ผͷ໊લͰݺΕΔɻ w ͜Εࣄ࣮ͱͯ͠ଘࡏ͢Δɻ w ڲਖ਼Ͱ͖ͳ͍ͳΒɺ͖ͬͱԿ͔͕ӅΕͯΔɻ w ͦΕΛʮͲͬͪͰ͍͍ʯͱ͢ΔͳΒݫ͍͠ɻ
ίʔυΛͲ·Μͳ͔ʹ
ίʔυ͕Ͳ·Μͳ͔ʹ͋Ε ͤʹͳΔΑ wίʔσΟϯάͨ͘͞ΜঝೝཉٻΛຬ ͨͯ͘͠ΕΔɻ w ίϯύΠϧ௨ͬͨɻ w ςετ௨ͬͨɻ w ಈ͍ͨɻ
w ͔ͯλΠϓͯ͠Δ͚ͩͰɻολʔϯɻ wίʔυॻ͘ͷָ͍͔͠ΒɺίʔυΛॻ ͘͜ͱΛਖ਼ԽɻͦΜͳΞϓϩʔνɻ