2-4 をクリアしたメンバーで 3-2「キス島沖」をやってみました。初出撃だったのでさすがに1回クリアはないだろうなーと思ってたのですが、2-4 をクリアしただけあってこんなにうまくいくとは思いませんでした。
]]>
sorceryforce.net の方で Tips 追加しました。少し Tips が増えてきたので少しグルーピングしようかなーと思ってますが、まだ実装できていないのでもうしばらくしたらやります。Tips は一部ブログから書き直して転載しているものもあります。
]]>
書き忘れたまますでにコミケ当日なのですが書いておきます。
わんくまさん?シリーズで描いていたC.P.U.シリーズですが、今回は出張版ということで、3日目の「Applest」様のサークルにも参加させていただいております。
私が直接編集に携わっているわけではないですが、@5zjさんにプログラミング本として書いてもらっています。もし3日目来れる方はわんくまさんシリーズも含め買っていただけると嬉しいです。
場所は「月曜日 西き38b」です。Web カタログは以下を参照してください。
]]>
完全に私個人の考えにおいての内容なのであんまり参考にはしてほしくなかったりするのですが、こういうつけ方もあるよー、的なものとして書いておきます。
通常 Region ディレクティブの使い方としては複数のプロパティやメソッドを特定のグループとしてまとめて折りたためるようにしてコード全体を見やすくするために使います。一例としては下のような感じですかね。
#region プロパティ public int X { get; set; } public int Y { get; set; } #endregion
こういう使い方は私も割と普通にします。しかし、特定のグループとして region でまとめあったとして、どのグループにいれるか判断が難しいメソッドを作成した時にどっちの region に入れるべきか迷うことが多々あります。
仮に文字列処理を「変換系」「検索系」の region でまとめたとします。そこに「Dictionary から特定のキーの値を探し出し、テキストを HTML に出力できるように変換し文字列を返す。」というメソッドを作成した場合「変換系」なのか「検索系」なのかかなり迷うことがあります。
まあこれは一例なのでほかにももっとバリエーションがあったりするのですが、そんなこんなで最近はグループのまとめとしての region はあまり使いません。
でも可視化するコードの量は減らしたいので、別案としてよくあるのが「メソッド単位で囲む」になると思います。例としては
#region " ToRadian : Degree から Radian に変換 " /// <summary> /// 角度を Degree から Radian に変換します。 /// </summary> /// <param name="degree">Degree 単位の角度。</param> /// <returns>Radian 単位の角度。</returns> public static float ToRadian(float degree) { return degree * (float)Math.PI / 180.0f; } #endregion
これでメソッドを1行にまとめることができます。しかし、これにはデメリットがあり、折りたたんだ場合にそのメソッドがどんなものなのかを示す情報が region の行1行にしかありません。さらに XML コメントとは別に起こさないといけないので、書くのが2度手間になり、修正も2度手間です。説明や引数が多かった場合でもなんとかして1行に収めないといけないです。
上記のような諸々の事情を解決するため、私は region を下のようにつけるようにしました。
/// <summary> /// 角度を Degree から Radian に変換します。 /// </summary> /// <param name="degree">Degree 単位の角度。</param> /// <returns>Radian 単位の角度。</returns> public static float ToRadian(float degree) #region { return degree * (float)Math.PI / 180.0f; } #endregion
例は1行しかないので全然メリットはないんですが、こうすることによって概要や引数、戻り値の情報が見れる状態でコードを折りたたむことができます。別途 region 用のコメントを書かなくていいのもメリットですね。もちろん1行regionよりは行数が増えてしまいますが、まあ、ここら辺はどうしようもないでしょう。増えすぎたらグループをregionでまとめて(最初に戻る)
ちなみにこの region のまとめ方は正規法でもなんでもないので、VB.NET で同じやり方をすると構文エラーで怒られます。こんなやり方もあるよー程度にしておいてください・・・。
]]>
最初の1巻目が出てから約4年半、とうとう2桁台の10巻目になってしまいました! なんかあっという間に10巻目になった感じで全然実感ないのですが、いつかはこうなってしまうんですね( ^ ^;)。こんな感じで20巻目、30巻目ってなっていくんでしょうか…。
さて、今回も皆勤賞継続のまま10巻目も描かせていただきました。何人かの絵描きさんそのほかが集まって、プログラミング言語擬人化本を作るという形になってます。その中で私も一部枠をいただいていろいろ描かせていただいたいる感じです。8巻目までは漫画中心に描いていたんですが、9巻目からはゲーム制作のTips的なものを描いています。今回は前回の続きなので同じくゲーム制作 Tips です。漫画も入れたかったんですが、ちょっと時期的につらかったので今回は入ってません…。いつか描きたいです。
それと、今回は表紙の方も描かせていただきました。巻ごとに表紙を描く人が変わっていて、今回は私の番ということになりました。まあ、回る順番は適当なんですけどねw。今回で表紙を描くのは4回目になります。
下のような表紙になっていますので、ぜひお手に取っていただければと思います。実は私は他の参加メンバーを知らないので、どんな方たちが参加しているのか毎回楽しみでもあります。(毎回なんですよ!)
場所は3日目 8/12(月) の場所は「東ヘ55a」になります。Web カタログのリンクは以下になります。
あと、毎回のことになってしまっていますが、私は売り子ではないので当日上記の場所に行っても私はいませんのであしからず…。
]]>
前回1回目のほかに2~4回目分もアップしました。ちなみに並び順がおかしいのは記事を自動生成する際にまだ並び順を指定できていないのでそのうち直します。
]]>
古い記事になってしまうのですが、以前 Tech Fielders コラム にWindows Phone と XNA でタッチ操作の基本を学ぶ記事を載せていました。ですが、現在その記事(ほかの記事含め)閉じられている状態になっており、資料も ZIP ファイルとしてしか公開されていないので sorceryforce.net のほうに移行することにしました。
とりあえず今回は全4回のうちの第1回目を載せてします。でき次第順次載せていきたいと思います。
まあ古い記事なんで、今となってはあまり使われないかと思いますが、参考にはなると思うので、必要な方はご覧になってください。
]]>
sorceryforce.net のサイトのほうですが、今まではブラウザに設定されていた言語設定によって対象の言語で表示するようにしていましたが、URL から表示する言語を設定できるようにしました。
アドレスの後ろに「?lang=en」のようにクエリ文字列を指定すれば対象言語で表示できます。今は40言語程度対応していますが、対応外の言語を指定した場合は日本語で表示されます(たぶん)。
あと、このパラメータはほかの画面に引き継げないので、ほかの言語で見たいページがあるときの対処として使ってください。(ほとんど自分用)
]]>
今まで Tips 系の記事は sorceryforce.com のほうに書いていましたが、あちらはすべて静的な HTML で書いているため、ちょっと管理が面倒になってきました。
そのため、現在プログラムのほうで動かしている sorceryforce.net のほうで記事を載せられるように構築したので今後はこちらのほうに載せていきたいと思ってます。
まあ、ブログとか CMS 使えばいいじゃんっていう話にもなるかもしれませんが、細かいところまで制御したかったので必要な部分だけ自分で作ってしまいました。まだ対して載せられる項目はないのですが、今後少しずつ作り上げていきたいと思います。
あと、Tips 系の多言語化についてですが、HTML 付きの翻訳が割とめんどくさそうなので、Tips 系の記事については多言語化していません。必要であれば他サービスの翻訳機能をつかって見る形になるかと思います。
]]>