スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« 次ダイアログの作成を開始 | トップページ | 今度は「歴史ゆっくり紀行」 »

イベント処理が少し面倒

今は、Ubuntu版AG-ムービーカッターの開発フェーズで、今日も「音声ファイルのミキシング」ダイアログを実装していたのだが、各種イベントがWindows / macOSとは異なるので、調査しつつの実装になる分、簡単な実装も少し面倒ではある。

今は昔の話になるのだが、Windowsがリリースされる前のプログラミング環境というのは、CP/M-80だとかMS-DOSが普通だった。
 
で、上記は、Windowsに相当するOS名になるのだが、GUI環境ではなかったので、これらのOS上で動作するプログラムは、今時のコマンドプロンプトで動作するプログラムみたいなモノばかりだった訳だ。
 
つまり、プログラムというのは、何をやるかを記述してあるモノで、実行すれば、記述された順番に従って処理が行われるモノだった訳だ。
 
なので、プログラミングというのは、それほど面倒なモノでもなかったのだが、Windowsが登場すると、それまでプログラミングが出来ていた人達の多くは、プログラミングが出来なくなった。
 
これは何故だったのか、というと、例えば、C言語でプログラミングする場合には、main関数を記述すれば動作するプログラムを作成できたのだが、Windowsのプログラムでは、main関数を記述する行為に意味はなくなったからだ。
 
つまり、Windowsの登場でプログラミングに挫折した人の中には、Windowsプログラムというのは、何を記述すれば良いかが全く判らなくなったために、挫折してしまった、という人も、結構、いたかもしれない。
 
上記は、別段、大げさな話を書いている訳ではなくて、コマンドプロンプトで動作する従来形式のプログラムというのは、ある意味、能動的な記述になるのだが、Windowsプログラムというのは、受動的な記述にならざるを得ない、という点で、Windowsの登場で、ある意味、パラダイムシフトが発生した訳だ。
 
つまり、Windowsプログラムというのは、所謂、イベントドリブン型にならざるを得ないので、手続き型のプログラムしか記述した事が無かった人達にしてみれば、訳が分からなくなってしまっても不思議は無かった訳だ。
 
と、いう事で、イベントドリブン型のプログラムというのは、イベント処理で機能を構築して行く必要があるので、手続き型のプログラムとは違って、プログラムのコードを見ていても何をやるプログラムなのか判りづらいし、プログラミングする方にしてみても、やりたい事をダイレクトには記述できないので面倒だったりする場合も多々あるかもしれない。
 
にも関わらず、こんなプログロムが主流になったのは、ユーザーはそういうプログラムの方が使いやすいからなのだが、これは、Windowsタイプのプログラムの方が自由度が高いからだ。
 
逆にいうと、プログラミングする方にしてみれば、様々な状況を想定してプログラミングしなければならないので、より一層、コーディングは面倒になるのだが、更に、より一層、コーディングを面倒にしているのは、そのイベントの種類の多さだ。
 
具体的には、マウスがクリックされた、なんて単純なモノだけなら大した事ではないのだが、スクロールバーなんかでは、ドラッグが開始された/終了した、なんてのもイベントになるし、テキスト入力フィールドなんかでも、テキストが変化した、だとか、フォーカスが変化した、なんてものも、それぞれが独立したイベントになる。
 
で、上記の様なイベントは、無視しても良い場合も多いのだが、使わなければならない場合もある為に、存在している訳なので、作者的にも、色々なイベントを使う事になる。
 
しかし、それらのイベントはOSによって名前は異なるし、扱われ方も様々だ。 更に言えば、上記の様なイベントは、実際には、OSが発生させている訳ではなく、GUIが発生させている場合もあるので、OSがUbuntuだったとしても、利用しているGUIが異なれば、イベント名も異なる事になる。
 
と、いう事で、例え、C++言語なんかについては、国際基準が作られて様々な実装で同じ文法が使われる様になったとしても、GUI部品だとか、それらが発生させるイベントは統一されていないので、結局、C++言語を使っているからといっても、全てのOSで動作するプログラムを記述するのは不可能な訳だ。
 
なので、作者的には、地道にGUI部品の仕様を調べたりしつつ、コーディングしている訳なのだが、Windowsの時代になってプログラミングをやめてしまった人達の中には、ライブラリ関数の数が桁違いに増えたので、それらに関わるのが馬鹿馬鹿しくなった、という人達も、結構、いたのかもしれない。

« 次ダイアログの作成を開始 | トップページ | 今度は「歴史ゆっくり紀行」 »

トラックバック


この記事へのトラックバック一覧です: イベント処理が少し面倒:

« 次ダイアログの作成を開始 | トップページ | 今度は「歴史ゆっくり紀行」 »

2019年9月
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30          

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google