このページの本文へ移動

Menu

メニュー

  • 企業 
  • ニュース 
  • サービス 
  • 技術・デザイン 
  • 採用 
  • 投資家情報 
  • サステナビリティ 
  • CyberAgent Way 

 

登壇

「Go Conference 2022 Spring」に島田裕司、筋野正太、鈴木光、渋谷拓真が登壇いたします

2022年4月23日(土)に開催されるGo言語に関する日本最大級のオンライン技術カンファレンス「Go Conference 2022 Spring」に、サイバーエージェントから島田裕司、筋野正太、鈴木光、渋谷拓真が登壇いたします。

■Go Conference 2022 Spring

Go Conferenceは半年に1回行われるプログラミング言語Goに関するカンファレンスです。

■登壇について

・発表者
島田 裕司

・セッションタイトル
Goの標準機能で簡易システムを低コストで作成するテクニック

・概要
Goによるゲーム開発のプロジェクトにて、Go標準の機能を複数活用し、実装コストの低いデバッグツール開発基盤を作成しました。 本セッションのデバッグツールとは、動作確認やデバッグのため、ユーザーのレベル操作や所持アイテムの増減等、データの状態を操作・参照するAPI群、及びwebツールを指します。 デバッグツールの拡充は、ゲームに限らず様々な分野で成果物の品質に直結しますが、ドメイン固有のロジック実装に集中するためにはより低コストで開発できることが望ましいです。 本セッションでは、低コストで開発を行えるデバッグツール基盤をどのように実現したのかを紹介します。

--------------------------------------------

・発表者
筋野 正太

・セッションタイトル
大規模ゲーム開発におけるContext活用パターン

・概要
GoのContextではリクエストスコープの値を伝播する事ができます。 主な利用例として認証トークンを伝搬させる手法がありますが、ゲーム開発においては他にも様々なContextの利用方法があります。このセッションでは大規模ゲーム開発で利用しているContextの活用パターンについてお話しします。 Contextを活用することで、DBアクセス頻度を少なくしたり、レスポンスサイズを小さくする工夫ができたため、その実装手法を共有します。

--------------------------------------------

・発表者
鈴木 光

・セッションタイトル
高速で統一的な自動生成ツールをprotocプラグインとして実装した話

・概要
Go言語には総称型が実装されていないためコードを自動生成して賄うことが多いです。ここで自動生成のソースをGo言語自体とした場合、よくある手法としてreflectパッケージによる生成が行われますが、ソースが多いと実効速度がネックとなってしまいます。 また、StructTagを活用したオプション設定は便利ですが、文字列による設定なのでタイプミスも発生します。そこでProtocolBuffersをソースとする自動生成ツールをprotocプラグインとして実装することで、オプションを型安全にしつつ実行速度を大幅に向上させることに成功しました。 今回はこのprotocプラグインを紹介します。

--------------------------------------------

・発表者
渋谷 拓真

・セッションタイトル
database/sqlパッケージを理解する

・概要
私たちはdatabase/sqlと好きなdatabaseのdriverをimportすることで、とても簡単にGoとdatabaseの通信をすることができるようになります。 とても便利ですが、なぜdatabaseのdriverはblank importをするだけでDBの種類を識別できているのでしょうか。 また、Goのdatabase/sqlはgoroutineで複数接続しても安全に処理することができますが、どのように制御しているのでしょうか。 このトークを聞くことにより、普段何気なく行っていたdatabase/sqlの仕組みを理解した上でアプリケーションを実装することができるようになります。