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.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
600
カスタマーサポートを立ち上げてからやったこと
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
AIを導入する前にやるべきこと
negima
2
180
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
190
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
620
(Re)make Regexp in Ruby: Democratizing internals for the JIT
makenowjust
3
620
Agentic Elixir
whatyouhide
0
400
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
180
決定論 vs 確率論:Gemini 3 FlashとTF-IDFを組み合わせた「法規判定エンジン」の構築
shukob
0
110
Running Swift without an OS
kishikawakatsumi
0
850
SkillがSkillを生む:QA観点出しを自動化した
sontixyou
6
3.5k
ドメインイベントでビジネスロジックを解きほぐす #phpcon_odawara
kajitack
3
800
ついに来た!本格的なマルチクラウド時代の Google Cloud
maroon1st
0
230
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
350
Featured
See All Featured
Mind Mapping
helmedeiros
PRO
1
160
Joys of Absence: A Defence of Solitary Play
codingconduct
1
350
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
150
Building an army of robots
kneath
306
46k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.2k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
510
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
64
54k
Navigating Team Friction
lara
192
16k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
190
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
200
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
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 ͩͬͨ…ʁʣ ·ͱΊ