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
techbash-clasp
Search
Hirokazu Maruta
December 04, 2019
Technology
100
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
techbash-clasp
This lightning is talking about clasp-typescript application at giftee.
Hirokazu Maruta
December 04, 2019
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
130
わかった気になるチューリングマシン
mochisuna
0
70
Elementary algorithm
mochisuna
0
34
ssh-dynamic-forward
mochisuna
0
71
ServerlessFramework-Trello
mochisuna
0
38
TechBash Slack Reaction Award
mochisuna
0
51
vuejs-night-publish
mochisuna
0
1.2k
surprise-lt-for-intern-vol-2
mochisuna
0
60
docker-multi-stage-build
mochisuna
0
180
Other Decks in Technology
See All in Technology
カードゲーム作りが教えてくれた プロダクトオーナーシップ
moritamasami
0
110
そのドキュメント、自動化しませんか?
yuksew
1
260
ファミコンでPHPを動かす / PHP on the Famicom
tomzoh
2
320
しぶいSRE: サーバから見えない障害にどう向き合うか。ラストワンマイルのデバッグ実践 / Shibui SRE
kanny
13
6.4k
Kaggleで成長するために意識したこと
prgckwb
2
400
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
4.9k
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
290
凡エンジニアがこの先生きのこるためには。〜TypeScript完全に理解したい〜
alchemy1115
2
310
あなたの『Site』はどこですか? — xREという考え方
miyamu
0
1.2k
2年前に削除したPHPクラスが、 ある日突然決済をエラーにした
ykagano
1
260
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
4.5k
「最後に責任を取るのはチーム」— 人間のPRレビューを最小化してアップデートしたメンタルモデル
jnishime_dresscode
0
860
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Un-Boring Meetings
codingconduct
0
350
The Mindset for Success: Future Career Progression
greggifford
PRO
0
420
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
340
30 Presentation Tips
portentint
PRO
1
350
Mobile First: as difficult as doing things right
swwweet
225
10k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
410
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.4k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
460
Context Engineering - Making Every Token Count
addyosmani
9
1k
Transcript
claspͰ࡞ΔGASΞϓϦ SaaS ·Δͨ
ࣗݾհ • ؙాʢ·ΔͨͻΖ͔ͣʣ • Twitter: @mochi_suna • giftee.co SaaSνʔϜΤϯδχΞ •
झຯɿϐΞϊɺϘυήɺΞΠίϯ࡞ʢΧούʣ • ࣗಈԽେ͖ɻख࡞ۀ͖Β͍ɻ • githubɿ @mochisuna
ٕज़໘
͡Ίʹ • ൪ • GAS • claspʹ͍ͭͯ • αϯϓϧ •
·ͱΊ
ͪΐͬͱͨ͠ཁ͕݅ ͋Γ·ͨ͠
ཁ݅ʢվળ͕هࡌ͞Ε͍ͯ͘ʣ • ͜ΕɺͲ͏ʹ͔ͯ͠ཉ͍͠Μͩͬͯɻ •
ཁ݅ʢվળ͕هࡌ͞Ε͍ͯ͘ʣ • ͜ΕɺͲ͏ʹ͔ͯ͠ཉ͍͠Μͩͬͯɻ • Ξϗ͔Ͱݟ͍ͯ͘ͷେมͦ͏ͩɾɾɾɻ
ࣗಈԽ͠Α͏ͥʂ
ݱ࣮తͳͱͯ͠ • ༏ઌͱ͔͋ΔఔػցԽͯ͠ଌΓ͍ͨɻ • Don't guess, measure! • ͦͦ͜ΜͳΜӡ༻ͨ͘͠ͳ͍ •
ҙຯͷ͋Δγʔτʹ͍ͨ͠ • ӦۀͰ՝ఏىͰ͖Δͱ͔
ݱ࣮తͳͱͯ͠ • ༏ઌͱ͔͋ΔఔػցԽͯ͠ଌΓ͍ͨɻ • Don't guess, measure! • ͦͦ͜ΜͳΜӡ༻ͨ͘͠ͳ͍ •
ҙຯͷ͋Δγʔτʹ͍ͨ͠ • ӦۀͰ՝ఏىͰ͖Δͱ͔ GASͷ ग़ ൪ ͩ ʂ
Google Apps Script ʢGASʣ
Google Apps ScriptʢGASʣ • Google͕ఏڙ͍ͯ͠ΔΞϓϦέʔγϣϯ ։ൃϓϥοτϑΥʔϜ • GASͱུ͔͞ΕΔ
Google Apps ScriptʢGASʣ • Google͕ఏڙ͍ͯ͠ΔΞϓϦέʔγϣϯ ։ൃϓϥοτϑΥʔϜ • GASͱུ͔͞ΕΔ • υΩϡϝϯτ/εϓϨουγʔτͳͲʹର͠
ϚΫϩͷ༷ͳͷ͕ΊΔ • ಠࣗͷݴޠʢ.gsʣͰఆٛ
Կ͕Ͱ͖Δ͔ ͿͬͪΌ͚JSͳͷͰͳΜͰͰ͖Δ • εϓϨουγʔτͷηϧ͔ΒΛऔಘ • ୭ʑ͕࡞ͬͨϑΝΠϧͷURLΛఴ͑ͯSlack • ෳͷγʔτ͔ΒσʔλΛऔͬͯ৽͘͠࡞ͬͨ γʔτهࡌ
1. ͑ͬɺख࡞ۀͬε͔ʁ
1. ͑ͬɺख࡞ۀͬε͔ʁ
1. ͑ͬɺख࡞ۀͬε͔ʁ • ফͤͪΌ͏Αʁ • ίʔυิʁ
1. ͑ͬɺख࡞ۀͬε͔ʁ • ফͤͪΌ͏Αʁ • ίʔυิʁ 2. ͑ͬɺclassͱ͔ͳ͍Με͔ʁ
1. ͑ͬɺख࡞ۀͬε͔ʁ • ফͤͪΌ͏Αʁ • ίʔυิʁ 2. ͑ͬɺclassͱ͔ͳ͍Με͔ʁ •
ಠࣗݴޠ༻Ͱ͢ɻvar͔͠ͳ͍Ͱ͢ɻ
ͭΒ͍
Clasp
clasp • GASΛૢ࡞Ͱ͖ΔCLIπʔϧ • ҙຯͱͯ͠ʮཹΊۚʯ
clasp • GASΛૢ࡞Ͱ͖ΔCLIπʔϧ • ҙຯͱͯ͠ʮཹΊۚʯ • Googleۘ
clasp • GASΛૢ࡞Ͱ͖ΔCLIπʔϧ • ҙຯͱͯ͠ʮཹΊۚʯ • Googleۘ • ඪ४ͰTSରԠ •
σϓϩΠ࣌ʹgsϑΝΠϧʹτϥϯεύΠϧ
ίʔυͰཧͰ͖Δͧʂʂʂ • ؒҧͬͯফ͢ͱ͔͕ى͜Γ͑ͳ͍ • ͦͦσϓϩΠ͕ਓؒͷखΛհ͞ͳ͍ • CI/CD͢ΒͰ͖Δ 1. git commit
→ run test 2. test, OK → clasp push
ίʔυͰཧͰ͖Δͧʂʂʂ • TypescriptͰॻ͚Δ • ิ͕ޮ͘ʂ • linter͕ޮ͘ʂ • test͕ॻ͚Δʂ
αϯϓϧ
͘͢͝ࡶͳαϯϓϧΛߟ͑Δ • ॴҦ HelloWorldʂ ͍ͭ͜ΛσϓϩΠ
͜͏ͳΔ • ҰԠίϝϯτΛܧঝͯ͘͠Ε͍ͯΔ • มͱ͔Ϳ͔ͭΒͳ͍Α͏ʹม͑ͯΔͬΆ͍
ൃల՝
sheet͔Βऔಘˠslack • ϦϙδτϦ࡞ͬͨ • ͜Ε͕͜͏ͳΔʢ#saas_maruchʣ
࣮ࡍͷͭ ʢσϞΛ͠·ͨ͠ʣ
·ͱΊ • claspՄೳੑͷَ • ୭Ͱ͑Δʢ͍͜ͳͤΔͰͳ͍ʣ gooleAppsΛૢ࡞ग़དྷͯ͠·͏ • ຊʹϏδωεɹΤϯδχΞ͕ग़དྷͯ͠·͏ • TSͰॻ͚Δ͔Βܕ҆શͩ͠৭ʑͰ͖Δ
• ͠Ύ͍͝
͋ɻ
͜ͷൃද
Advent Calendarʹ͠·͢