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
Node.jsではじめてのCLI
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shingo Yamazaki
April 07, 2017
Programming
1
1.4k
Node.jsではじめてのCLI
2017/04/07 東京Node学園付属小学校 入学式 のLTスライドです。
Shingo Yamazaki
April 07, 2017
Tweet
Share
More Decks by Shingo Yamazaki
See All by Shingo Yamazaki
顧客価値に向き合うためのCREのススメ
zakiyama
4
1.9k
ログラスCREのこれまでとこれから(2023年)
zakiyama
0
570
カスタマーサポートを立ち上げてからやったこと
zakiyama
0
430
組織一丸となってカスタマーサクセスを実現するための取り組みと悩み
zakiyama
0
2.3k
プロダクトと顧客をつなぐログラスのCREの取り組み
zakiyama
2
5.3k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.6k
Chromium版EdgeのTracking Prevention機能 / Tracking Prevention in Chromium-based Microsoft Edge
zakiyama
0
1.8k
LWCのローカル開発機能(ベータ)を試す / LWC Local Development
zakiyama
0
650
kintone開発チームのモブプロ事情 / Mob programming in kintone dev team
zakiyama
0
6.4k
Other Decks in Programming
See All in Programming
Fluid Templating in TYPO3 14
s2b
0
130
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
1
960
CSC307 Lecture 05
javiergs
PRO
0
500
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
200
開発者から情シスまで - 多様なユーザー層に届けるAPI提供戦略 / Postman API Night Okinawa 2026 Winter
tasshi
0
200
Package Management Learnings from Homebrew
mikemcquaid
0
220
SourceGeneratorのススメ
htkym
0
200
並行開発のためのコードレビュー
miyukiw
0
110
例外処理とどう使い分ける?Result型を使ったエラー設計 #burikaigi
kajitack
16
6.1k
CSC307 Lecture 06
javiergs
PRO
0
680
AIフル活用時代だからこそ学んでおきたい働き方の心得
shinoyu
0
130
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
190
Featured
See All Featured
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
Scaling GitHub
holman
464
140k
It's Worth the Effort
3n
188
29k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
190
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.2k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
1
99
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
4 Signs Your Business is Dying
shpigford
187
22k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
320
Transcript
Node.js Ͱ ͡Ίͯͷ CLI 2017.4.7 ౦ژNodeֶԂଐখֶߍ ೖֶࣜ
ࢁ㟒ɹਅޗ גࣜձࣾνʔϜεϐϦοτ ϑϩϯτΤϯυΤϯδχΞ • Salesforce ϓϥοτϑΥʔϜͰWebΞϓϦ։ൃͯ͠·͢ • ৽όʔδϣϯΛ React/Redux
Ͱ࡞͍ͬͯΔͱ͜ΖͰ͢ • JavaScript ॻ͖·͕͢ Node.js ॳ৺ऀͰ͢ ࣗݾհ Twitter: zaki___yama Blog: http://dackdive.hateblo.jp/
CLI Λ࡞Ζ͏ͱࢥͬͨ ܦҢ
ܦҢ ϑϩϯτΤϯυͷίʔυ ʢ+4 $44 ը૾ FUDʣ όοΫΤϯυͷίʔυ ΦϒδΣΫτఆٛ 9.- ݸʑਓͷ։ൃڥ
ʢΫϥυʣ ϩʔΧϧ1$ SalesforceϓϥοτϑΥʔϜΛͬͨΞϓϦ։ൃ σϓϩΠ (Gitཧ) ΦϒδΣΫτ%#ͷςʔϒϧ
ΦϒδΣΫτఆٛ 9.- ܦҢ ϑϩϯτΤϯυͷίʔυ ʢ+4 $44 ը૾ FUDʣ όοΫΤϯυͷίʔυ ϩʔΧϧ1$
։ൃΛ͍ͯͯͨ͠·ʹࢥ͏͜ͱ ͱ͋ΔΦϒδΣΫτͷεΩʔϚΛ ͬ͞ͱ֬ೝ͍ͨ͠ʂ ʢ͕ɺத9.-ʣ $47.BSLEPXOʹมͯ͠ ༷ॻͳͲͷυΩϡϝϯτʹຒΊࠐΈ͍ͨ (Gitཧ) →πʔϧ࡞Εͳ͍͔ͳʁ
• ΦϒδΣΫτఆٛϑΝΠϧͷύεΛࢦఆͯ͠ • XML Λύʔεͯ͠ • ݁ՌΛ Markdown CSV
ʹมͯ͠ग़ྗ Γ͍ͨ͜ͱ
• ࠒ͔Β JavaScript Λॻ͍͍ͯΔ͔Β • npm ͰΠϯετʔϧͰ͖Δ = ಋೖͷෑډ͕ͦ͏ ͔ͩͬͨΒ
• gulp ͳͲͷπʔϧͱΈ߹ΘͤΔ͜ͱ͕Ͱ͖ͦ͏ ͔ͩΒ ͳͥɺNode.js?
ॻ͍ͯΈΔ
͍ͪΜ࠷ॳͷίʔυʢൈਮʣ
͍ͪΜ࠷ॳͷίʔυʢൈਮʣ Ҿ QSPDFTTBSHW<> ͰऔΕΔ ग़ྗϑΥʔϚοτͷସ ؾʹͤͣ ͱΓ͋͑ͣ྆ํग़ͯ͠ΈΔ 9.-ͷύʔε .BSLEPXO$47ͷม ύοέʔδʹͤΔ
9.-ͷύʔε .BSLEPXO$47ͷม ϥΠϒϥϦʹͤΔ
݁Ռ Ͱ͖͚ͨͲɺϩʔΧϧͷεΫϦϓτϑΝΠϧΛ ࢦఆ࣮ͯ͠ߦ͍ͯ͠Δঢ়ଶ
ɹɹɹɹɹɹɹ Ͱ͑ΔΑ͏ʹ͍ͨ͠ $ npm install -g hoge
CLIͱͯ͠ϦϦʔε͢Δ
εΫϦϓτͷઌ಄ʹ̍ߦՃ ίϚϯυͰ࣮ߦՄೳʹ͢ΔͨΊͷ ͓·͡ͳ͍
package.json ʹͪΐͬͱه άϩʔόϧΠϯετʔϧ OQNJHYYY Λਪ͢Δͱ͖هࡌ ࣮ࡍͷίϚϯυ໊ʹͳΔ෦ $ npm install
-g hoge
npmjs.comʹΞΧϯτొ
$ npm adduser αΠϯΞοϓͨ͠ͱ͖ͷ ใΛೖྗ͢Δ
$ npm publish Ҏ߱Ξοϓσʔτͷͨͼʹ όʔδϣϯ্͛ͯ OQNQVCMJTI ͚ͩ
Πϯετʔϧ
Ͱ͖ͨ
͏ͪΐͬͱ ϒϥογϡΞοϓ
minimist • https://github.com/substack/minimist • ΦϓγϣϯΛύʔεͯ͘͠ΕΔύοέʔδ Λύʔεͯ͠0CKFDUʹ -a bar --hoge=piyo
• https://github.com/chalk/chalk • ίϯιʔϧग़ྗΛΧϥϑϧʹ
࠷ऴతʹ Τϥʔ৭Ͱදࣔ ɹɹɹɹͰ ग़ྗϑΥʔϚοτ ࢦఆՄೳʹ --format https://github.com/zaki-yama/parse-salesforce-object
2, 3࣌ؒͰ ͱΓ͋͑ͣ͑Δͷ͕Ͱ͖ͨ
• Node.jsͰCLIΛ࡞ͬͯΈͨ • ެ։͢ΔͷΠϯετʔϧͯͬͯ͠ΈΔͷ؆୯ • Γ͍ͨ͜ͱͷେϥΠϒϥϦ͕طʹ͋Δ • TODOɿϔϧϓ࡞Γ͍ͨ ʢminimist ΑΓ
Commandar.js ͩͬͨ…ʁʣ ·ͱΊ