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
Webで自動化って どういうこと? - 大まかに理解する 自動化の入り口の話
Search
Kihara, Takuya
November 09, 2018
Technology
1
280
Webで自動化って どういうこと? - 大まかに理解する 自動化の入り口の話
Webで自動化って どういうこと? - 大まかに理解する 自動化の入り口の話
Kihara, Takuya
November 09, 2018
Tweet
Share
More Decks by Kihara, Takuya
See All by Kihara, Takuya
AWS Lambda で LLRT を動かしてみた #北海道まったりLT大会
tacck
0
56
地方から始める登壇のステップアップ 〜Java Do から JJUG CCC への登壇参加記録 #javado
tacck
0
85
ゆるWebの新型コロナ Before/After とこれからのこと #seb_yearend
tacck
0
25
AWS Amplify と Amazon Bedrock を使ってオレオレ生成AIサイトを作る #ゆるWeb札幌
tacck
0
150
「普通」のエンジニアとしての生存戦略〜または、いかにして技術を楽しむか。 #情報メディア入門
tacck
0
57
噂の Amazon Bedrock を Java から使ってみる #javado
tacck
1
280
ソラカメとAmplifyでお手軽ライブカメラを作ってみた(制限あり) #ゆるWeb札幌
tacck
0
220
ゆるWeb勉強会@札幌 #24 #ゆるWeb札幌
tacck
0
120
AWS Amplify と Cloudflare Pages 比べてみれば / #CloudflareUG_cts #AWSAmplifyJP
tacck
1
640
Other Decks in Technology
See All in Technology
EMとして2023年度に頑張ったこと / What we did well in FY2023 as a EM
pauli
1
160
SPI原点回帰論:事業課題とFour Keysの結節点を見出す実践的ソフトウェアプロセス改善 / DevOpsDays Tokyo 2024
visional_engineering_and_design
4
1.9k
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
300
一生覚えておきたい「システム開発=コミュニケーション」〜初めての実務案件振り返りLT〜
maimyyym
0
120
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
サーバー間 GraphQL と webmock-graphql の話 / server-to-server graphql and webmock-graphql
qsona
2
180
テストプロセスで大事にしていること #jasstnano
makky_tyuyan
0
170
Janus
bkuhlmann
1
490
JSON攻略法.pdf
miyakemito
8
5k
AWSに詳しくない人でも始められるコスト最適化ガイド
yuhta28
0
170
長期間TiDBを使ってきた話 @ 私たちはなぜNewSQLを使うのかTiDB選定5社が語る選定理由と活用LT / Experiences with TiDB Over Time
chibiegg
2
890
MapLibreとAmazon Location Service
dayjournal
1
150
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
514
39k
Designing for Performance
lara
601
67k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
19
1.7k
What's in a price? How to price your products and services
michaelherold
237
11k
Rebuilding a faster, lazier Slack
samanthasiow
73
8.2k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Writing Fast Ruby
sferik
621
60k
Making the Leap to Tech Lead
cromwellryan
124
8.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
260
12k
The Power of CSS Pseudo Elements
geoffreycrofte
60
5k
GraphQLの誤解/rethinking-graphql
sonatard
50
9.2k
How GitHub Uses GitHub to Build GitHub
holman
468
290k
Transcript
WebͰࣗಈԽͬͯ Ͳ͏͍͏͜ͱ? 2018/11/09 @tacck ⼤まかに理解する ⾃動化の⼊り⼝の話
୭ !UBDDL ໊લ ࡶͳϑϧελοΫΤϯδχΞ ͓ࣄ εϓϨουɾΠʔάϧ ͖ͳϑΟΪϡΞεέʔτͷٕ
ಥવͰ͕͢
Έͳ͞Μ ָΛ͍ͨ͠Ͱ͔͢?
Έͳ͞Μ ָΛ͍ͨ͠Ͱ͔͢? ͍ͨ͠Ͱ͢ΑͶʂ
ָΛͯ͠ྑ͍ΜͰ͔͢?
ָΛͯ͠ྑ͍ΜͰ͔͢? ྑ͍ΜͰ͢!!
ָΛ͢ΔͨΊʹ ԿΛΔ͖͔?
ࠓ͓͢͠Δ͜ͱ • Web։ൃք۾Ͱฉ͘ʮࣗಈԽʯͱ? • ࣗಈԽ͢ΔͱԿ͕خ͍͠ͷ͔ • ۩ମతͳ͓ɺଞͷํͷൃදʹظ!
ͦͦ “Webٕज़” #ͱ
Webٕज़ (͜ͷࢿྉͰͷఆٛ) Ճ Ԡ༻ WebαΠτ WebΞϓϦ(WebγεςϜ) WebΞϓϦͷཁૉٕज़ͷൃల جຊ
• ੩తϖʔδදࣔ • ϒϥβͰදࣔޙʹ ϖʔδ༰(σʔλ)͕มԽ͠ͳ͍ WebαΠτ جຊ
• ಈతϖʔδදࣔ • ϒϥβͰදࣔޙʹ ϖʔδ༰(σʔλ)͕มԽ͢Δ Ճ WebΞϓϦ(WebγεςϜ)
͍͍ͩͨ͜͏͍͏ύλʔϯ • ϑΝΠϧஔͷΈͷ੩తαΠτ • όοΫΤϯυͰϖʔδੜ͢Δ੩తαΠτ • όοΫΤϯυͰϖʔδੜ͢ΔಈతαΠτ • ϑϩϯτΤϯυʹΑΔಈతαΠτ
੩తαΠτ ಈతαΠτ ϑϩϯτΤϯυ ᶃ ϑΝΠϧஔͷΈ ᶆ 9)3͏λΠϓ όοΫΤϯυ ᶄ ݻఆͷϑΝΠϧੜ
ᶅ ঢ়ଶʹԠͨ͡ ϑΝΠϧੜ
ొਓ • HTML/CSS • JavaScript • όοΫΤϯυ(ݴޠ/ϑϨʔϜϫʔΫ) • ϛυϧΣΞ(HTTPαʔό/DBαʔό) •
Πϯϑϥ(Ϛγϯ/ωοτϫʔΫ)
ᶃϑΝΠϧஔͷΈͷ ɹ੩తαΠτ • HTML/CSS • JavaScript (֎෦௨৴ͳ͠) • ϛυϧΣΞ(HTTPαʔό) •
Πϯϑϥ(Ϛγϯ/ωοτϫʔΫ)
ᶃϑΝΠϧஔͷΈͷ ɹ੩తαΠτ Πϯϑϥ αʔόωοτϫʔΫ )5.-$44 +BWB4DSJQU )551αʔό ϑΝΠϧऔಘ
ᶄόοΫΤϯυͰ ɹϖʔδੜ͢Δ੩తαΠτ • HTML/CSS • JavaScript (֎෦௨৴ͳ͠) • όοΫΤϯυ(ݴޠ/ϑϨʔϜϫʔΫ) •
ϛυϧΣΞ(HTTPαʔό) • Πϯϑϥ(Ϛγϯ/ωοτϫʔΫ)
ᶄόοΫΤϯυͰ ɹϖʔδੜ͢Δ੩తαΠτ Πϯϑϥ αʔόωοτϫʔΫ )551αʔό ϒϥβ͔Β ϑΝΠϧऔಘ ʹݟ͍͑ͯΔ όοΫΤϯυ )5.-$44
+BWB4DSJQU όοΫΤϯυͰϑΝΠϧΛੜͯ͠ )551αʔό͢
ᶅόοΫΤϯυͰ ɹϖʔδੜ͢ΔಈతαΠτ • HTML/CSS • JavaScript (֎෦௨৴ͳ͠) • όοΫΤϯυ(ݴޠ/ϑϨʔϜϫʔΫ) •
ϛυϧΣΞ(HTTPαʔό/DBαʔό) • Πϯϑϥ(Ϛγϯ/ωοτϫʔΫ)
ᶅόοΫΤϯυͰ ɹϖʔδੜ͢ΔಈతαΠτ Πϯϑϥ αʔόωοτϫʔΫ )551αʔό ϒϥβ͔Β ϑΝΠϧऔಘ ʹݟ͍͑ͯΔ όοΫΤϯυ )5.-$44
+BWB4DSJQU %#αʔό όοΫΤϯυͰϑΝΠϧΛੜͯ͠ )551αʔό͢
ᶆϑϩϯτΤϯυʹΑΔ ɹಈతαΠτ • HTML/CSS • JavaScript (֎෦௨৴͋Γ) • όοΫΤϯυ(ݴޠ/ϑϨʔϜϫʔΫ) •
ϛυϧΣΞ(HTTPαʔό/DBαʔό) • Πϯϑϥ(Ϛγϯ/ωοτϫʔΫ)
ᶆϑϩϯτΤϯυʹΑΔ ɹಈతαΠτ Πϯϑϥ αʔόωοτϫʔΫ )551αʔό ϒϥβ ϑΝΠϧऔಘͱ 9)3ʹΑΔσʔλऔಘ όοΫΤϯυ 9)3Λड͚Δ"1*
)5.-$44 +BWB4DSJQU %#αʔό όοΫΤϯυͰ σʔλ࡞ +4 9)3
WebΞϓϦΛ࡞Δʹ • ࠷ऴతʹɺଟ͘ͷཁૉ͕ඞཁʹͳͬͯ͘Δɻ • ϑϩϯτΤϯυɺόοΫΤϯυɺΠϯϑϥɺ ͦΕͧΕ͕ผͷٕज़ཁૉͰΓཱ͍ͬͯΔɻ • ࣗಈԽͰ͖ͦ͏?
ཧ͢Δલʹ
ࣗಈԽ #ͱ
ࣗಈԽͱ • ͋Δಛఆͷ࡞ۀ༰ɺ࡞ۀखॱΛɺ ػց(ίϯϐϡʔλ)ʹͤΔ͜ͱɻ • ਓ͕ؒͰ͖Δ͜ͱ (͔ͭɺ܁Γฦ͠Δ͜ͱ)Λ ίϯϐϡʔλʹͤΔɻ
• جຊ໘ͳ࡞ۀ • ಉ͜͡ͱΛେྔʹ܁Γฦ͢ • ͦͷׂʹؾΛ͏ • ͦͷ্Ͱؒҧ͑Δ • ؒҧ͑ͨ߹γϟϨʹͳΒͳ͍
ਓ͕ؒͰ͖Δ͜ͱΛͤΔ
ࣗಈԽͯ͠خ͍͜͠ͱ
خ͍͜͠ͱ • ఆܕॲཧΛ࣮֬ʹߦͳ͑Δ • Ұ୴ޭͨ͠Βͣͬͱޭ • ࣦ͠ഊͨ͠ΒʮखॱҎ֎ʯʹ͕͋Δ ͜ͱ͕Θ͔Δ
خ͍͜͠ͱ • ָ͕Ͱ͖Δ • ৽͍͜͠ͱʹखΛ͚ͭΒΕΔ • ػೳՃɾվળ • ৽͍͠αʔϏε
Ͳ͏͍͏͜ͱΛ ࣗಈԽͰ͖Δ͔
ࣗಈԽͰ͖Δ͜ͱ • ఆܕॲཧͯ͢
ϑϩϯτΤϯυཁૉ • Ϗϧυ (ίϯύΠϧ / τϥϯεύΠϧ) • ΦʔτϦϩʔυ • Lint
/ Format • ςετ • σϓϩΠ
ϑϩϯτΤϯυཁૉ • Ϗϧυ (ίϯύΠϧ / τϥϯεύΠϧ) • Babel, Webpack, …
• ΦʔτϦϩʔυ • Webpack, … • Lint / Format • ESLint, … • ςετ • Jest, … • σϓϩΠ • SCP, …
όοΫΤϯυཁૉ • Ϗϧυ (ίϯύΠϧ) • ϗοτσϓϩΠ • Lint / Format
• ςετ • σϓϩΠ
όοΫΤϯυཁૉ (Java) • Ϗϧυ (ίϯύΠϧ) • Javac + Gradle, …
• ϗοτσϓϩΠ • IDE + Gradle, … • Lint / Format • Checkstyle, .. • ςετ • JUnit, … • σϓϩΠ • SCP, …
Πϯϑϥཁૉ • ߏཧπʔϧ • ϗετ(VM)ߏங • ϛυϧΣΞߏங • ςετ •
VM/ίϯςφͷΠϝʔδϏϧυ
Πϯϑϥཁૉ • ߏཧπʔϧ • ϗετ(VM)ߏங • ϛυϧΣΞߏங • Ansible, Chef,
… • ςετ • ServerSpec, … • VM/ίϯςφͷΠϝʔδϏϧυ • Docker, Packer, …
Ԡ༻ • CI • GitͷίϛοτΛݕͯ͠ςετ • CD • ςετͰͳ͚Ε •
σϓϩΠͷͨΊʹΠϯϑϥΛࣗಈߏங • σϓϩΠ
Ԡ༻ • CI • GitͷίϛοτΛݕͯ͠ςετ • CD • ςετͰͳ͚Ε •
σϓϩΠͷͨΊʹΠϯϑϥΛࣗಈߏங • σϓϩΠ • Jenkins, CircleCI,…
ࡉʑ͖ͯͨ͠ͷͰ ͬ͘͟Γೝࣝ
ͬ͘͟Γೝࣝ • ϑϩϯτΤϯυɺόοΫΤϯυɺΠϯϑϥɺ ͦΕͧΕͷࣗಈԽରΛݟͯ͠Έͯɺ ͬ͘͟Γͱͨ͠ೝࣝΛݻΊΔɻ
ͬ͘͟Γೝࣝ • ϑϩϯτΤϯυ/όοΫΤϯυͰΓ͍ͨ͜ͱ ݁ߏࣅ͍ͯΔ • ͏ݴޠπʔϧͷҧ͍͔ΒͦΕͧΕʹൃ ల͍ͯ͠Δ͕ɺຊ࣭తʹΓ͍ͨ͜ͱಉ ͡ɻ • Πϯϑϥίʔυͷ࣌
• ߏཧπʔϧͰίʔυԽ͢Δ͜ͱͰ࠶ݱ ੑ͕֬อ͞ΕɺࣗಈԽ͕ਐΜͰ͍Δɻ
Ϗϧυ ϗοτσϓϩΠ ίϛοτ Ϗϧυ όοΫΤϯυ ϑϩϯτΤϯυ Πϯϑϥ ΦʔτϦϩʔυ ߏจνΣοΫ ։ൃڥߏங
੩తղੳ ΠϯλϓϦλ ίϯύΠϥ खݩ ։ൃڥ Ͱಈ࡞֬ೝ ςετ࣮ߦ
ίϛοτ $* $% ੩తղੳ Ϗϧυ ςετ ຊ൪ڥߏங σϓϩΠ ςετڥߏங
·ͱΊ
·ͱΊ • ϑϩϯτΤϯυɺόοΫΤϯυɺΠϯϑϥɺ ͦΕͧΕʹࣗಈԽΛ͢Δٕज़ɾπʔϧ͕͋Δɻ • ԼهͷͨΊʹΔɻ • ҆શ • ࣮֬
• ָΛ͢Δ
·ͱΊ • ݸʑͷٕज़ɺ͍ඥɻ • ෳͷٕज़Λܨ͗߹ΘͤͯɺҰຊͷ͍ඥʹ ͢Δɻ • ͦͷඥ͕ɺϢʔβʔʹՁͱͯ͠ಧ͘Α͏ʹɺ ͘ଠ͍ͯ͘͜͠͏ɻ •
ͦΕ͕ɺʮࣗಈԽʯͷٕज़ɻ
·ͣ • ͯ͘ྑ͍ͷͰඥΛฤΜͰΈΔ • ίϚϯυΛฒͨεΫϦϓτΛ࡞Δ͜ͱɺ ཱͳࣗಈԽɻ • ՁΛੜΉͨΊʹָΛ͠Α͏! • ָΛ͢ΔͨΊʹΛ͠Α͏!
ࣗಈԽͷੈքΑ͏ͦ͜
end