LoginSignup
7
7

More than 5 years have passed since last update.

Node学園 20時限目

Posted at

イベント概要

ESLint Past and Future

@mysticatea
ナガシマさん
ESLintのレビュワー
ES2015のルール半分ぐらい作った人

なぜ作られた?

2013年の夏頃から作られだした
拡張性のある静的解析ツールが欲しかった
JSHintのプラグイン機能の追加がうまくいかなかった

なぜ人気になった?

  • より良い検証ができる
    • プラグイン追加
  • 開発者が貢献するのが簡単
    • 充実したコントリビューション・ガイド
    • 各ルールが疎結合であるため、興味のあるルールだけ読めばOKという手軽さ
    • エコシステムとコミュニティを育てる
  • ES2015のブームに乗った
    • babelと連携できた
  • Reactのブームに乗った

開発体制は?

12人
- 機能はレビュワー以上が確認
- バグはコミッター以上が確認
- masterブランチのみで開発
- 古いバージョンのメンテは今はしていない

サポート体制は?

  • github
  • chatroom
  • stack overflow
  • twitter

裏話

どんな機能がある?

  • ES2016(ES7)までの全構文とJSXをサポート
  • 209の組み込みルール
  • Auto fixing eslint --fix
  • npm経由で設定を共有
  • プラグイン
  • ローカルだけのカスタムルール
  • ラッパーツールも出てる

3.0.0の紹介

未確定情報含む
- Stage4に到達した構文のサポート
- より多くのルールでAuto Fixing
- より良いエディタ連携
- Globベースの設定ファイル
- かなり破壊的変更
- よりよいカスタム・パーサAPI
- for babel-eslint
- よりよいスタイル・ルール
- 各ルールが完全に独立しているので統一感がない
- TypeScriptサポート
- Node 0.xサポート終了
- このリストの中で唯一の確定事項

client side of ■■■■■fresh.tv

資料
@ahomu
サイバーエージェント
frontendweekly.tokyo
フロントエンド関連のメールマガジン

fresh

生放送配信プラットホーム
コメントがsocket.io、放送はHLS

2015年春ごろから開発スタート
Webクライアント開発者4~5人
nginx -> node -> api(golang)
nodeはフロントエンド専用(サーバサイドレンダリング)

ssr

2重テンプレート回避
コンテンツ表示の高速化
JSのみでレンダリングする事のペナルティが少なくない
Isomorphicなパーツ選び(ブログに記載あり)

  • レンダリング、ルーティング、データローディング
  • データローディングだけはサーバとクライアントでリクエストの中身は変わる

Flux周辺の雰囲気

スマートUI
他のコンポーネントと児湯有しないUIはstate使う
Contextでpropsのバケツリレー回避

spa

メリット

  • なんとなく画面遷移が早くなる
  • URLをまたいだ表現が可能になうr

デメリット

  • ブラウザのナビゲーションを破壊してしまう

本当にSPAにするべきなのか?

リンクを押してページ遷移してくようなUIだったらSPAにするよりも今までの方法のほうがよい
Webアプリ的な1つのURLに留まって一部のみを変えていくようなアプリはSPA向き
ブラウザナビゲーションおw破壊するなら責任持って実装するべき

PinPが要件にあったからSPAで実装した

  • ルーティングのあとに画面更新
    • 画面遷移の開始とともに画面真っ白とかはNG
  • ルーチングのあとにスクロール
  • ブラウザバックは即座に表示

components

Page
Project
UI
Utils

設計心得

  • 単機能の組み合わせ
  • 再利用性の程度を明確にすること
  • 規模に応じた簡潔なレイヤリングを持つこと
    • 細かすぎてもざっくりすぎても困る
    • atomic design

まとめ

  • SSR最高
  • SPA向き不向きがある
  • コンポーネントの設計だいじ

ピザ

お皿がなくなるハプニング

Vue.js

Vue.jsの歴史
Laravel(PHP関連)

NodeBotsの話

nObisuke
LIG
Milkcocoaエバンジェリスト

  • konashi.js
  • MESH
  • noble
  • sphero.js
  • gpio
  • cylon.js
  • johnny-five.io
  • nodeshool
    • nodebot workshop
  • Tessel2
  • freeboard
    • データビジュアライズツール

option-tでエラーハンドリング

@saneyuki

エラーの話。ちゃんとハンドリングしよう。

OracleがNode.jsをやり始めたというのだが!

@charlier_shoe

Oracle Node Cloud

  • Application Container Cloud
  • Java SE、Node.jsがリリース
  • Ruby、python、PHPサポート予定

Zipにかためてデプロイ(REST APIあり)
あとからスケールアウト、スケールアップ可能(REST APIあり)
無料で60日

Jet

Javascript Extension Toolkit

5種類のOSSとOracleのソース
はじめてのオラクル「発」のOSS

ひたすら楽してディープラーニング

はじパタ本
kaggle
ひたすら楽してFF6
Python->CoffeeScript->ES2015

noble

力尽きた

7
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
7