Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

20160716 Gemのお話

908 views

Published on

Ruby関西勉強会#73 2016-07-16(土) @cawa

Published in: Engineering
  • Be the first to comment

  • Be the first to like this

20160716 Gemのお話

  1. 1. Gemのお話 Ruby関西勉強会#73 2016-07-16(土) @cawa
  2. 2. 自己紹介 qかわはら たかひろ q@cawa q2016年4月からRailsでWebサービス開発中(未リリース) q2015年にRails Tutorialを写経して入門 qKyoto.rb 週末開催担当 • 7月は24日(日)、28日(木)、8月は6日(土)にあります(宣伝) qRubyKaigi2016@Kyoto (9月8〜10日) のお手伝いも少々
  3. 3. アンケート結果(1/3) ※リアルタイムで実施
  4. 4. アンケート結果(2/3) ※リアルタイムで実施
  5. 5. アンケート結果(3/3) ※リアルタイムで実施
  6. 6. Gemのお話 qGemってなんだっけ qGemを見つけてから使うまで qGem紹介
  7. 7. Gemって何だっけ qGemとは • Rubyのライブラリの形式 qGemに関する情報の取得 • rubygems.org • 各gemのオフィシャルページ(githubなど) qどんなgemがあるの • フレームワーク(Rails, Sinatraなど) • 機能実装(ログイン、ページネーションなど) • 非機能実装(テスト、デバッグ、DB接続など) • 外部サービス接続(SAAS)
  8. 8. Gemを見つけて使うまで q見つけ方 • ”Rails ログイン”などで検索して見つける • 他のエンジニアから教えてもらって知る q使う時 1. 最終更新日付、スター数、ダウンロード数など確認 2. GithubのReadmeなどオフィシャル情報読む 3. “gem_name vs”などで関連情報をGoogle先生にあげてもらう 4. 日本語ブログやStackoverflowを流し読み
  9. 9. Gem紹介(1) フレームワーク: Rails q代表的MVCフレームワーク qRuby on Railsチュートリアル(railstutorial.jp)より • 1.2.2 Railsをインストールする qチュートリアルをゴールから見る • github.com/railstutorial/sample_app_rails_4 ØGemfile ØGemfile.lock
  10. 10. Gem紹介(2)画像管理Saas: Cloudinary q画像ホスティング、画像変換 • hosting_url/w_250,h_250,c_thumb,g_face/sample.jpg à sample.jpgから顔判定したサイズ250x250のサムネイル画像 • 2GB, 75,000 fileまで無料! 変換後オリジナル プライシング
  11. 11. Gem紹介(2)画像管理Saas: Cloudinary qGemにより簡単にUpload及び画像変換可能 auth = { cloud_name: "somename", api_key: "1234567890", api_secret: "FooBarBaz123" } Cloudinary::Uploader.upload("my_picture.jpg", auth) cl_image_tag("woman.jpg", :width => 90, :height => 90, :crop => :thumb, :gravity => :face) • Upload • 画像変換
  12. 12. Gem紹介(3)jsライブラリ:dropzonejs/spinjs qdropzonejs: ドラッグ&ドロップで画像アップロード • Jsとcssを読み込むだけ… //= require dropzone js css *= dropzone/dropzone q Jsファイル落としてAsset pipelineで読み込むのと何か違うの? • 違いません (dropzonejs は rails generate あるけど…) • このgem要らない子!? • ソースコードが超絶少ないので最小構成のgemのお勉強になります q spinjs: 公式サイト見ましょうか • jsを読み込むだけ…
  13. 13. Gem紹介(4) 便利なやつ: pry q強化版irb (interactive Ruby) • ハイライトが入る, 諸々のコマンド, Shellと統合などなど q他にもpry-doc, pry-rails, pry-byebug, pry-stack_explorerなどあるが… • 割愛! $ gem install pry $ pry [1] pry(main)> puts “Hello world!” # ハイライト確認 [2] pry(main)> .pwd # Shell統合 [3] pry(main)> cd “Hello world!” # オブジェクトへ移動 [4] pry(“Hello world!”)> ls # オブジェクトのメソッドなど表示 [5] pry(“Hello world!”)> exit # オブジェクトから移動 [6] pry(main)> help # ヘルプコマンド [7] pry(main)> hist # 履歴コマンド
  14. 14. まとめ • GemはRubyのLibrary • Gem使うときは色々なサイトから立体的に情報とる • Gem紹介 • 1)フレームワーク: Rails • 2)画像管理Saas: Cloudinary • 3) jsライブラリ: Dropzone.js / Spin.js • 4) 便利なやつ: pry

×