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
32
11k
Javaのリリースモデル変更 その後
irof
0
88
プールにゆこう
irof
2
300
Javaマルチバージョンビルディング
irof
1
390
データ/データベースパターン
irof
0
180
勉強会で話すハードルを下げてみる
irof
0
360
Gatlingによる負荷テスト入門
irof
6
2.6k
これからのJavaのとっかかりを掴む
irof
0
11k
Listかもしれない
irof
2
530
Other Decks in Technology
See All in Technology
AI×医用画像の現状と可能性_2024年版/AI×medical_imaging_in_japan_2024
tdys13
0
440
組み込みアプリパフォーマンス格闘記 検索画面編
wataruhigasi
1
180
小学3年生夏休みの自由研究「夏休みに Copilot で遊んでみた」
taichinakamura
0
190
LINE Developersプロダクト(LIFF/LINE Login)におけるフロントエンド開発
lycorptech_jp
PRO
0
150
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
410
大規模言語モデルとそのソフトウェア開発に向けた応用 (2024年版)
kazato
1
160
AWS環境におけるランサムウェア攻撃対策の設計
nrinetcom
PRO
1
270
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
3
1.5k
生成AIをより賢く エンジニアのための RAG入門 - Oracle AI Jam Session #20
kutsushitaneko
4
320
UI State設計とテスト方針
rmakiyama
4
890
20241220_S3 tablesの使い方を検証してみた
handy
4
780
12 Days of OpenAIから読み解く、生成AI 2025年のトレンド
shunsukeono_am
0
670
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
We Have a Design System, Now What?
morganepeng
51
7.3k
Scaling GitHub
holman
459
140k
Building an army of robots
kneath
302
44k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
Building Adaptive Systems
keathley
38
2.3k
Testing 201, or: Great Expectations
jmmastey
41
7.2k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.4k
Mobile First: as difficult as doing things right
swwweet
222
9k
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ίʔυॻ͘ͷָ͍͔͠ΒɺίʔυΛॻ ͘͜ͱΛਖ਼ԽɻͦΜͳΞϓϩʔνɻ