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
scala introduction 2018.06.12
Search
matsutomu
June 12, 2018
Programming
0
150
scala introduction 2018.06.12
scala introduction
matsutomu
June 12, 2018
Tweet
Share
More Decks by matsutomu
See All by matsutomu
scala recommend learning materials
matsutomu
0
130
Other Decks in Programming
See All in Programming
Front-end application development, Symfony-style(s)
dunglas
2
1.9k
SwiftUI Performance 不要なViewの再描画と更新を抑える
bigamitiongit
1
160
Ruby GitHub Packages
bkuhlmann
0
630
ONE WEDGE_company_guide
1wedge_one
0
430
educure_カリキュラム生操作マニュアル.pdf
linew_official
0
630
Hanami and htmx
bkuhlmann
0
200
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
42
18k
Anthropic Cookbook のおすすめレシピ
schroneko
6
550
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
130
Folding Cheat Sheet #2
philipschwarz
PRO
0
120
MicrosoftのPlatform Engineeringガイドを読んで実際になにかやってみた
ymd65536
1
210
try! Swift Tokyo 2024のLT枠に採択されたプロポーザルを出すときに考えていたこと
ski
0
350
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
504
110k
Fantastic passwords and where to find them - at NoRuKo
philnash
36
2.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
77
42k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
658
120k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
240
1.2M
No one is an island. Learnings from fostering a developers community.
thoeni
15
2.1k
We Have a Design System, Now What?
morganepeng
42
6.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
115
18k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
What's new in Ruby 2.0
geeforr
337
31k
Clear Off the Table
cherdarchuk
83
310k
Transcript
4DBMB*OUSPEVDUJPO .BUTVNPUP5TVUPNV !NBUTVUPPN
͡Ίʹ ࣗݾհ ɹɹদຊɹ ɹɹձࣾһʢ౦ژຊࣾͷاۀۈʣ ɹɹόϦόϦ։ൃʂͯ͠·ͤΜ ɹɹ͕ɺݸਓతʹ4DBMBʹڵຯΛ͕࣋ͬͯͨͪ·ͨ͠ ɹɹͬͱ4DBMBͷྗΛʹ͚͍ͨதஉͰ͢
͡Ίʹ 4DBMBʢεΧϥʣͱʁ
͡Ίʹ εΠε࿈Պେֶ &1'- ϚʔςΟϯɾΦʔμεΩʔڭत ൚༻ݴޠεέʔϥϒϧͰͳͯ͘ͳΒͳ͍ɻ ಉ֓͡೦Ͱɺখ͍͞ϓϩάϥϜେ͖ͳϓϩάϥϜهड़Ͱ͖Δ͖Ͱ͋Δɻ εέʔϥϏϦςΟؔܕݴޠͱΦϒδΣΫτࢦݴޠͷ ͭͷϓϩάϥϛϯάͷ֓೦Λ౷߹͠ɺҰൠԽ͢Δ͜ͱʹΑΓ࣮ݱͰ͖Δɻ #Z8JLJQFEJB
͡Ίʹ ྺ࢙ ࠒʹطʹઃܭ͕ਐΊΒΕ͓ͯΓ ʹެ։͞Ε͍ͯΔɻ ࠒʹUXJUUFSͷόοΫΤϯυʹ࠾༻ ʹେ෯ͳมߋͷ4DBMB͕ϦϦʔε ݱࡏͷόʔδϣϯ IUUQTXXXTDBMBMBOHPSH
͡Ίʹ ΦϒδΣΫτࢦɹͱɹؔܕݴޠͷಛΛ ߹Θͤ࣋ͭϓϩάϥϛϯάݴޠ +7.Ͱಈ࡞͠·͢
͡Ίʹ ͱݴ͍ग़͢ͱɺएׯখ͍͠ͷͰ
͡Ίʹ ֶͼॳΊ͙ͯ͢ʹಈ͔ͤΔ ߏจͷޡΓίϯύΠϧ࣌ʹ ͔ͬ͠ΓνΣοΫͯ͘͠ΕΔ ༏͍͠ϓϩάϥϛϯάݴޠ
͡Ίʹ ͱݴ͏ࣄͰ ·ͣಈ͔ͯ͠Έ·͠ΐ͏
4DBTUJF IUUQTTDBTUJFTDBMBMBOHPSH
4DBTUJF )FMMP4DBMB
4DBTUJF มએݴར༻
3&1- ଞʹ
3&1- ؆୯ʹ4DBMBͷίʔυยΛ࣮ߦՄೳ
3&1- ৭ʑͳߏจ͕ࢼͤ·͢
3&1- ৭ʑͳߏจ͕ࢼͤ·͢ WBMOBNFl!NBUTVUPNVz WBSNPOFZ
3&1- ৭ʑͳߏจ͕ࢼͤ·͢ GPS YUP \ QSJOUMO Y ^
3&1- WBMDPOEJUJPOlѱ͍ DPOEJUJPONBUDI\ DBTFྑ͍QSJOUMO ͘·Ͱࣄ͢Δ DBTFѱ͍QSJOUMO ̎̍࣌͝Ζʹؼ͢Δ ^
3&1- WBM BHF DPOEJUJPO த ѱ͍ BHF DPOEJUJPO
NBUDI\ DBTF த ྑ͍ QSJOUMO ૣ৸ૣى͖ʹͳΔ DBTF த ѱ͍ QSJOUMO ૣ৸ૣى͖ʹͳΔ DBTF த @ QSJOUMO ૣ৸ૣى͖ʹͳΔ DBTF @ ྑ͍ QSJOUMO ૣ৸ૣى͖ʹͳΔ DBTF @ ѱ͍ QSJOUMO ૣ৸ૣى͖ʹͳΔ DBTF @ @ QSJOUMO ૣ৸ૣى͖ʹͳΔ ^
4VSQSJTF ಥવͰ͕͢ɾɾɾ
4VSQSJTF ͜͜ͰΫΠζͰ͢
4VSQSJTF ϕΫτϧ a, b ͕ߦ͢Δ͔Λఆ͢Δࣜʁ (ax1, ay1 ) (ax0 ,
ay0 ) (bx0 , by0 ) (bx1 , by1 ) a b ʢࢀߟʣʰϓϩάϥϛϯάίϯςετ߈ུͷͨΊͷΞϧΰϦζϜͱσʔλߏʱɹ *4#/
4VSQSJTF
4VSQSJTF ϕΫτϧ a, b ͕ߦ͢Δ͔Λఆ͢Δࣜʁ (ax1, ay1 ) (ax0 ,
ay0 ) (bx0 , by0 ) (bx1 , by1 ) a b ͑ ϕΫτϧͷੵ͕̌ͷ߹ʹߦ͢Δɻ aɾb = |a||b|cosθ = ax * bx + ay * by
4VSQSJTF PCKFDU$HM4BNQMF\ DBTFDMBTT1PJOU Y%PVCMF Z%PVCMF \ EFG Q1PJOU 1PJOU1PJOU UIJTY
QY UIJTZ QZ ^ UZQF(FP7FDUPS1PJOU ੵ EFGEPU B1PJOU C1PJOU %PVCMFBY CY BZ CZ EFGJT0SUIPHPOBM B(FP7FDUPS C(FP7FDUPS #PPMFBOEPU B C ^
࣮༻ྫ Ͳ͏Ͱ͠ΐ͏͔ʁ ༏͍͠ϓϩάϥϛϯάݴޠ ͷΠϝʔδΛ࣋ͯ·͔ͨ͠ʁ
࣮༻ྫ ࣮ࡍͷͱ͜Ζʁ اۀɾ044
࣮༻ྫ ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹʢࢀߟʣʲ4DBMBΛ࠾༻͍ͯ͠Δاۀ ϓϩμΫτ Ұཡʳɹɹɹ IUUQTRJJUBDPNPVCBLJPVJUFNTGEDBEBF ւ֎ 5XJUUFS -JOLFE*O 'PVS4RVBSF 1BZ1BM
$PVSTFSB 5IF(VBSEJBO UVNCMS
࣮༻ྫ ɹɹɹɹɹɹɹɹɹɹɹɹɹɹɹʢࢀߟʣʲ4DBMBΛ࠾༻͍ͯ͠Δاۀ ϓϩμΫτ Ұཡʳɹɹɹ IUUQTRJJUBDPNPVCBLJPVJUFNTGEDBEBF ࠃ υϫϯΰ ͯͳ ηϓςʔχɾΦϦδφϧ ϏζϦʔν
$IBU8PSL ΤϜεϦʔ /VMBC αΠόʔΤʔδΣϯτ
࣮༻ྫ اۀ͚ͩͰͳ͘ 044݁ߏ͋Γ·͢
࣮༻ྫ 4DBMBͷ044Ұཡ ʢࢀߟʣʲ5IJTJTBNPTUQPQVMBSSFQPTJUPSZMJTUGPS4DBMBTPSUFECZOVNCFSPGTUBSTʳɹɹɹ IUUQTHJUIVCDPNLBYBQBSMCMPCNBTUFS3&"%.&4DBMBNE
࣮༻ྫ 1MBZ'SBNFXPSL 8FCΞϓϦέʔγϣϯ ϑϨʔϜϫʔΫ
࣮༻ྫ σʔλϕʔεΞΫηε༻ ʢؔܕʣ
࣮༻ྫ TDBMBUSB 8FCϚΠΫϩϑϨʔϜϫʔΫ
࣮༻ྫ 4LJOOZ'SBNFXPSL 8FCΞϓϦέʔγϣϯ ϑϨʔϜϫʔΫ
࣮༻ྫ 4DBMJLF+%#$ σʔλϕʔεΞΫηε༻
࣮༻ྫ ෛՙࢼݧπʔϧʢ8FCʣ
࣮༻ྫ ϝοηʔδϕʔεͷඇಉظॲཧΛ࣮ݱ
࣮༻ྫ ετϦʔϛϯάॲཧ༻
࣮༻ྫ େྔσʔλΛฒྻࢄॲཧ
࣮༻ྫ ػցֶश༻ΞϓϦέʔγϣϯͷ։ൃࢧԉ
࣮༻ྫ 4DBMBͷ(JUϓϥοτϗʔϜ
·ͱΊ ͪΐͬͱͨ͠εΫϦϓτ 8FCΞϓϦέʔγϣϯ σʔλϕʔεΞΫηε ฒྻॲཧ େྔσʔλॲཧ ։ൃࢧԉʢ(JU 6OJU5FTU ίʔυॻࣜʣ ͳͲͳͲ
4DBMB৭ʑͳιϑτΣΞ͕ଘࡏ
·ͱΊ ͦͷഎܠʹ ΦϒδΣΫτࢦ ͱ ؔܕݴޠ ͱݴͬͨߟ͑ํ͚ͩͰͳ͘ ৭ʑͳར͕͋Δͷͩͱࢥ͍·͢
·ͱΊ ͜Ε͔ΒҰॹʹ4DBMBΛֶͼ·ͤΜ͔ʁ ͦͯ͠044ͷੈքʹೖ͠·ͤΜ͔ʁ