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.4k
1
Share
Node.jsではじめてのCLI
2017/04/07 東京Node学園付属小学校 入学式 のLTスライドです。
Shingo Yamazaki
April 07, 2017
More Decks by Shingo Yamazaki
See All by Shingo Yamazaki
顧客価値に向き合うためのCREのススメ
zakiyama
4
2k
ログラスCREのこれまでとこれから(2023年)
zakiyama
0
590
カスタマーサポートを立ち上げてからやったこと
zakiyama
0
460
組織一丸となってカスタマーサクセスを実現するための取り組みと悩み
zakiyama
0
2.4k
プロダクトと顧客をつなぐログラスのCREの取り組み
zakiyama
2
5.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
Chromium版EdgeのTracking Prevention機能 / Tracking Prevention in Chromium-based Microsoft Edge
zakiyama
0
1.9k
LWCのローカル開発機能(ベータ)を試す / LWC Local Development
zakiyama
0
670
kintone開発チームのモブプロ事情 / Mob programming in kintone dev team
zakiyama
0
6.5k
Other Decks in Programming
See All in Programming
ふりがな Deep Dive try! Swift Tokyo 2026
watura
0
230
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
110
「話せることがない」を乗り越える 〜日常業務から登壇テーマをつくる思考法〜
shoheimitani
4
840
Swift Concurrency Type System
inamiy
1
540
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
570
Vibe하게 만드는 Flutter GenUI App With ADK , 박제창, BWAI Incheon 2026
itsmedreamwalker
0
550
GNU Makeの使い方 / How to use GNU Make
kaityo256
PRO
16
5.6k
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
450
AI時代のPhpStorm最新事情 #phpcon_odawara
yusuke
0
190
Claude Code × Gemini × Ebitengine ゲーム制作素人WebエンジニアがGoでゲームを作った話
webzawa
0
150
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
570
アーキテクチャモダナイゼーションとは何か
nwiizo
19
5.4k
Featured
See All Featured
Automating Front-end Workflow
addyosmani
1370
200k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
220
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
320
Information Architects: The Missing Link in Design Systems
soysaucechin
0
890
A Soul's Torment
seathinner
6
2.7k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
200
First, design no harm
axbom
PRO
2
1.2k
GraphQLとの向き合い方2022年版
quramy
50
15k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Pragmatic Product Professional
lauravandoore
37
7.2k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
280
Believing is Seeing
oripsolob
1
110
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 ͩͬͨ…ʁʣ ·ͱΊ