キーワード駆動テスト - Micro Focus · 2018-11-13 · キーワード駆動テスト キーワード駆動テスト は、テスト開発からテスト設計を分離するソフトウェア
アイマス駆動開発 #shinjukurb
-
Upload
treby -
Category
Technology
-
view
1.388 -
download
0
Transcript of アイマス駆動開発 #shinjukurb
アイマス駆動開発2016.02.24 Shinjuku.rb #34
@treby006
自己紹介• treby (Hiroaki Ninomiya) @treby006
• Portfolio: treby.info
• Space Market, Inc
• ユニークな場所でイベントやりたい等ありましたらお気軽に!• Shinjuku.rb 世話役
• LT では枠と時間が余った時に登場します
アイマス駆動開発とは• 2013 年頃にノリで提唱
• アイマス ( 私の場合ミリオン寄り ) 好きな気持ちを開発モチベに利用• 結構響き(とウケ)が良いので、事あるごとに使っている表現• 多分この辺が初出: http://labs.gree.jp/blog/2013/12/10049/
• 最近の仕事上の実績 → アイマス曲を聴きながら作業 → アイマス駆動開発• 自分よし、会社よし、ユーザーよしの三方よし• まさしく Happy Hacking!! ヽ (•̀ω•́ ) ゝ
◯◯ 駆動開発• 「◯◯」に自分が好きなものを入れる• それがコンテンツであれば一次供給者 ( 公式 ) がある程度継続して企画してくれるものの方が長くワークしやすいかも
• 第三者に分かってもらえやすいため ( 承認欲求のような )
• その点でアイマスはコンテンツとして 10 年続いています• 二次創作分野 ( 同人 ) のネタ決めにも近い
• 「好きな気持ち」を仕事や趣味開発のモチベにできる• Web スクレイピングや Twitter bot などはアイマスへのモチベから
アイマス駆動開発の結果を記事に
その反応
アイマス駆動開発はいいぞ• 本質は単なる言葉遊び
• コミュニティでわいやわいやするのも含めて楽しい• どちらか片方の素質 ( アイマス/開発 ) を持つ人と話すのは楽しい• 両方の素質を兼ね備えている人と話すと超楽しい
• 結果として人生が面白くなったり何らかの貢献ができるのであれば良いのではないか• というわけで、今日はアイマス駆動開発メソッドで作った rubimas について紹介します
rubimas について• アイドルマスター ( アイマス ) のアイドルの基本情報を ruby ちっくに取得できる Gem
• https://github.com/imas/rubimas
• 中身は YAML で定義された情報を hashie 使ってメソッドちっくに参照• rubicure に inspire
• rubicure → プリキュアの Gem
• https://github.com/sue445/rubicure
• もともとは rubicure を写経 → 実装面にも強く影響
デモ
rubimas の利用• http://mlborder.com/
• アイマスのゲームについてのサイト / Rails 製• 月間 10,000PV ほど → Heroku の Free dyno 上で運用• アイドルの情報が必要なところで利用• 実質的に rubimas はこのサイトで使いやすくするために改修している感がある……
rubimas の利用
アイドルの名前問題• 従来の rubimas における「アイドルの名前」の取り扱い
• あくまで一要素、中身は単なる String
• 姓と名の間にスペースを入れておき、「名前」部分を取りたいときは split して取り出す。• 大部分のアイドルはこのメソッドで問題なかった
• ただし、 50 人いるアイドルのうち、一部に例外があった• 本名不詳なパターン• 本名とアイドル活動時の名前が異なるパターン
対策:名前を class に• Idol::Name という class を準備
• アイドルの名前に関わるメソッドを持たせる• 苗字・名前や読み仮名など (#family や #given など )
• 本名とアイドル名が違う場合は a.k.a という概念でサポート• to_s メソッドで欲しい名前を定義
• そのまま Idol::Name を画面表示などで String に変換しようとした際に適切な表現となるように。
Rails側の対応• 変える前
• 変えた後
Rails側の対応• 元々 ActiveHash で wrap
• 単純なハッシュという感じでもなくなったので (Idol::Name)
• method_missing なものを rubimas側に移譲• Rails からは ARライクにアイドル情報を扱える
• 冗長なところ多いけど、まあメモリ上に展開されているデータだしいいか、みたいな
まとめ• 話したこと
• アイマス駆動開発• アイドルを愛でるための gem, rubimas
• 何か作っていると業務にも応用ききそうな問題にぶつかることがある• ただし、趣味の場合は仕事と無関係に自分のペースで行えるのでやらなくても良いが、やれば自分の力に。• そのきっかけをくれる点で◯◯駆動開発メソッドは強力だと思う。
Happy Hacking!!