えぇもうずっとプログラミングの話ばかりで、ついてこれない人には全くついてこれない話題満載というこの事実が如何ともし難いのですが、よくよく考えてみればどうせこのサイトに訪れてくれている人って俺の友人でほぼ決まりだし、その友人の8割くらいはプログラミングの話をしても割とよさげな感じの素敵に同類な方々ばかりでしたので、あまり問題はないのかなとも思っちゃったりしている梅雨の午後、皆様いかがお過ごしでしょうか。
さて、前置きのとおり今回もプログラミングの話なわけですが、なんていうかWindowsプログラミングというのは俺が今までやってきたテキストベース(Linuxのターミナルのような)プログラミングとは根本的に違うということをようやく認識しました。正確に言うと、あいまいで不明だった部分が鮮明になった感じ。
単純に言うと、テキストベースのプログラミングの場合、プログラムがユーザに対してする処理は決まっています。というか、プログラミングの時点で決めてしまっています。ユーザはプログラムを実行して、プログラムが『~~を入力してください』という指示に従って操作していく、プログラム主体の形態です。しかし、Windowsプログラミングというか、GUIプログラミングの場合はユーザが何をするかは分かりません。マウスを動かすかもしれませんし、キーボードからキー操作をするかもしれません。ファイルを開こうとするかもしれませんし、アプリケーションを終了させようとするかもしれません。この『何をするか分からない』というのがミソです。
Windowsはこれらの操作に対し、プログラムに『メッセージ』を送ります。Windowsプログラミングはこのメッセージに対してどのような処理をするかを決定する、受身的なプログラミングなのです。これがテキストベースのプログラミングと決定的に違うところ。俺はテキストベースでプログラミングを習っていたので、そのあたりを理解していませんでした。
そうすると、どうすれば機能を実装できるのか、何をすればいいのか、具体的にメドがたってきます。昨日、置換機能を訳も分からずつけていましたが、あれは何をしていたのか、論理的に納得がいくようになりました。これならいける!と思い、実際にサクラエディタにはどんな機能がついてるのかな~とプログラムを実行してみました。
機能凄ぇ多ぃ。
俺、サクラエディタより凄いものつくってやろうとか場違いなこと考えてました。申し訳ありません。自分が満足の行くエディタができればそれで充分です。_| ̄|○
Comment