いまNode Express4で書いてるディレクターが初めて書き始める2ヶ月前くらいの自分に言っておく
やまぐちたかひろ@hiro93n
2015/4/12 nodeschool tokyo (東京Node学園入学式) LT
自己紹介
元々黒い画面は平気だったディレクター。自社サービス開発でここ2ヶ月くらいNode.js
(express)を触っていた。
2
やまぐちたかひろ(@hiro93n)株式会社パエリア(paeria.co.jp)所属WebとかAppのディレクター
ステッカー描きました!
3
みんなのステッカー制作室 Hexi https://hexi.pics
Hexiの構成
• Application
• io.js / express 4 / mySQL
• Infra
• nginx + ngx_small_light / SPDY /EC2 + S3
7
SPDY使いたかったのでELB諦め
2ヶ月前の悩み
• エンジニア工数足りなくて基本的に待ちが多い。なんとかしたい!
• 自分で書けるなら書きたいけど職業エンジニアじゃない、適当な実装怖い
• でも多少のひよコードでもプロダクトがずっと完成しないよりはマシ(と割り切る)
8
とは言うものの現実
9
あ、はい・・・(とは言うものの、すぐ欲しい)
こういうのやらなくていいので自分の仕事やってください
10
おきなさい、わたしのかわいい強欲や
しれっと、プルリクのレビューにちっちゃな提案から信頼積むことにした
つたえたいことその1
11
ちっちゃな機能でたくさんコケろ
文法エラーレベルから悩む機会を増やす
12
たくさん文法ミスする⇩
必然的に先輩のコードを読む
つたえたいことその2
13
相手は一枚岩じゃない
誰が誰なのかわからないところから始めると辛い
for q in cats
User.findOne({where{id:id}})
app.get(‘env’)
14
Node.jsがあらわれた!しょうたいはわからない
分けると消化しやすい、調べやすい
15
javascript
for q in cats
DB
user.findOne
express
app.get(‘env’)
Node,js
Node.jsが3体にぶんれつした
正体がわかったら部屋にガサ入れ
config・・・設定値
models・・・DB情報、DB向け関数
routes・・・URLに紐づくロジック
16
関係のある部屋はだいたい定義されているもの
つたえたいことその3
17
おやくそくを学ぶの大事
使った辞書(厚い)
18
Node.jsもjavascript
(1桁章だけでも斜め読み)
使った辞書(長い)
19
http://expressjs.com/api.html
req.xxxシリーズの定義はだいたい使う
使った辞書(蒼い)
20
ORマッパーわからなくてもまずはここに戻る
こころがけ
21
初心者がやりたいものはだいたいもう世の中、あるいは先輩のコードにある
⇩作る前に各種辞書やコードをみるのが結果早く
やみくもに検索してもわからない
2ヶ月後、チョットは書けるようになってる
22
重要機能はレビュー頂きつつ完成
ちょっとだけ頼られるようになり、うれしい
23
あ、はい・・・(俺やっちゃっていいのか)
これちょっとやっといてください
おすすめ教材(ちょっと手直す必要があるのが特に)
24
express3.x向け。現状最新は4.9なので一部修正必要https://github.com/hiro93n/express_blog
25
怖がらずに書いてみよう!