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
Shingo Yamazaki
April 07, 2017
Programming
1
1.3k
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.7k
ログラスCREのこれまでとこれから(2023年)
zakiyama
0
510
カスタマーサポートを立ち上げてからやったこと
zakiyama
0
380
組織一丸となってカスタマーサクセスを実現するための取り組みと悩み
zakiyama
0
2.2k
プロダクトと顧客をつなぐログラスのCREの取り組み
zakiyama
2
5.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Chromium版EdgeのTracking Prevention機能 / Tracking Prevention in Chromium-based Microsoft Edge
zakiyama
0
1.7k
LWCのローカル開発機能(ベータ)を試す / LWC Local Development
zakiyama
0
580
kintone開発チームのモブプロ事情 / Mob programming in kintone dev team
zakiyama
0
5.7k
Other Decks in Programming
See All in Programming
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
1
310
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
190
Goで作る、開発・CI環境
sin392
0
260
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
900
20250708_JAWS_opscdk
takuyay0ne
2
120
LT 2025-06-30: プロダクトエンジニアの役割
yamamotok
0
810
TypeScriptでDXを上げろ! Hono編
yusukebe
3
650
Git Sync を超える!OSS で実現する CDK Pull 型デプロイ / Deploying CDK with PipeCD in Pull-style
tkikuc
4
240
Node-RED を(HTTP で)つなげる MCP サーバーを作ってみた
highu
0
120
ニーリーにおけるプロダクトエンジニア
nealle
0
890
NEWT Backend Evolution
xpromx
1
110
PHP 8.4の新機能「プロパティフック」から学ぶオブジェクト指向設計とリスコフの置換原則
kentaroutakeda
2
1k
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Being A Developer After 40
akosma
90
590k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
510
Unsuck your backbone
ammeep
671
58k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Navigating Team Friction
lara
187
15k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Docker and Python
trallard
45
3.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
Writing Fast Ruby
sferik
628
62k
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 ͩͬͨ…ʁʣ ·ͱΊ