C#+WPFチューニング戦記

C#とWPFで高速なコードと最適なシステムを書くためにやってきたいろいろな事を書いてみます。.NET Frameworkのソースコードを読み解きましょう。なお、ここに書かれているのは個人の見解であって何らかの団体や企業の見解を代表するものではありません。

雑談

完成度の高い開発環境について

完成した、完成度の高い開発環境とはなんでしょうか。 諸説ありますが、個人的には以下の表現が可能なものだと思っています。 「XはXで自己定義可能」 例えば、C言語のコンパイラはC言語で制作可能です。D言語もC#もJavaも可能です。 プログラミング言語に限…

参加したくて

http://qiita.com/advent-calendar/2014/xamlこれに参加したくて、思わずTwitterアカウントを拵えてしまいました。 @proprogrammer0 ああ、やってしまいましたな。という気分です。

ハッシュコードをバラけさせる意味はあるのか

随分間が空きました。やっとプロジェクトが節目っぽいので再開します。ハッシュコードについてよく言われることがあります。また、条件と言われるものがあります。 同じインスタンスは常に同じ値を返さなければならない 異なるインスタンスが同じ値を返すこ…

久々に綺麗なMVVM

しばらく、速さに特化したコードばかり書いていたので美しく構成された正統派のMVVMを書くと心が和みますね。

体調不良の原因

昨日まで元気だったのに今日突然熱が出て(最近多い)、ちょっと生活を振り返ってみました。食生活はちょっと多いけど普通。酒量もさほどでもなし。(本人の主観によるものです。) 睡眠はやや不足気味。 他の色々はようやくピークを越えて落ち着き始めたと…

実は最近、Visualを細切れにしたらいいんじゃないかと思い

最近まで、よりも速い仮想化パネルを作るということに心血注いでいて一段落ついたところなのですが、まだいくつかやり残したことがあります。というのは、あるチューニング中の出来事で、再描画領域がパネルの左上から右下まで突き抜けているベジェを変更す…

また休んでます

セミナー用の資料を書いているためです。 週末くらいに復活したいと思いますが果たして。

数日間休んでいます

社内の勉強会に向けて、ちょっと気張って資料を作っているので、ブログの方を少しだけ休んでいます。 Evernoteに置いてあるネタ帳はまだ多量にあるので、書く時間を見つけては書いていきたいと思っています。

2つの親子関係

タイトルのようなことを書くと、普通はロジカルツリーとビジュアルツリーというのが相場ですが、これは別の話です。 ビジュアルツリーは2つの繋がりを持って初めてビジュアルツリーなのです。 AddVisualChild()で接続される、WPFの描画順序に関わるツリー V…

コピペを極力避けるべき理由

プログラマがコピペを忌むべき理由 あなたがコピペしたコードは、他の人が権利を主張した瞬間に、結合しているすべてのコードの公開を求められるものかもしれません。 あなたがコピペしたコードは、別の人がそこにコピペしたもので、実はどこかのOSSライセン…

Z順序の問題とCanvasの関係について

見たまま記述からはてな書式に切り替えてみました。 考えてみたらこっちのほうがWikiっぽくて使いやすいし軽快ですね。 なんか書くのに時間がかかると思っていたら、それは編集用のパネルが遅いからだった、というわけです。 テキストボックスが遅いとか、や…

VirtualizingStackPanelのコード長いですね

ここのところ毎日ソースコードを読みながら実況中継という気分ですが。1日あたり1クラス程度を読むのを日課にしておりますが、本日は苦戦中です。 PanelがベースになっているVirtualizingPanelを基底クラスに持ちながら、VirtualizingStackPanelあの量の機能…

短いコードを速くする努力とは

まずは短く。次いで速く。そんなお話。このブログにも実証コードはそのうち掲載していきたいところですが、当分はMicrosoftのリファレンスソースコードにリンクする事を主体としようと考えています。多くの現場で経験してきた事ですが、使っているものに対す…