SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Shinjuku.rb #28 LT
タケユー・ウェブ 竹内雄一
Shinjuku.rb #28 LT
• 竹内 雄一
• さいたま市
• フリーランス WEBエンジニア
(受託メイン 設計~運用)
• Ruby on Rails 1.1ぐらいから
• そのほかCMS AWS 鯖管 など
• むかしつくったもの
• rack-ketai … jpmobileがrack対応してなかった時のやつ
• KetaiPost … Movable Typeでメール投稿するやつ
お世話になった本たち@takeyuweb
今日触ったEngine
• ConfortaleMexicanSofa
• 既存のRailsアプリにCMS機能を追加
できるEngine
• ページ管理
• ファイル管理
• リビジョン管理
• デザインテンプレート管理 etc
• たとえばサービスの規約ページとか
紹介ページとかエンジニア以外が触
りたいページを置くのに便利そう
• 今までは独自にPage管理機能を作っ
たり、コントローラにページ用の
actionとか追加してた
• 案件で使うと思う
Rails Engine
• 独立した機能を提供するもの
• CMS
• ConfortableMexicanSofa
• 管理画面
• Rails Admin
• 認証機構
• Devise
• アセット回り
• Turbolinks
• その他、アプリでよく使う機能をひ
とくくりにしてEngineのgemにすれ
ば捗るかもね!
• マイクロサービス的なもの
• モデルなどコアのコードを共有する
サブアプリケーションに分離
• 昔はSubversionでモデルのコードだけ
共有とかしてた
• 先に1つのRailsアプリで作ったものを
Engineに切り出すこともできるよ
• Initializerとかももちろん使えるよ
• コアをEngineしておくのか、Engineでコ
アを拡張するのか
(このページは急遽追加されました。)
Rails Engineで
マイクロサービス指向開発を
実践した話
アプリの分離/サブアプリそれとも独立したアプリ?
ソースコードの共有化とバージョン管理、テスト、デプロイ etc…
を話せるほどのノウハウは持ってないので
Rails Engineで
変なことをした話
Rails Engine
Railsアプリに別のアプリを乗っけることができる
Blorgh
ブログ風機能を追加するエンジン
http://railsguides.jp/engines.html
ところで
Movable Type
• 古参ブログツール・CMS
• 僕の飯の種のひとつ
• 「昔使ってました」
• Perl製(Plack/CGI)
ブログ風機能ではなく
ブログを乗っけてみてはどうだろうか
MTEngine
出会ってはならないふたりが出会ってしまった…
×
こんなのもできるぞRails Engine!
ごめんなさい。
だって他の人がもっとちゃんとしたのやるとおもってたんだもの。
Shinjuku.rb #28 LT Rails Engineで変なことをやってみた話

Weitere ähnliche Inhalte

Ähnlich wie Shinjuku.rb #28 LT Rails Engineで変なことをやってみた話

広島Ruby勉強会#35プレゼン
広島Ruby勉強会#35プレゼン広島Ruby勉強会#35プレゼン
広島Ruby勉強会#35プレゼンKakigi Katuyuki
 
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01Yuta Shimizu
 
Redisへと至る、gumiデータストアの歴史
Redisへと至る、gumiデータストアの歴史Redisへと至る、gumiデータストアの歴史
Redisへと至る、gumiデータストアの歴史知教 本間
 
Ember コミュニティとわたし
Ember コミュニティとわたしEmber コミュニティとわたし
Ember コミュニティとわたしRyunosuke SATO
 
マイクロサービスにおける 非同期アーキテクチャ
マイクロサービスにおける非同期アーキテクチャマイクロサービスにおける非同期アーキテクチャ
マイクロサービスにおける 非同期アーキテクチャota42y
 
Rendr入門: サーバサイドで(も)動かす、Backbone.js
Rendr入門: サーバサイドで(も)動かす、Backbone.jsRendr入門: サーバサイドで(も)動かす、Backbone.js
Rendr入門: サーバサイドで(も)動かす、Backbone.jsMasahiko Tachizono
 
Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19Atsuo Yamasaki
 
レガシーシステムのDBマイグレーションし始めた話
レガシーシステムのDBマイグレーションし始めた話レガシーシステムのDBマイグレーションし始めた話
レガシーシステムのDBマイグレーションし始めた話nekogeruge_987
 
MTAppjQueryでマニュアルいらずの管理画面を
MTAppjQueryでマニュアルいらずの管理画面をMTAppjQueryでマニュアルいらずの管理画面を
MTAppjQueryでマニュアルいらずの管理画面をbitpart
 
Rubyで作るtwitter風webアプリケーション
Rubyで作るtwitter風webアプリケーションRubyで作るtwitter風webアプリケーション
Rubyで作るtwitter風webアプリケーションNaoto Hori
 
RubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にするRubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にするnomlab
 
Sprocketsを捨てたい
Sprocketsを捨てたいSprocketsを捨てたい
Sprocketsを捨てたいMasato Noguchi
 
grpc-gateway を試してみた fukuoka.go#11
grpc-gateway を試してみた fukuoka.go#11grpc-gateway を試してみた fukuoka.go#11
grpc-gateway を試してみた fukuoka.go#11Yutaka Tachibana
 
ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】schoowebcampus
 

Ähnlich wie Shinjuku.rb #28 LT Rails Engineで変なことをやってみた話 (20)

広島Ruby勉強会#35プレゼン
広島Ruby勉強会#35プレゼン広島Ruby勉強会#35プレゼン
広島Ruby勉強会#35プレゼン
 
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
Railsエンジニアが サーバーレスアーキテクチャに 手を出したよ - 川崎Ruby会議01
 
Redisへと至る、gumiデータストアの歴史
Redisへと至る、gumiデータストアの歴史Redisへと至る、gumiデータストアの歴史
Redisへと至る、gumiデータストアの歴史
 
Ember コミュニティとわたし
Ember コミュニティとわたしEmber コミュニティとわたし
Ember コミュニティとわたし
 
マイクロサービスにおける 非同期アーキテクチャ
マイクロサービスにおける非同期アーキテクチャマイクロサービスにおける非同期アーキテクチャ
マイクロサービスにおける 非同期アーキテクチャ
 
SQLWorld★大阪#7
SQLWorld★大阪#7SQLWorld★大阪#7
SQLWorld★大阪#7
 
Rendr入門: サーバサイドで(も)動かす、Backbone.js
Rendr入門: サーバサイドで(も)動かす、Backbone.jsRendr入門: サーバサイドで(も)動かす、Backbone.js
Rendr入門: サーバサイドで(も)動かす、Backbone.js
 
Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19Silverlightを囲む会in大阪#19
Silverlightを囲む会in大阪#19
 
レガシーシステムのDBマイグレーションし始めた話
レガシーシステムのDBマイグレーションし始めた話レガシーシステムのDBマイグレーションし始めた話
レガシーシステムのDBマイグレーションし始めた話
 
MTAppjQueryでマニュアルいらずの管理画面を
MTAppjQueryでマニュアルいらずの管理画面をMTAppjQueryでマニュアルいらずの管理画面を
MTAppjQueryでマニュアルいらずの管理画面を
 
Rubyで作るtwitter風webアプリケーション
Rubyで作るtwitter風webアプリケーションRubyで作るtwitter風webアプリケーション
Rubyで作るtwitter風webアプリケーション
 
RubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にするRubyでGitHubをちょっと便利にする
RubyでGitHubをちょっと便利にする
 
Yapc2012ltthon
Yapc2012ltthonYapc2012ltthon
Yapc2012ltthon
 
Sprocketsを捨てたい
Sprocketsを捨てたいSprocketsを捨てたい
Sprocketsを捨てたい
 
SQLWorld★大阪#8
SQLWorld★大阪#8SQLWorld★大阪#8
SQLWorld★大阪#8
 
grpc-gateway を試してみた fukuoka.go#11
grpc-gateway を試してみた fukuoka.go#11grpc-gateway を試してみた fukuoka.go#11
grpc-gateway を試してみた fukuoka.go#11
 
Zynga
ZyngaZynga
Zynga
 
Aws privte20110406 arai
Aws privte20110406 araiAws privte20110406 arai
Aws privte20110406 arai
 
ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】ブラウザだけで学ぶWebアプリ開発【デザイン編】
ブラウザだけで学ぶWebアプリ開発【デザイン編】
 
今さら聞けない人のためのDevOps超入門
今さら聞けない人のためのDevOps超入門今さら聞けない人のためのDevOps超入門
今さら聞けない人のためのDevOps超入門
 

Mehr von Takeuchi Yuichi

Rails受託会社を作っている話
Rails受託会社を作っている話Rails受託会社を作っている話
Rails受託会社を作っている話Takeuchi Yuichi
 
Web時代の完全リモート会社作り
Web時代の完全リモート会社作りWeb時代の完全リモート会社作り
Web時代の完全リモート会社作りTakeuchi Yuichi
 
素人のための機械学習
素人のための機械学習素人のための機械学習
素人のための機械学習Takeuchi Yuichi
 
最近やった決済システムの実装の話
最近やった決済システムの実装の話最近やった決済システムの実装の話
最近やった決済システムの実装の話Takeuchi Yuichi
 
使ってみたAssets系gemの紹介
使ってみたAssets系gemの紹介使ってみたAssets系gemの紹介
使ってみたAssets系gemの紹介Takeuchi Yuichi
 
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~Takeuchi Yuichi
 
アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方
アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方
アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方Takeuchi Yuichi
 

Mehr von Takeuchi Yuichi (7)

Rails受託会社を作っている話
Rails受託会社を作っている話Rails受託会社を作っている話
Rails受託会社を作っている話
 
Web時代の完全リモート会社作り
Web時代の完全リモート会社作りWeb時代の完全リモート会社作り
Web時代の完全リモート会社作り
 
素人のための機械学習
素人のための機械学習素人のための機械学習
素人のための機械学習
 
最近やった決済システムの実装の話
最近やった決済システムの実装の話最近やった決済システムの実装の話
最近やった決済システムの実装の話
 
使ってみたAssets系gemの紹介
使ってみたAssets系gemの紹介使ってみたAssets系gemの紹介
使ってみたAssets系gemの紹介
 
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
プラグイン作者脳になろう ~実案件で学ぶプラグイン開発フロー~
 
アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方
アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方
アイテムのアップロード時にCGIMaxUploadを無視するプラグインの作り方
 

Shinjuku.rb #28 LT Rails Engineで変なことをやってみた話