スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« ネイティブ版が少し軽い | トップページ | Windows版は特殊 »

サーバーも動きつつはある

今はOSX用Mirror-DTCのネイティブ版を開発中で、クライアントについては既に動作しているので、引き続き、サーバーを開発している。サーバー開発ではクライアントで作成したルーチン等が流用できているので、開発は楽なのだが、その割には、開発速度は遅い。

OSX用クライアントの開発時には、例えば、エラーが発生しました、みたいなメッセージを表示する汎用的なメッセージダイアログも、ゼロから作成する必要があった。

これは、OSXには、そういったダイアログは用意されているのだが、Mirror-DTCの場合、Windows/Ubuntuでも利用可能なので、あまりOSX色が強くなりすぎると、複数のOSで使うユーザー的には違和感が強くなる筈なので、極力、OSに依存しない格好にしておきたかったからだ。

で、当然の事ながら、サーバーでも、上記の様なメッセージダイアログは必要になるのだが、サーバーでは、クライアントで作成したファイルをコピーして来るだけで使えている。

Windowsの場合、ダイアログエディタで作成したダイアログを別プロジェクトで使おうとすると、複数のダイアログ情報がリソースファイルの中にテキストで収められたりしているので、単純なファイルコピーでは済まない。

しかし、OSXの場合、ダイアログ定義は独立したxibファイルに入っているので、そのファイルと関連するクラスファイルをコピーしてくれば、何の問題もなく、使える様になる。

なので、既にクライアントを作成済みの現状では、上記の様なメッセージダイアログに加え、ファイルコピー時に表示しているプログレスダイアログなんかも新たに作成する必要が無い。

更には、Mirror-DTCの場合、ネットワーク関連の基本文字コードはShift-Jisで、内部文字コードはUTF-16になっているのだが、OSXの基本文字コードはUTF-8だ。

つまり、文字コードの変換が随所で必要になるのだが、そのための処理関数もクライアント開発時に作成済みで、こういったモノ以外にも、例えば、スレッドセーフではなのでメインスレッド以外ではUI操作が行えない、なのでどうするのか、といったノウハウについても、サーバーを開発するにあたっては、クライアント開発時に捻り出したモノが使えている。

このため、クライアント開発に比べ、サーバー開発は、ずっと楽になっているのだが、冒頭に書いた様に、その割には、開発速度は遅い。これは何故なのか、というと、このブログをずっと見ている人なら、「言わずもがな」、な筈なのだが、作者は、「やれる事はやらない派」、だからだ。

もっとも、作者的には、「労多くして益少なし」、なんて事もよく書いているのだが、逆に言うと、労力がかかっても利益が出るのなら労力は惜しまないし、更には、労力が少なくて利益が出るのなら、より望ましい訳だ。

と、いう事で、サーバー開発の進捗が遅いのは、作者的には、別段、チャレンジングではなく、開発が完了しても、とりあえずは、利益には繋がらない筈だからだ。

つまり、OSX用のMirror-DTCサーバーとしては、既に、Java+JNIで構築した現行版が存在していて、実際の所、作者はそのサーバーを動作させているMacBookをWindows7の開発マシンからMirror-DTC経由で操作しつつ、現在の開発作業を行っている。

なので、OSXが、今後も、現行のJava6環境を継続サポートしさえすれば、ネイティブ版Mirror-DTCサーバーの必要性は皆無な訳なのだが、作者的には、Appleにそういった事を期待する様な、危険な橋、は、渡れない訳だ。

このため、今回のネイティブ版開発というのは、致し方なく、やっている格好になるのだが、次期OSXである所のOSX10.10では、まだ、Java6環境が使えるかもしれない。

なので、イヨイヨ、モチベーションは上がらないのだが、ちょっとVectorのMacページを見てみた所、皆無という程でもないのだが、Mac用アプリの登録は少なかった。

このため、今回開発しているネイティブ版Mirror-DTCというのは、せめて、独立パッケージにして、VectorのMacページに登録してみようか、と、思ったりもしているのだが、Mirror-DTCというのは、Macが一台しかない環境では殆ど意味を為さない訳だ。

そして、Windows/UbuntuユーザーとAndroidとの相性は良い筈なのだが、MacユーザーとAndroidとの相性は良く無いかもしれない。

つまり、複数のWindows/Ubuntuマシンを使っている様なユーザーといのうは、基本、スマホやタブレットにはAndroidを選択している筈なので、現行のMirror-DTCのラインナップで問題は無い筈だ。

しかし、Macユーザーの場合、その多くはMacを一台しか使っていなくて、Windowsアプリを動作させる場合にも、性能を鑑みて別マシンで動作させよう、なんて発想はなく、自分が使っているMac上の仮想マシンかBootCampで動作させている可能性が高い。

と、いう事で、Mac用に独立パッケージ版のMirror-DTCを提供してみても、使い方が判るユーザー自体が皆無かもしれないので、この案についても、却下しようか、と、思ったりもしているのだが、考えてみると、VectorでのMirror-DTCの人気は、他アプリとは異なり、唯一、最低ランクにある訳だ。

なので、幸いな事に、作者的には、別段、失うモノは無いので、やはり、せめて独立パッケージ化しておく、という案は、採用する事にするかもしれない。

= この記事に関連する公開中ソフト =

Mirror-DTC

Mirror-DTC

(2015/02/15追加)

« ネイティブ版が少し軽い | トップページ | Windows版は特殊 »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/60377164

この記事へのトラックバック一覧です: サーバーも動きつつはある:

« ネイティブ版が少し軽い | トップページ | Windows版は特殊 »

2017年11月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30    

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    Cookieを無効にする設定およびAdsenseに関する詳細については、以下のリンクを参照下さい。

    広告 - ポリシーと規約 - Google