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
My Daily Node
Search
@hotchemi
May 19, 2013
Programming
990
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
My Daily Node
LT at js-cafe vol7
@hotchemi
May 19, 2013
More Decks by @hotchemi
See All by @hotchemi
kompile-testing internal
hotchemi
0
290
The things we’ve learned from iOS×React Native hybrid development
hotchemi
2
5.5k
React Nativeを活用したアプリ開発体制/sapuri meetup
hotchemi
3
8.3k
Type-Safe i18n on RN
hotchemi
2
1.2k
Navigation in a hybrid app
hotchemi
3
1.4k
PermissionsDispatcher × Kotlin
hotchemi
0
3.4k
kotlin compiler plugin
hotchemi
1
820
Rx and Preferences
hotchemi
2
180
Introducing PermissionsDispatcher
hotchemi
1
190
Other Decks in Programming
See All in Programming
yield再入門 #phpcon
o0h
PRO
0
480
音楽のための関数型プログラミング言語mimiumにおける多段階計算の活用
tomoyanonymous
1
330
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
770
act2-costs.pdf
sumedhbala
0
110
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
180
ITヒヤリハットを整理してみた ~ライフサイクルと原因から考える再発防止策~
koukimiura
1
110
ランチタイムLT会3周年!ランチタイムLT会を3年間続けられたお話
y0hgi
1
140
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
140
Claude Opus 4.6以後の受託開発エンジニアの変化(Claude Code開発ノウハウ大公開スペシャルbyクラスメソッド)
iidatakuma
1
780
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
8
4.4k
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
170
壊れたパーサから始める関数型設計と構成的なパーサ #fp_matsuri
raiga0310
2
250
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
610
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
340
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
We Are The Robots
honzajavorek
0
280
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
630
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
220
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
500
Transcript
My Daily Node js-cafe vol7 શ෦JavaScriptͰॻ͜͏ @hotchemi
Shintaro Katafuchi ŋProgrammer at TIS ŋTwitter: @hotchemi ŋGitHub: hotchemi
օ͞ΜŊJavaScriptॻ͍ͯ·͔͢ʁ
େͷϓϩάϥϚͷΈ ŋňJavaScriptΛॻ͘ػձ͕ແ͍…ʼn ŋňࣄͰαʔόαΠυ͔Γͩ͠ʼn ŋňͲ͔͜ΒJavaScirptΛ࢝ΊͨΒྑ͍ͷ͔…ʼn ŋňWebαʔϏεΛҰਓͰ࡞Δͷͪΐͬͱ…ʼn
ͦ͜ͰNode.jsͰ͢Α ŋSingle thread, Sockei.IO, ඇಉظ, C10K… ŋNode.jsͷϋʔυϧ࣮ߴ͘ͳ͍ ŋJavaScriptʹ׳Ε͍ͨਓͦ͜NodeΛॻ͖͘ ※ࠓJavaScriptॳ৺ऀ͕ͩͬͨࣗŊNodeΛͬͯΛղܾͨ͠ࣄྫŊnpmϞδϡʔ ϧΛެ։ͯ͠ΈͨମݧΛ͓͠·͢Ň
My idea is…
1. ΫϥΠΞϯταΠυͷςετΛCI scroll-to simple scroll jquery plugin. ŋmocha+expect.js+travis-ci(phantomjs) ŋΫϥΠΞϯταΠυͷςετ͕CIͰ͖Δ https://github.com/hotchemi/scroll-to
None
My idea is…
2. αόΫϥ྆༻ϥΠϒϥϦΛ։ൃ private.js provides private accessor library. ŋmocha+expect.js ŋNodeͰλʔϛφϧܦ༝ͰTDD https://github.com/hotchemi/private.js
var klass = $pvt("_" /* prefix */, { // public
method access to public variable getPublicVariable: function() { return this.publicVariable; }, // public method access to private variable getPrivatevariable: function() { return _privateVariable; }, // privateϝϯόΛࢀর͍ͯ͠ΔprivateϝιουΛݺͼग़͢public method getPrivateMethodReferPrivateVariable: function() { return _getPrivateVariable(); }, // publicϝϯόΛࢀর͍ͯ͠ΔprivateϝιουΛݺͼग़͢public method getPrivateMethodReferPublicVariable: function() { // ͜ͷ߹ίϯςΩετΛࢦఆ͠ͳ͍ͱ͍͚ͳ͍… return _getPublicVariable.call(this); }, // privateϝϯόʹΞΫηε͢Δprivate method _getPrivateVariable: function() { return _privateVariable; }, // publicϝϯόʹΞΫηε͢Δprivate method _getPublicVariable: function() { return this.publicVariable; }, // public variable publicVariable: 1, // private variable _privateVariable: 2 }); Usage
My idea is…
3. APIϥούʔΛ։ൃ zaim.js Zaim API wrapper. ŋNodeͷAPIϥούʔແ͔ͬͨ→ň࡞Ζ͏ʂʼn ŋCoverallsΛͬͯΧόϨοδΛܭଌ https://github.com/hotchemi/zaim.js
npm install zaim NodeϞδϡʔϧ։ൃૂ͍ʂ
My idea is…
4. γΣϧΞϓϦNodeͰॻ͘ zaim-cli CLI based Zaim client. ŋrequire commander, colors.js,
zaim.js ŋDirty code...callback is difficult. https://github.com/hotchemi/zaim-cli
npm install -g zaim-cli
My idea is…
5. ωλهࣄ͢ΒNodeͰॻ͘ yutori-blog-bot twitter bot for @megascus. ŋΏͱΓ advent calendar
15 ŋRunnning on eXcale https://github.com/hotchemi/yutori-blog-bot
None
eXcale support Node.js
NodeΛͬͯྑ͔ͬͨࣄ ŋJavaScriptͷςετͷҙ͕ࣝߴ·Δ ŋඇಉظͷҙ͕ࣝߴ·Δ ŋCallbackࠈͷ͚ͩڧ͘ͳΕΔΑ ŋnpmϞδϡʔϧΛ؆୯ʹެ։Ͱ͖Δ ŋ͍ͭͷؒʹ͔JavaScriptΛ͖ʹͳͬͯΔ
Let’s Node!! (JWFNFQVMMSFRVFTU Fin.