Submit Search
Upload
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
•
8 likes
•
5,067 views
kotaro_hirayama
Follow
サイボウズ×マネーフォワード×Goodpatch Front-end Meetup http://connpass.com/event/30188/ #frontend_biz
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 39
Download now
Download to read offline
Recommended
RubyとRailsのおいしい使い方
RubyとRailsのおいしい使い方
Satomi Tsujita
RubyとRailsのおいしい使い方 ver. okayama1
RubyとRailsのおいしい使い方 ver. okayama1
Satomi Tsujita
Rubyを楽しくする第一歩!ブロックを理解する!
Rubyを楽しくする第一歩!ブロックを理解する!
Kanako Kobayashi
Riot.jsとフォームのデータバインディング
Riot.jsとフォームのデータバインディング
Keisuke Imai
Yokohama.vim
Yokohama.vim
gu4
Walking front end
Walking front end
Hirata Tomoko
Riotでサーバレスにした話
Riotでサーバレスにした話
Hiroyuki Hara
Rubyコミッタのいる開発いい話
Rubyコミッタのいる開発いい話
Kenichi Murahashi
Recommended
RubyとRailsのおいしい使い方
RubyとRailsのおいしい使い方
Satomi Tsujita
RubyとRailsのおいしい使い方 ver. okayama1
RubyとRailsのおいしい使い方 ver. okayama1
Satomi Tsujita
Rubyを楽しくする第一歩!ブロックを理解する!
Rubyを楽しくする第一歩!ブロックを理解する!
Kanako Kobayashi
Riot.jsとフォームのデータバインディング
Riot.jsとフォームのデータバインディング
Keisuke Imai
Yokohama.vim
Yokohama.vim
gu4
Walking front end
Walking front end
Hirata Tomoko
Riotでサーバレスにした話
Riotでサーバレスにした話
Hiroyuki Hara
Rubyコミッタのいる開発いい話
Rubyコミッタのいる開発いい話
Kenichi Murahashi
クローズドソースから始めるオープンソース
クローズドソースから始めるオープンソース
Takafumi ONAKA
Kids,Ruby,Fun! ぼくたち、 Rubyプログラミング少年団! 〜小学生からはじめる Ruby プログラミング〜
Kids,Ruby,Fun! ぼくたち、 Rubyプログラミング少年団! 〜小学生からはじめる Ruby プログラミング〜
宏治 高尾
Instagram Ruby Gem と Instagram API から学んだことまとめ|【CoEdo.rb】Ruby / Ruby on Rails ...
Instagram Ruby Gem と Instagram API から学んだことまとめ|【CoEdo.rb】Ruby / Ruby on Rails ...
Yoshinori Kobayashi
RSpecしぐさ
RSpecしぐさ
Takafumi ONAKA
Rails5クイックスタート
Rails5クイックスタート
Hirata Tomoko
KotlinAndroidLibを使ってみた
KotlinAndroidLibを使ってみた
豊明 尾古
Ember コミュニティとわたし
Ember コミュニティとわたし
Ryunosuke SATO
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
Takafumi ONAKA
Ruby with My Life
Ruby with My Life
Hiroshi SHIBATA
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
Hirata Tomoko
Railsから学ぶRESTfulなuri設計
Railsから学ぶRESTfulなuri設計
Kanako Kobayashi
capybara で快適なテスト生活を
capybara で快適なテスト生活を
Ryunosuke SATO
errbit とは何なのか LT (社内勉強会用)
errbit とは何なのか LT (社内勉強会用)
Yukihiro Sunaga
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
Yoshiaki Yoshida
Web開発の 今までとこれから
Web開発の 今までとこれから
Shinichi Takahashi
Wt2015
Wt2015
Satomi Tsujita
of seminar 2014 pure heart edition.
of seminar 2014 pure heart edition.
Tsuubito Ishii
UnofficialCookingの紹介とRedmine本家への貢献
UnofficialCookingの紹介とRedmine本家への貢献
Yuuki Nara
Rubyのススメ
Rubyのススメ
Daisuke Yamaguchi
Ruby on Rails でつくるアタシ好みの愛され Web サービス
Ruby on Rails でつくるアタシ好みの愛され Web サービス
Yoji Shidara
kintoneフロントエンド開発 モダン化への道
kintoneフロントエンド開発 モダン化への道
Yusuke Amano
Jenkins 再入門
Jenkins 再入門
Jumpei Miyata
More Related Content
What's hot
クローズドソースから始めるオープンソース
クローズドソースから始めるオープンソース
Takafumi ONAKA
Kids,Ruby,Fun! ぼくたち、 Rubyプログラミング少年団! 〜小学生からはじめる Ruby プログラミング〜
Kids,Ruby,Fun! ぼくたち、 Rubyプログラミング少年団! 〜小学生からはじめる Ruby プログラミング〜
宏治 高尾
Instagram Ruby Gem と Instagram API から学んだことまとめ|【CoEdo.rb】Ruby / Ruby on Rails ...
Instagram Ruby Gem と Instagram API から学んだことまとめ|【CoEdo.rb】Ruby / Ruby on Rails ...
Yoshinori Kobayashi
RSpecしぐさ
RSpecしぐさ
Takafumi ONAKA
Rails5クイックスタート
Rails5クイックスタート
Hirata Tomoko
KotlinAndroidLibを使ってみた
KotlinAndroidLibを使ってみた
豊明 尾古
Ember コミュニティとわたし
Ember コミュニティとわたし
Ryunosuke SATO
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
Takafumi ONAKA
Ruby with My Life
Ruby with My Life
Hiroshi SHIBATA
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
Hirata Tomoko
Railsから学ぶRESTfulなuri設計
Railsから学ぶRESTfulなuri設計
Kanako Kobayashi
capybara で快適なテスト生活を
capybara で快適なテスト生活を
Ryunosuke SATO
errbit とは何なのか LT (社内勉強会用)
errbit とは何なのか LT (社内勉強会用)
Yukihiro Sunaga
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
Yoshiaki Yoshida
Web開発の 今までとこれから
Web開発の 今までとこれから
Shinichi Takahashi
Wt2015
Wt2015
Satomi Tsujita
of seminar 2014 pure heart edition.
of seminar 2014 pure heart edition.
Tsuubito Ishii
UnofficialCookingの紹介とRedmine本家への貢献
UnofficialCookingの紹介とRedmine本家への貢献
Yuuki Nara
Rubyのススメ
Rubyのススメ
Daisuke Yamaguchi
Ruby on Rails でつくるアタシ好みの愛され Web サービス
Ruby on Rails でつくるアタシ好みの愛され Web サービス
Yoji Shidara
What's hot
(20)
クローズドソースから始めるオープンソース
クローズドソースから始めるオープンソース
Kids,Ruby,Fun! ぼくたち、 Rubyプログラミング少年団! 〜小学生からはじめる Ruby プログラミング〜
Kids,Ruby,Fun! ぼくたち、 Rubyプログラミング少年団! 〜小学生からはじめる Ruby プログラミング〜
Instagram Ruby Gem と Instagram API から学んだことまとめ|【CoEdo.rb】Ruby / Ruby on Rails ...
Instagram Ruby Gem と Instagram API から学んだことまとめ|【CoEdo.rb】Ruby / Ruby on Rails ...
RSpecしぐさ
RSpecしぐさ
Rails5クイックスタート
Rails5クイックスタート
KotlinAndroidLibを使ってみた
KotlinAndroidLibを使ってみた
Ember コミュニティとわたし
Ember コミュニティとわたし
ふつうのRailsアプリケーション開発
ふつうのRailsアプリケーション開発
Ruby with My Life
Ruby with My Life
エンジニアが Webを学ぶために やっててよかったこと
エンジニアが Webを学ぶために やっててよかったこと
Railsから学ぶRESTfulなuri設計
Railsから学ぶRESTfulなuri設計
capybara で快適なテスト生活を
capybara で快適なテスト生活を
errbit とは何なのか LT (社内勉強会用)
errbit とは何なのか LT (社内勉強会用)
表参道.rb #1 Ruby Gold 2.1 に合格した話
表参道.rb #1 Ruby Gold 2.1 に合格した話
Web開発の 今までとこれから
Web開発の 今までとこれから
Wt2015
Wt2015
of seminar 2014 pure heart edition.
of seminar 2014 pure heart edition.
UnofficialCookingの紹介とRedmine本家への貢献
UnofficialCookingの紹介とRedmine本家への貢献
Rubyのススメ
Rubyのススメ
Ruby on Rails でつくるアタシ好みの愛され Web サービス
Ruby on Rails でつくるアタシ好みの愛され Web サービス
Viewers also liked
kintoneフロントエンド開発 モダン化への道
kintoneフロントエンド開発 モダン化への道
Yusuke Amano
Jenkins 再入門
Jenkins 再入門
Jumpei Miyata
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
Yuki Okada
サイボウズ・ラボユース成果報告会
サイボウズ・ラボユース成果報告会
slankdev
サイボウズ・ラボ成果発表会
サイボウズ・ラボ成果発表会
Komei Kamiya
サイボウズの企業風土
サイボウズの企業風土
chika_nakazawa
エンジニアが働きたい場所で働けるために、チームに必要なこと
エンジニアが働きたい場所で働けるために、チームに必要なこと
Yuki Okada
テストエンジニアと組織構造 @Cybozu
テストエンジニアと組織構造 @Cybozu
Jumpei Miyata
サイボウズのフロントエンド開発 現在とこれからの挑戦
サイボウズのフロントエンド開発 現在とこれからの挑戦
Teppei Sato
サンプルTodoから見るreact,flux,redux(古川)
サンプルTodoから見るreact,flux,redux(古川)
hisakatsu furukawa
サイボウズPM(開発PM)について
サイボウズPM(開発PM)について
shoji_yamada
PMの立ち位置について
PMの立ち位置について
SSK
大きい組織におけるPmとその育成についてふわっとした相談をするlt
大きい組織におけるPmとその育成についてふわっとした相談をするlt
Jiro Hiraiwa
Code HAIKU 2012 Introduction
Code HAIKU 2012 Introduction
亮 門屋
Coding beatbox!!
Coding beatbox!!
Daiki Matsumoto
ゲーム情報設計における「霧」との戦い
ゲーム情報設計における「霧」との戦い
裕哉 駒場
rust primer
rust primer
You&I
Browser oh browser browser
Browser oh browser browser
Teppei Sato
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Akira Kuratani
Prott 1st Anniversary - user support and tips
Prott 1st Anniversary - user support and tips
Takafumi Haseda
Viewers also liked
(20)
kintoneフロントエンド開発 モダン化への道
kintoneフロントエンド開発 モダン化への道
Jenkins 再入門
Jenkins 再入門
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
自社サービスkintoneをふんだんに活用したサイボウズの開発フロー
サイボウズ・ラボユース成果報告会
サイボウズ・ラボユース成果報告会
サイボウズ・ラボ成果発表会
サイボウズ・ラボ成果発表会
サイボウズの企業風土
サイボウズの企業風土
エンジニアが働きたい場所で働けるために、チームに必要なこと
エンジニアが働きたい場所で働けるために、チームに必要なこと
テストエンジニアと組織構造 @Cybozu
テストエンジニアと組織構造 @Cybozu
サイボウズのフロントエンド開発 現在とこれからの挑戦
サイボウズのフロントエンド開発 現在とこれからの挑戦
サンプルTodoから見るreact,flux,redux(古川)
サンプルTodoから見るreact,flux,redux(古川)
サイボウズPM(開発PM)について
サイボウズPM(開発PM)について
PMの立ち位置について
PMの立ち位置について
大きい組織におけるPmとその育成についてふわっとした相談をするlt
大きい組織におけるPmとその育成についてふわっとした相談をするlt
Code HAIKU 2012 Introduction
Code HAIKU 2012 Introduction
Coding beatbox!!
Coding beatbox!!
ゲーム情報設計における「霧」との戦い
ゲーム情報設計における「霧」との戦い
rust primer
rust primer
Browser oh browser browser
Browser oh browser browser
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Tokyo Salesforce DG Meetup 2017新年会〜Advent Calendarふりかえり〜
Prott 1st Anniversary - user support and tips
Prott 1st Anniversary - user support and tips
Similar to 『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
Long Life RailsApp in the case of REJOB
Long Life RailsApp in the case of REJOB
Daisuke Yamasaki
Application Bootstrap
Application Bootstrap
Takafumi ONAKA
RubyとRのおいしい関係
RubyとRのおいしい関係
sady_nitro
Railsチュートリアル(second)を終えて
Railsチュートリアル(second)を終えて
Hirata Tomoko
Ruby on Rails を用いたWEBアプリケーションの開発
Ruby on Rails を用いたWEBアプリケーションの開発
Koichi Shimozono
20130615 組込みの仕事場でRubyを使う
20130615 組込みの仕事場でRubyを使う
Ryo Nagai
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Tomoya Kawanishi
[RubyMotion LT] nitronに見るiosアプリ開発の未来
[RubyMotion LT] nitronに見るiosアプリ開発の未来
Masahiro Nishimi
RubySeminar16_Analyze
RubySeminar16_Analyze
sady_nitro
Ruby リファレンスマニュアル改善計画 2022 進捗報告
Ruby リファレンスマニュアル改善計画 2022 進捗報告
Kazuhiro Nishiyama
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Yuta Shimizu
はじめてがアジャイル
はじめてがアジャイル
Kenichi Takahashi
Game BaaS Implemented in Ruby
Game BaaS Implemented in Ruby
dena_study
Ruby and I at 神奈川Ruby会議01
Ruby and I at 神奈川Ruby会議01
Yutaka Tachibana
Rubyによる開発プロジェクトをうまく回すには(1)
Rubyによる開発プロジェクトをうまく回すには(1)
Yasuko Ohba
rake:money拡大版@Ruby会議2010 ~Rubyエンジニアと企業の幸せな関係~
rake:money拡大版@Ruby会議2010 ~Rubyエンジニアと企業の幸せな関係~
Ouka Yuka
Ruby on railsでlinebotを試した記録
Ruby on railsでlinebotを試した記録
Fumiya Sakai
frozen string literal in Ruby
frozen string literal in Ruby
Koichi ITO
組込み向けRuby処理系mrubyの可能性
組込み向けRuby処理系mrubyの可能性
Salesforce Developers Japan
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
schoowebcampus
Similar to 『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
(20)
Long Life RailsApp in the case of REJOB
Long Life RailsApp in the case of REJOB
Application Bootstrap
Application Bootstrap
RubyとRのおいしい関係
RubyとRのおいしい関係
Railsチュートリアル(second)を終えて
Railsチュートリアル(second)を終えて
Ruby on Rails を用いたWEBアプリケーションの開発
Ruby on Rails を用いたWEBアプリケーションの開発
20130615 組込みの仕事場でRubyを使う
20130615 組込みの仕事場でRubyを使う
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
Ruby ビジネス創出展 Ruby初心者向けプログラミングセミナー
[RubyMotion LT] nitronに見るiosアプリ開発の未来
[RubyMotion LT] nitronに見るiosアプリ開発の未来
RubySeminar16_Analyze
RubySeminar16_Analyze
Ruby リファレンスマニュアル改善計画 2022 進捗報告
Ruby リファレンスマニュアル改善計画 2022 進捗報告
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
はじめてがアジャイル
はじめてがアジャイル
Game BaaS Implemented in Ruby
Game BaaS Implemented in Ruby
Ruby and I at 神奈川Ruby会議01
Ruby and I at 神奈川Ruby会議01
Rubyによる開発プロジェクトをうまく回すには(1)
Rubyによる開発プロジェクトをうまく回すには(1)
rake:money拡大版@Ruby会議2010 ~Rubyエンジニアと企業の幸せな関係~
rake:money拡大版@Ruby会議2010 ~Rubyエンジニアと企業の幸せな関係~
Ruby on railsでlinebotを試した記録
Ruby on railsでlinebotを試した記録
frozen string literal in Ruby
frozen string literal in Ruby
組込み向けRuby処理系mrubyの可能性
組込み向けRuby処理系mrubyの可能性
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの広め方〜PR・継続できる目標の立て方・改善編 先生:増井 雄一郎
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
1.
健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜 2016/05/12 平山 光太郎 Twitter: @kotaro_hirayama
/ GitHub: @khirayama
2.
◯概要・背景 ◯実装方針 ◯TIPS ◯今後 内容
3.
自己紹介 @kotaro_hirayama @khirayama 平山 光太郎
4.
5.
マネーフォワード、Ruby on Rails/Rubyコミッター の松田明氏を技術顧問に フルタイムRubyコミッターを採用Ruby1.8.6/1. 8.7のリリースマネージャである卜部昌平氏が 就任
6.
Rubyコミッターと 働きたいJSerのみなさん、 おいでよ!
7.
お前の仕事はJSだけどな
8.
マネーフォワード、Ruby on Rails/Rubyコミッター の松田明氏を技術顧問に フルタイムRubyコミッターを採用Ruby1.8.6/1. 8.7のリリースマネージャである卜部昌平氏が 就任
9.
仕訳帳入力 - スプレッドシートみたいなUI - 会計向け機能が豊富
10.
実装方針
11.
◯できるだけRails Way ◯実装の初期コストが安い ◯ユニットテストを手軽に書ける環境 ◯UIウェイトがデカいものは別リポジトリで作って乗っける 実装方針
12.
◯エントリポイントを決める ◯JSユニットテストの導入 ◯フロントの裁量範囲を広げる やってること
13.
エントリポイントを決める
14.
期待されたものが期待されたとこにある
15.
CaPartnersController#indexの場合 TIPS1: 1ページに1エントリポイント設ける
16.
CaPartnersController#indexの場合 TIPS1: 1ページに1エントリポイント設ける
17.
CaPartnersController#indexの場合 TIPS1: 1ページに1エントリポイント設ける app/assets/javascript/ca_partners/index.jsを作成
18.
CaPartnersController#indexの場合 TIPS1: 1ページに1エントリポイント設ける app/assets/javascript/ca_partners/index.jsを作成 コントローラ名 アクション名
19.
複数ファイルに分割される場合、application.jsに1つずつrequireする。 TIPS1: 1ページに1エントリポイント設ける assets/javascript/application.js
20.
依存関係の解消 複数ファイルに分割される場合、application.jsに1つずつrequireする。 TIPS1: 1ページに1エントリポイント設ける assets/javascript/application.js
21.
依存関係の解消 複数ファイルに分割される場合、application.jsに1つずつrequireする。 TIPS1: 1ページに1エントリポイント設ける require_treeやjavascript_include_tagは不必要に使用しない assets/javascript/application.js
22.
TIPS2: Controller名とaction名を取得する ex) views/layouts/application.html.slim views/layouts/application.html.slimなどに上記のように記述
23.
TIPS2: Controller名とaction名を取得する JSの世界でController名とaction名を取得できるように views/layouts/application.html.slimなどに上記のように記述 ex) views/layouts/application.html.slim
24.
TIPS2: Controller名とaction名を取得する assets/ca_partners/index.js.coffee
25.
TIPS2: Controller名とaction名を取得する assets/ca_partners/index.js.coffee Controller名 /
action名を利用してエントリポイントを動作させる
26.
TIPS2: Controller名とaction名を取得する assets/ca_partners/index.js.coffee Controller名 /
action名を利用してエントリポイントを動作させる sprocketsなどで結合されても必要な箇所でのみ動作する 副作用の発生は、この中でのみ許可する
27.
TIPS3: 実装ガイドラインの整備 非フロントエンドの人でも始めやすいようガイドラインを作成 健康な状態を維持する
28.
JSユニットテストの導入
29.
テストしてますか?
30.
ブラウザでテストを動かす
31.
/js_testを作成し、mochaをクライアントサイドで動かす。 テスティングフレームワーク: mocha アサーションライブラリ: chai TIPS4:
ブラウザでテストを動かす config/routes.rb views/js_test/index.html
32.
/js_testにアクセスしたら実行される
33.
TIPS5: テストガイドラインの整備 非フロントエンドの人でも始めやすいようガイドラインを作成 ハードルをさげ、カバレッジをあげる
34.
フロントの裁量範囲を広げる
35.
仕訳帳入力 - スプレッドシートみたいなUI - 会計向け機能が豊富
36.
複雑な機能を作る場合、 別リポジトリで好きに作って 単体のJSライブラリにする 個人の裁量で自由に開発! TIPS6: 別リポジトリで作成してRailsに乗っける
37.
◯Rails Wayに乗っかる(しばらくは) ◯node環境リライトしたい人は一緒やろう... |ω・`)チラ 今後
38.
今日話したこと ◯エントリポイントを決める 1ページに1エントリポイント設ける Controller名とaction名を取得する 実装ガイドラインの整備 ◯JSユニットテストの導入 ブラウザでテストを動かす テストガイドラインの整備 ◯フロントの裁量範囲を広げる 別リポジトリで作成してRailsに乗っける
39.
ありがとうございました!
Download now