Dappsゲームイベント参加した話

今週の土曜日6/15に「DAPPS KANSAI#5 ブロックチェーンゲーム最前線」というイベントに参加しました。

正直ブロックチェーンゲームはやったこともないし、そんなに興味もなかったのですがブロックチェーン の勉強のきっかけになるかなと思い行きました。

イベントではDAPPS KANSAI主催まてんろうさん(twitter:https://twitter.com/mat10ro)を司会に「My Crypto Heroes」プロデューサー石川 駿さん、クリプトゲームス株式会社代表取締役小澤 孝太さん、トークンポケット株式会社 Co-Founder中村 昂平をゲストに「ブロックチェーンゲームの現在とこれから」についてを講演、パネルディスカッション、質疑応答を行いました。

 

・イベントの内容、感想について

イベントではブロックチェーンゲームの日本のシェアについてを軸に自社のゲームの詳細や今後、Dappsについてを話ていました。個人的にはMy Crypto HeroesなどDappsゲームをしていないので個々のゲームについての話はついていけなかった印象。ただその中でもブロックチェーン ゲームは特定の運営が作るのではなくゲーム参加者みんなで作るモノ、ブロックチェーンゲームの世界における日本のシェアは一位である話は興味深いモノがあった。ブロックチェーンゲーム他のゲーム機のシェアを奪うものではなく新たなジャンルとして認識されるものであること、ブロックチェーンゲームはただのゲームとは違い時間を奪うと言うよりETH(お金)を稼げるものであると言う話にこの市場の成長の余地が見えた。

 

ブロックチェーンゲームについての考察、考え

ブロックチェーン ゲームのシェアが日本が1位というのは知らなかったし非常に意外であった。ブロックチェーン が盛んなのはアメリカ、チェコエストニア、韓国などの国であるのに対し日本はどちらかと言うと仮想通貨に懐疑的であり、新技術に手を出さない印象だったからだ。実際登壇した石川 駿さん曰く仮想通貨が冷え込みブロックチェーンに懐疑的な雰囲気のなかのゲームリリースだったらしい。このままブロックチェーン に対する日本内の不信感が続けばブロックチェーンゲーム市場も伸び悩むし、世界とのIT力の差が広がることに繋がるように思う。アメリカなどの資本力のある企業の多い国が本腰を入れてブロックチェーンゲーム市場に乗り出せばシェアを奪われることは明白である。自分の意見としてはゲーム大手企業がもっとブロックチェーンゲーム産業に乗り出しこの技術を世間に広めることでブロックチェーンゲームへの不信感を払拭するのがブロックチェーンゲーム産業成長の鍵だと考える。理由として現在も三菱UFJファイナンシャルグループがRipple社やAkamai Technologies, Incと共にブロックチェーンの活用にも乗り出しているが世間の認知は得られていないように感じる。ベンチャー企業の方が新技術を取り入れるスピードは早いが、新規ベンチャーの技術が世間に浸透し認知を変えるに到るまでは不確定さと時間がかかるという難点がある。結論としてゲーム+お金稼ぎというITに興味のない人にも窓口の広いブロックチェーンゲームを大手企業がすることでDapps・ブロックチェーンへの認知、不信感の払拭に繋がり、ひいては日本のブロックチェーン産業全体の成長に繋がるのではないかと考える。まぁベンチャー企業が頑張って世の中変える方が個人的にはカッコいいと思うけど。

 

 

 

railsとオブジェクト指向について

rubyでのオブジェクト指向を考える上でrailsのバリデーションなど考えるのが有効である。バリデーションはモデルクラスに書く処理でありデータの流れがモデルクラスを通ることで処理が働く。バリデーション以外にもコールバック処理などもこれに準ずる。この流れ、1つの筋を意識することがオブジェクト指向を理解する上での1つのヒントとなる。動作毎のクラス、繋がった筋の理解が大切である

railsアプリでの漏れを防ぐ方法について

アプリの漏れとは新規登録してないのに登録後の動作が出来てしまったりすること

railsでの漏れを防ぐ(分岐によるバリデーション)を行う際にview,controller,helper,modelなどで行えるが最良の方法は「helper」で分岐を行うことである。helperとはある動作を処理する場合にメソッド化して扱えるようにRailsにあらかじめ組み込まれた機能のことであり、link_to、form_with、label_for、image_tagなどがこれに含まれる。helperで分岐を行うメリットとしてMVCアーキテクチャの役割の明確化というのがある(MVCを構成する上で各部分の役割を意識して構築していくことは非常に重要である)。viewでの分岐を例にとるとviewにてif,unless分岐などでviewやpathを切り替えることは好ましくない、なぜならviewは「画面の表示」が役割であり分岐を作ることにより本来の表示機能を複雑化(可読性を低下)してしまうからである、そのためviewよりもhelperに処理を記述した後controllerで分岐を引数にhelperの処理に渡すのが最良である。

 

余談だがhelperのselectメソッドをしようすることでセレクトフォームを作れる(activehash的な)