Upload
tsuubito-ishii
View
982
Download
1
Embed Size (px)
Citation preview
oF の話題が殆ど出ないoF jp Summer Workout
ISHII 2bitbuffer Renaiss inc. / backspace.tokyo
2015/08/23 @ fork
自己紹介• プログラマー
• 黒魔術が好き• C++ のマクロとテンプレートが好き• 早く Concept が正式に C++ に入って欲しい
• 仕事では地味な部分を担当することが多い• 黒い画面大好き
自己紹介• http://github.com/2bbb• http://twitter.com/2bbb• http://2bit.jp/• http://2bi.tokyo/• http://buffer-renaiss.com/• http://backspace.tokyo/
ということで本題
Node.js 最高!
Node.js とは• サーバーサイド JavaScript 環境• ベースは libuv, v8• 大きな特徴は
• イベントループモデル• ノンブロッキング I/O
• socket.io 最高
別にサーバー立てたいわけじゃないし…
NO!!
Node の美味しさ• OSC が送受信出来る (node-osc とか )• zmq が送受信出来る (zeromq.node)• artnet が送受信出来る (node-artnet)• シリアルが送受信出来る (serialport)• 当然 http(s) で REST も吐ける
Node の美味しさ• とにかくモジュールが色々ある
• WebAPI 周りは探せば大体モジュールがある• npm でそんなモジュール管理も簡単
• “npm install HOGE” で大体完了• nvm で node のバージョン管理も簡単• RasPi, Intel Edison, Windows でも普通に動く
Node の美味しくなさ• バージョン上がるの早すぎ
• そんな node で満足出来ず io.js に分離して更に加速• 今度無事統合されるらしいけど色々ややこしい
• Web の情報がすぐ腐る• express (RoR 的な奴 ) が無慈悲な API 変更しまくり
Node の美味しくなさ• C とかで書かれたライブラリはたまにインストールとかではまることもある
• node-gyp とかやると色々はまりがち• 黒い画面でカタカタッターン!な感じになる
最近、個人的にホットな話題
Electron
Electron (atom-shell)• Node.js + Chromium でスタンドアロンアプリが作れる
• http://electron.atom.io• Atom エディターのバックエンドとして開発• エディタ以外のものも書ける• 先発で NW.js ( 旧 node-webkit) がある
• http://nwjs.io
Electron 製のアプリ• Slack Desktop for Windows• Microsoft Visual Studio Code• Qiita Kobito for Windows• Docker GUI
Electron の良いところ• html/css+js でデスクトップアプリが書ける• メニューもちゃんと自分でカスタマイズ出来る• node の資産が使える• ビルドが簡単(配布も簡単そう)
Electron の辛いところ• html/css の知識がある程度必要
• 今更 css レイアウトやり直すの辛い• 普通のブラウザ js とはちょっと違って混乱
• グローバルスコープがややこしい• io.js ベースなのでモジュールではまることがある
node-red
node-red• IBM の偉い人が作った IoT な node 環境
• http://nodered.org• node-red サーバー立ち上げるとブラウザでパッチ繋いで色々出来る• Web 関係のモジュール (Max でいうオブジェクト ) がたくさん
node-red
• つってもあんまりまだ使えてないので紹介だけ
時間があればoF っぽい話題も
C++ の話• C++11 で variadic template も使えるし ,
functional も使えるし , auto とか decltype とかrange-based for 文とかひゃっほーい!
• oF0.9.0 からついに C++11 だ!• ひゃっほーい!!
C++ の話
• template の小技