DELiGHTWORKS

DELiGHTWORKS株式会社の開発に関する情報を発信していきます。

ディライトワークスを支える技術

はじめに

ディライトワークスのエンジニアの磯波です。

この記事では、ディライトワークスの中で使われているエンジニアリングについて紹介させていただきたいと思います。

技術

ディライトワークスでは、クライアントの技術としてUnity(C#)、

サーバーの技術として.NET Framework(C#)を利用しています。

なぜC#なのかということには理由があります。

その最も大きい理由として「最新鋭の言語」であるということです。

C#という言語の出自には非常に面白い経緯があり、主要な開発陣は元々はBorlandという会社のDelphiという言語を開発していた人たちです。

構文やフレームワーク構成に関しても、Javaに近いように見えるかもしれませんが、実際には1995年に生まれたDelphiという言語に準じています。

かといって、決して古くさい言語ではありません。

なぜならC#として作り直されたときに洗練され、かつ進化しているからです。

故に古い歴史をもち、かつ今でも最新鋭の機能を取り込み続けている言語なのです。

なぜC#なのか?

上記の通りC#は進化し続ける言語です。

今年も6.0がリリース(2015年7月20日)され、様々な機能が導入されました。

いまゲーム開発では非常に高い水準の技術が求められています。

その中で、言語が進化し続けるということは非常に優れた強みと言えます。

どんどんプログラマは楽になっていく訳ですから。

そして、Unity上でも動作し、ASP.NETでサーバーでも動作する、また、WPFによるツール開発にだって使えます。

あらゆる状況で一流の仕事ができる言語というのはC#をおいて他にはありません。

私たちはC#に拘ることで最高のものを最速のスピードで生み出すことを心がけています。

Visual Studio + ReSharper

かつてVisual StudioはVisualではない、なんてことを言われた時代もありましたが、今は違います。

非常に強力なIntelliSenseを持ち、使い勝手の良い最強のエディタであると言えます。

また、ディライトワークスではReSharperを用いることで、更に優れたIDEとなっています。

それに加え、これらを動作させるPCにも拘りを持ち、27インチディスプレイを複数用意し、最新のWindowsとMacを取りそろえています。

C#という強力な言語に加え、Visual Studio + ReSharperという強力な環境、そして強力なPC。

これらの環境が面白いゲームを生み出す手助けになると信じています。

f:id:delightworks:20151016154101j:plain

DELiGHTWORKS Framework

ディライトワークスでは、ガリガリにフルスタックのフレームワークを構築し開発している、という訳ではありません。

個人の自主性を尊重し、独りよがりのコードでなく使いやすいものであればそれをどんどん導入することを文化としています。

とはいえ、カオスになることを防ぐため定期的なレビューとリファクタリングを行うようにしています。

開発環境を取り巻く技術

ソースコードのバージョン管理にはGitを利用しており、

データベースはMySQL + Redisを使用し、負荷計測にはNew Relicを用いています。

また、KPIの測定にはFluentdを用いたログ収集に加えBigQueryとModeAnalyticsという環境を使っています。

これに止まらず、ゲームを遊んで下さるユーザーさんに向けてより快適なものを提供できるよう、日々環境を整えていきます。

f:id:delightworks:20151016160523j:plain

開発者を募集しています

ディライトワークスでは今の自分に満足しておらず、新しいことに挑戦してみたい開発者を募集しています。

特に今やっていることがルーチンワークになってしまい、新しい事にチャレンジできていないという方を歓迎します。

いまのディライトワークスは決して完成された状態ではなく、皆で一緒に環境を作り上げていっている状態です。

目の前の仕事をやるだけではなく、やらなければいけないことを見つけ、状況にあわせて自分の為すべきことを為せる人たち、そんな人たちと一緒に仕事をしたいと考えています。

f:id:delightworks:20151016160518j:plain