LoginSignup
2

More than 5 years have passed since last update.

【勉強会まとめ】サービスを Ruby / Rails で成長させるためにやったこと

Last updated at Posted at 2018-01-19

はじめに

「サービスを Ruby / Rails で成長させるためにやったこと」に参加して来ました。
そのときのまとめを留めておきます。

今回、勉強会を開催してくださった会社:メドピア株式会社 / 株式会社みんなのウェディング

ハッシュタグ:#medpeer_mwed

テーマ

  • どうやってチームで開発力をつければいいのか悩んでいるがどうしたらいいの?
  • サービスの改善をどうやってスピーディーに行うの?
  • Ruby on Rails へのシステム移行(や、その周辺システムとの接続部分)はどうしたらいいの?

とあったんですけど、実際に参加してみたら話の内容として、
他の言語からRuby(Rails)へ移行するときに困ったことってのが多かった気がします。

内容

勉強会の詳しい中身は、タイムテーブル通りです。

新卒研修の OJT で学んだこと

新卒一年目の方が、MobasifからRailsへ移行するときに、DB周りの改修で困ったことを発表

  • テーブル、カラム名に略語が使用されていて、それが何を表すのかわからなかった
  • 使用されていないカラムが多かった
  • マルチカラムアトリビュートアンチパターンの解消

またデータ移行に関しては、
SQL直書き + Railsで頑張ったとのこと。
反省として、ActiveRecord::Base.connectionを使えばよかったと。

当日の資料がアップされました。

Webpacker導入時におさえておきたい設定

  • webpackを扱うためのラッパーgem
  • rails5.1から導入(5.1じゃなくても使える)

あったほうがいい設定&忘れがちな設定

3つ紹介されました。

① CommonsChunkPlugin

複数のエントリーポイント間で利用している共通モジュールをバンドルしたファイルを出力するプラグイン

メリットとしては、

  • 全体のファイルサイズが小さくなる

    • 複数のエントリーポイントが1つの共通ファイルを利用するため
  • ファイルの読み込み速くなる

    • 共通ファイルなのでキャッシュを活用できる

こちらの記事にも詳細載ってました。

② babel-polyfill と babel-plugin-transform-runtimeについて

  • babel-polyfill

    • エントリーポイントの先頭にimportしないといけない
    • グローバルスコープの汚染
  • babel-plugin-transform-runtime

    • 複数エントリファイルから呼び出していても問題無い
    • グローバルスコープ汚染をしない
    • ただ、インスタンスメソッドの[1,2,3].inclues(3)とかは変換出来ない(なかなかつらそう)

他に参考になりそうな記事

③ rails-ujs

  • ajax通信のget以外をよしなにやってくれる

参考記事はこちら


上記3点の詳細のコードはこちらに載っているそうです。
当日の資料がアップされました。

メドピアの輪読会

発表の中でとくによかったなーと個人的に思ったのは、
本を読んでいくなかで、チームの「決めの問題」の部分を事前に議論できたというところでした。

ex)
Railsのcontrollerのonly/exceptどっち使う?などなど

当日の資料がアップされましたので、載せておきます。

Rails移行のレキシ

スライドはこちらになります。
また、こちらのスライドは当日の発表では使用されていませんでしたが、関連しているので貼っておきます。

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
2