アーキテクチャをスマートに。

株式会社ネオジニア代表。ITアーキテクトとしてのお仕事や考えていることなどをたまに綴っています。(記事の内容は個人の見解に基づくものであり、所属組織を代表するものではありません)

ネオ富豪の開催にあたって(1)きっかけ

1月25日(土)に開催したプログラミングコンテストネオ富豪」の開催にあたって、準備段階の構想や考えていたこと、反省点などを備忘録を兼ねて記録しました。
完全じゃないですがだいたい時系列です。日付がわかる出来事は日付を書き添えています。

続きを読む

ネオ富豪の開催にあたって(2)アーキテクチャが決まるまで

当初の構想

ナポレオンアプリを作った経験から、画面の構成はほとんど迷うことなく決まっていました。(なので自然と5人対戦という仕様になりました)
ゲームシステムも、マスタープログラムが1つあって、そこにプレイヤープログラムがいくつもつながって連携しながら動く、という考え方はそのまま採用しました。
でネポレオンで実現できていなかったネット対戦の構想を思い出しました。
マスターとプレイヤーをクラサバ方式にして、TCP/IP でセッション張ってプロトコル定義して通信するようにしてみよう、というアイデアです。

続きを読む

ネオ富豪の開催にあたって(3)クイックプレイ〜ランディングページ

マスタサーバの実装

そんなこんなで、マスタサーバの実装にとりかかりました。
Web上で簡単に大富豪をプレイできる、というのが今回のアーキテクチャのすごいところなので、クイックプレイという機能をつけようと思いました。要するに、モバイルでもPCでも、特別なアプリをインストールすることなく、すぐ簡単にプレイできるんだから、トップページからすぐにプレイ画面にアクセスすることができる機能を付けることによって、より多くに人に利便性を感じて欲しいと考えたからです。

続きを読む

ネオ富豪の開催にあたって(4)追加機能

再接続対応

参加者のプログラムは、ネット経由なので通信途絶えたり、プログラムバグで強制終了してしまったりすることも想定されます。
その場合にどう対応するべきかを考えました。

続きを読む

ネオ富豪の開催にあたって(5)プレイヤープログラムの制作〜大会終了後

ネオ爺の制作

プレイヤープログラムの着手にあたっては、当初から C++ で組んでAndroidアプリとしてパッケージングするつもりだったのでナポレオンアプリのプログラムの構造を大きく流用しました。

続きを読む