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.3k
ログラスCREのこれまでとこれから(2023年)
zakiyama
0
410
カスタマーサポートを立ち上げてからやったこと
zakiyama
0
340
組織一丸となってカスタマーサクセスを実現するための取り組みと悩み
zakiyama
0
2.1k
プロダクトと顧客をつなぐログラスのCREの取り組み
zakiyama
2
5k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Chromium版EdgeのTracking Prevention機能 / Tracking Prevention in Chromium-based Microsoft Edge
zakiyama
0
1.7k
LWCのローカル開発機能(ベータ)を試す / LWC Local Development
zakiyama
0
530
kintone開発チームのモブプロ事情 / Mob programming in kintone dev team
zakiyama
0
4.9k
Other Decks in Programming
See All in Programming
ISUCON14公式反省会LT: 社内ISUCONの話
astj
PRO
0
140
EC2からECSへ 念願のコンテナ移行と巨大レガシーPHPアプリケーションの再構築
sumiyae
3
630
Immutable ActiveRecord
megane42
0
120
いりゃあせ、PHPカンファレンス名古屋2025 / Welcome to PHP Conference Nagoya 2025
ttskch
1
240
ASP.NET Core の OpenAPIサポート
h455h1
0
160
SwiftUIで単方向アーキテクチャを導入して得られた成果
takuyaosawa
0
120
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
3
1k
AWS Lambda functions with C# 用の Dev Container Template を作ってみた件
mappie_kochi
0
220
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1.1k
ErdMap: Thinking about a map for Rails applications
makicamel
1
1.1k
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
490
ファインディの テックブログ爆誕までの軌跡
starfish719
1
750
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
How to Ace a Technical Interview
jacobian
276
23k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
590
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
Designing Experiences People Love
moore
139
23k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
YesSQL, Process and Tooling at Scale
rocio
170
14k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
No one is an island. Learnings from fostering a developers community.
thoeni
20
3.1k
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 ͩͬͨ…ʁʣ ·ͱΊ