2015年6月13日土曜日

今後の予定

 ようやく全体的な再設計が出来ました。私はコードを書きながら設計するので、実装も大体終わった感があります。

 あとはデバッグして機能を追加して出すだけですが、口で言うのは本当に簡単です。しかし設計のために悩み苦しむフェーズが終わったので、ここから一気にスピードアップして、うまくいく可能性も、かなりあるような、楽観的観測をしています。

 来月までにお金が入らないと死んでしまうので、ベータ版を出して寄付を募って、実際に寄付が集まるまでの時間を考えると(本当に集まればいいんですが)、25日ぐらいには出さないといけないでしょう。そこから逆算して取捨選択して、どの機能を実装していくか決めていく必要があります。

 ベータ版を出した後の予定ですが、デバッグしながら英語版を準備し、さらに間に合わなかった機能を追加していき、デバッグと機能追加が終わったら、Mono&GTK#環境に移植して、マックやLinuxでも動くようにしようと思っています。今やっているWindows Form環境だとどうしても描画がカクつくのが直せないらしいのです。

http://dobon.net/vb/dotnet/control/doublebuffered.html
>フォームに大量のコントロールを配置している時のちらつきには別の理由があり、上記の方法では解決できません。

>このようにすると、一部のコントロールが正常に表示されなくなったり、最小化ボタンなどのアニメーションが無効になったり、Aeroを有効にしていると機能しなかったりなど、様々な問題があるようです。よって、できれば使用しない方が良いでしょう。


 変な設定を入れるとかなり描画がスムーズになるのですが、その設定がバグだらけでいろいろとおかしくなるということです。しかしこれ以外に頼れるものがないので今回はこれでいきます。

 バグだらけの設定に頼るのは一時的にして、最終的には全てのベースになる、ちゃんとしたPC版を作らなければならないように思います。いずれはスマホにも移植しようと思っていますが、ベースがしっかりしていなければ難しいでしょう。

 スマホ版はXamarin.Formsを使ってAndroid/iPhone両対応にする予定ですが、いきなりクロスプラットフォームにするのは難しいので、これに合わせて一旦Windows/Mac/Linuxのクロスプラットフォーム版を作ることにしました。オブジェクト指向のテクニックを使ってWindows FormとGTK#、.NetとMonoに両対応させます。UIをブラックボックス化して入れ替えられるように設計しなおしたので、おそらくうまくいくでしょう。

 実際はGTK#を使ったことがないので、カクつかずうまく描画できるか、そもそもまともに動かせるのか、といったことはやってみないとわからないのですが、まあ何をするにもわからないことだらけです。楽観的にいこうと思います。

0 件のコメント:

コメントを投稿