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
PRO
November 09, 2018
Technology
1
350
Webで自動化って どういうこと? - 大まかに理解する 自動化の入り口の話
Webで自動化って どういうこと? - 大まかに理解する 自動化の入り口の話
Kihara, Takuya
PRO
November 09, 2018
Tweet
Share
More Decks by Kihara, Takuya
See All by Kihara, Takuya
GitHub Actions で Flutter アプリの CI/CD をやってます #ゆるWeb札幌
tacck
PRO
0
85
ゆるWeb勉強会@札幌 #29 #ゆるWeb札幌
tacck
PRO
0
110
読んで学ぶ Amplify Gen2 / Amplify と CDK の関係を紐解く #jawsug_tokyo
tacck
PRO
1
380
はじめまして GoLang #cm_sapporo_study
tacck
PRO
0
120
ゆるWeb勉強会@札幌 #28 #ゆるWeb札幌
tacck
PRO
0
71
AWS Amplify の AI Kit でオレオレAIサイトを作ってみる #ゆるWeb札幌
tacck
PRO
0
100
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
830
Amplify Gen2 Deep Dive / How to convey backend types to the frontend #30DaysOfAmplify
tacck
PRO
0
61
TypeScript 雰囲気勢がライブラリのコードリーディングで得た知識 #sacss
tacck
PRO
1
110
Other Decks in Technology
See All in Technology
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
120
Github Copilot エージェントモードで試してみた
ochtum
0
110
asken AI勉強会(Android)
tadashi_sato
0
110
250627 関西Ruby会議08 前夜祭 RejectKaigi「DJ on Ruby Ver.0.1」
msykd
PRO
2
340
WordPressから ヘッドレスCMSへ! Storyblokへの移行プロセス
nyata
0
220
製造業からパッケージ製品まで、あらゆる領域をカバー!生成AIを利用したテストシナリオ生成 / 20250627 Suguru Ishii
shift_evolve
PRO
1
150
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
210
フィンテック養成勉強会#54
finengine
0
180
TechLION vol.41~MySQLユーザ会のほうから来ました / techlion41_mysql
sakaik
0
190
~宇宙最速~2025年AWS Summit レポート
satodesu
1
1.9k
GitHub Copilot の概要
tomokusaba
1
140
Core Audio tapを使ったリアルタイム音声処理のお話
yuta0306
0
120
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Faster Mobile Websites
deanohume
307
31k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
20k
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
The World Runs on Bad Software
bkeepers
PRO
69
11k
Unsuck your backbone
ammeep
671
58k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Building Applications with DynamoDB
mza
95
6.5k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Rails Girls Zürich Keynote
gr2m
94
14k
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