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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hirokazu Maruta
December 04, 2019
Technology
0
90
techbash-clasp
This lightning is talking about clasp-typescript application at giftee.
Hirokazu Maruta
December 04, 2019
Tweet
Share
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
110
わかった気になるチューリングマシン
mochisuna
0
48
Elementary algorithm
mochisuna
0
27
ssh-dynamic-forward
mochisuna
0
61
ServerlessFramework-Trello
mochisuna
0
30
TechBash Slack Reaction Award
mochisuna
0
45
vuejs-night-publish
mochisuna
0
1.1k
surprise-lt-for-intern-vol-2
mochisuna
0
55
docker-multi-stage-build
mochisuna
0
170
Other Decks in Technology
See All in Technology
配列に見る bash と zsh の違い
kazzpapa3
1
120
Agile Leadership Summit Keynote 2026
m_seki
1
540
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
42k
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
340
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
170
使いにくいの壁を突破する
sansantech
PRO
1
130
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
200
月間数億レコードのアクセスログ基盤を無停止・低コストでAWS移行せよ!アプリケーションエンジニアのSREチャレンジ💪
miyamu
0
830
MCPでつなぐElasticsearchとLLM - 深夜の障害対応を楽にしたい / Bridging Elasticsearch and LLMs with MCP
sashimimochi
0
150
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
4.9k
(金融庁共催)第4回金融データ活用チャレンジ勉強会資料
takumimukaiyama
0
140
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.2k
Chasing Engaging Ingredients in Design
codingconduct
0
110
Ruling the World: When Life Gets Gamed
codingconduct
0
140
Speed Design
sergeychernyshev
33
1.5k
Accessibility Awareness
sabderemane
0
49
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Optimizing for Happiness
mojombo
379
71k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
150
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
98
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
140
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ʹ͠·͢