月別アーカイブ: 2008年2月

エッセンシャル

この前買ったエッセンシャルを毎日チビチビ読んでおります。
シャンプーではありません(我ながらつまらん…)

しかし概念と言い切っているのは本気だと感じる。

どういう経緯でソレを実装してこうなったかを細かく書いている。
なのに嫌みを感じないのは伝えなければいけないことを厳選しているから。
もっと書きたいことなんて腐るほどあるだろうに見事だ。
しかも面白い、翻訳者が上手いのかもしれないがドラマ風味。

私達が本当に求めていたのは、次のようなコードです。

Button b = new Button();
b.Text = “OK”;

のくだりにはもの凄いドラマを感じた。
何故こうなったかをこんな感じで解説されると気持ちがいい。

この手の分厚い解説本は大抵が最短手順だけを解説する。
「こんなコードを書けばいいんだよ」で次に進んでしまう。
それでは応用が利かない、何故そうなるのか全然解らないまま。

実は私 WPF ってなんなのかよく解らなかった、だから本を買ったわけで。
そういう意味でも大当たりな本であった、五千円の価値は余るくらいあった。
以上書評であった。

こんな所で評価してもしかたがないような気も…

ところで、せっかくだから WPF 製の動画プレイヤーを弄くっているのだが
MediaElement で再生や停止とかをボタンなんかで制御するには
LoadedBehavior を Manual にせにゃならんとデバッガに怒られた。
恐ろしく親切なデバッガだなぁ VS2008 って。

WPF で動画プレイヤー

2/18 にメディアプレイヤー貼り付けなんてやろうとしたが
もっと恐ろしく単純な動画再生方法があった。

普通にプロジェクトを作って Window の AllowDrop を true。

MediaElement っつーのを貼り付ける。

XAML の Window 要素の中で Drop=”Window_Drop” イベントハンドラ追加。

そのハンドラで

dshow.JPG

以上でドラッグ&ドロップで動画再生するプレイヤー完成。
なんじゃこりゃ!簡単なんてレベルじゃねーぞこのやろう。

でも何で再生している?軽く調べてみる。
音楽を再生しても WMP のビジュアライゼーションは出ない。
でもコーデックによっては ffdshow をしっかり呼び出す。
ので生 DirectShow みたい。

再生制御も MediaElement メソッドで賄える。
ここまで簡単にしないでくれよ、商売あがったりだ。

.NETのソース

Visual Studio 2008で見る.NET Frameworkのソースコード ? @IT

.NET Framework って C# で作っているのか、へぇ?。
なんて勘違いしそうだ、あくまでクラスライブラリだけだよね。

まあ仮装マシン自体のソースなんか見たって何の参考にもならないが。

デルヒャァの Pro 版以上には VCL のソースが含まれている。
コレは本当に役に立った、つーか沢山パクらせてもらった。
検索で見つかるコードよりはるかに正確で簡潔なコードがそこにあった。
Palepoli の文字列変換なんてソレを見なければまず作れなかった。

と言っても組み込み関数の場合がほとんどである。
組み込み関数をちょこっとだけ拡張したくなることが結構あるのよ。
フォームやコントロールのソースコードは別に参考にならなかった。

一番参考になったのは FileCtrl.pas である。
ファイル操作はどう行えばよいのかたっぷり真似した。
もしくは一部の関数だけ抜き出してサイズ削減とかしたり…

C# では変換等は関数でなくメソッドで行うわけで。
はたしてソースを見たところで参考になるかどうか疑問いっぱい。
とはいえまだ C# は勉強中の段階だからなんともいえないが。

とりあえずヤルかもしれないので覚え書きと。

しかし丸ごとダウンロードの方法なんかこんな所に書いていいのか?
某雑誌臭くて…ってそういえば同じ会社だったわココ。

ところで昨日買った本って WPF 開発者著本の翻訳なんだね。
だから全体像を上手くまとめているなぁと感じたわけだ。
まだ序章しか読んでいないがなんか感銘したよ。
リファレンスではなく「概念」と言い切っているのが開発者らしくて好き。

TextOut

さて、鼻風邪も退治したし WPF の勉強再開。
コントロールを貼り付けて遊ぶのもいいけどまず基本を。

TextOut API や DrawString みたいな文字表示はどうやるの?
Label コントロールでグローを掛けるのもいいけど基本は大事だ。

手持ちのこの本に書いていた。

β 時代に書かれたムックだからオススメというわけではないですけど
Vista の特性を生かしたプログラムを書きたいなら最強のムックです。

しかしコレを読めば Vista という OS とは何なのかが理解できる。
XP までの Windows と Vista とはいったい何が違うのかすべて書いてある。
Grass 効果ばかりが Vista ではないのだよ、良くなった部分は沢山ある。
XP の正常進化だと思って使うと完全に裏切られるけどさ。

だからこういう本をもっと出せよクソフトバンク!
こういう有用な記事が書けるライターを沢山抱えている会社だというのに
能なしライターだけで賄える○トランなんか復刊してんじゃねーよボケ。

まあ実際に Vista を使う最大の理由は間違いなく .NET だね。
WinFX は失敗ではなかった、でも一般に理解されるのはまだ先だろう。
コレを最大限に生かしたアプリが出そろうまでまだ時間が掛かる。

脱線はこれくらいにして。
Grid 要素直下に TextBrock を入れるだけで文字は表示できるらしい。

<TextBlock FontSize=”36pt”>はろぉWPF</TextBlock>

おぉ!デザインビューもシンクロして文字が表示されるヤン!
早速ビルドして実行。

h_wpf

おぉこんなに簡単に…ってあれ?
こういうのって WM_PAINT イベントハンドラに記述しなくてもいいの?
Label のようにリソースではないし…サーフェスとして保持なのかな?

WM_PAINT を気にしなくてイイようになったのならトンデモナイ進化だ。
うー今までの考え方が全然通用しないぞコノヤロウ!

今はまだこんなレベル…

新ANSI C言語辞典

昨日まで強烈な鼻風邪で死んでいました。
つーことでプログラミングはしていない、のでネタは無い。
六万円の元をとらなきゃいけないというのに…

Microsoft、学生に開発ツールを無償提供 – ITmedia エンタープライズ

大学生の皆さんには大バーゲンだなぁ。
多分専門学生に ASP.NET の教育をさせるもくろみなんでしょうね。
でもソッチ方面はもはやスタンダードになった LAMP を勉強したほうが得かと…

そんな手には乗らないぞ!と C/C++ ネイティブを作るのも又一行。
しかし大半の人は挫折するのが目に見えているわけで…
これから初めても専門用語を覚えた頃には社会人かも…

という方々の為に一冊紹介

この本はプログラミング系サイトでよく見かけると思います。
実は自分はプログラミングを始めた頃になんとなく買ったわけですが、
あまりの濃い内容に圧倒されしばらく眠っていました。

それからしばらくして Pascal から C++ へと環境移行した。
その時改めてパラパラとめくって衝撃を受けてしまった。
知りたかった事が一つ残らず書いてある、その先まで書いてある!
ライブラリ関数の実装例までが見事に書いてある、恐るべし。

それからしばらくの間単行本がわりに持ち歩いていたくらいです。

何より嬉しいのは 18.8 x 12.8 x 3 cm という小さなサイズ。
そしてほとんどが文字だけという徹底的に解説を詰め込んだ内容。
これなら鞄に難なく入る。

いつも思うのだがプログラミングの本は何故絵本みたいなのばっかなの?
画像なんかいらないし老眼を前提としか思えない文字のサイズは読みにくい。
とにかく神の無駄遣いだし、ページをまたがる内容は本として失格だし。

というか「持ち歩きたいんだよ俺は!」と声を大にして言いたい。
本を意図的に厚くするためにそうしているとしか思えない。

脱線はこのくらいにして。
本当にこの本は持っておいて損をしない内容です。
多分初心者の方々は私と同様に当分眠ってしまうかもしれないほど濃いです。

最後に、オジサンも Expression Studio が無償で欲しいよぉ!