HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

■14366 / 3階層)  モジュール化はフォームのレベルでも必要
□投稿者/ ONnoji -(2024/05/22(Wed) 10:52:26)
    2024/05/22(Wed) 11:26:00 編集(投稿者)
    2024/05/22(Wed) 11:09:16 編集(投稿者)

    > 「イベント駆動型」では、複数のフォームが存在しても、それらは独立していなければならないのです。
    > そして、プログラムの作者がすべてを支配するというアプローチは放棄することです。
    >     ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
    > これが「制御主体の反転」という意味です。
    > そして、それこそが「イベント駆動型」の極意・真髄だと思いますよ。

    なかなか意味が伝わらないと思われるので、「制御主体の反転」を具体的に示そうと思います。

    まず、二種類の制御の主体を考えます。

    1.制御主体がプログラムの作者であるケース

    2.制御主体がソフトウェアの仕掛けであるケース

    1のケースは、プログラムの作者がすべてを支配するということです。

    これは「フロー駆動型」です。

    「フロー駆動型」の典型は、まさしく一括処理です。

    一括処理では、プログラムの作者がプログラムの流れをすべて記述しますね。

    一括処理では、プログラムのスタートから、プログラムのフィニッシュまでの全て記述しなければなりません。

    つまり、プログラムの作者がすべてを支配しているわけで、制御権はプログラムの作者が握っているのです。

    2のケースは、ピタゴラスイッチやドミノ倒しのようにソフトウェアを作るということです。

    ご存じのように、ピタゴラスイッチやドミノ倒しでは、あるきっかけによって、連続的に動作が継続するという仕掛けです。

    「イベント駆動型(イベントドリブン)」では、これらの仕掛けを必要な数だけ用意するということになります。

    従って制御の主体は、ソフトウェアの仕掛けということになります。

    「フォーム+イベント処理」では、ソフトウェアの仕掛けとして次のものがあります。

    ・コマンドボタンの機能
    ・イベント発生の設定とイベントハンドラ

    これらを駆使して個々の操作に対応する仕掛けを複数個作りあげて、

    フォームが開いた時点で待機(アイドリング)するというのが「イベント駆動型(イベントドリブン)」です。

    ということで、この状態を「制御主体がソフトウェアの仕掛けである」と呼ぶことにしましょう。

    以上の説明を読んでいただければ、「制御の主体」が1と2では異なっていると理解できるでしょう。

    私( ONnoj )は、この事を「制御主体の反転」と呼んでいるのでした。

    p.s.

    > 実は、過去の掲示板には「フォーム+イベント処理」のアプローチでありながら、心の中では「フロー駆動型」の例が非常に多いのです。

    DOS桐や桐ver.7で一括処理でアプリケーションを作っていた人達の多くが「制御主体の反転」に気が付いていないと思います。

    だから、過去の掲示板には、外見が「フォーム+イベント処理」でありながら、中身が一括処理のような例が非常に多く見つかると思います。

    それを、心の中では「フロー駆動型」と表現した次第です。

    p.p.s.

    > ご存じのように、ピタゴラスイッチやドミノ倒しでは、あるきっかけによって、連続的に動作が継続するという仕掛けです。
    > 「イベント駆動型(イベントドリブン)」では、これらの仕掛けを必要な数だけ用意するということになります。

    「イベント駆動型(イベントドリブン)」の場合には、フォームに用意されている機能に精通している必要があります。

    しかし、プログラムの作者がすべてを支配するというアプローチに慣れている人達はコマンドに精通しているんですね。

    そう、まさしくコマンド命ですから、フォームに用意されている機能には無知で、まるで一括処理のようなアプローチをしてしまうのです。
                     ・・・・・・・・・・・・・・・・・・

    つまり、「制御主体の反転」に気付いていないために、余計に泥沼にハマって抜け出せない状態に陥るのですよ。

[メール受信/OFF] 削除キー/

返信無し
 
前の記事(元になった記事) 次の記事(この記事の返信)
上記関連ツリー

Nomal 期間絞込でのエラー時対応について / ジェダイの桐 (24/05/20(Mon) 09:54) #14350
Nomal Re[1]: 期間絞込でのエラー時対応について / まさやん (24/05/20(Mon) 11:46) #14351
│└Nomal Re[2]: 期間絞込でのエラー時対応について / ジェダイの桐 (24/05/20(Mon) 17:39) #14353 解決済み!
Nomal Re[1]: 期間絞込でのエラー時対応について / AK (24/05/20(Mon) 15:33) #14352
│├Nomal Re[2]: 期間絞込でのエラー時対応について / ジェダイの桐 (24/05/20(Mon) 17:48) #14354
│└Nomal Re[2]: 期間絞込でのエラー時対応について / まさやん (24/05/20(Mon) 19:39) #14356
│  └Nomal Re[3]: 期間絞込でのエラー時対応について / AK (24/05/20(Mon) 19:36) #14355
│    └Nomal Re[4]: 期間絞込でのエラー時対応について / ジェダイの桐 (24/05/21(Tue) 14:50) #14360
│      └Nomal Re[5]: 期間絞込でのエラー時対応について / ONnoji (24/05/21(Tue) 15:21) #14362
│        └Nomal Re[6]: 期間絞込でのエラー時対応について / ジェダイの桐 (24/05/23(Thu) 17:27) #14382
│          └Nomal Re[7]: 期間絞込でのエラー時対応について / ONnoji (24/05/23(Thu) 17:31) #14383
Nomal Re[1]: 期間絞込でのエラー時対応について / ONnoji (24/05/20(Mon) 23:34) #14358
│└Nomal Re[2]: 期間絞込でのエラー時対応について / ジェダイの桐 (24/05/21(Tue) 14:58) #14361
Nomal Re[1]: 期間絞込でのエラー時対応について / ONnoji (24/05/21(Tue) 18:47) #14363
  ├Nomal Re[2]: 期間絞込でのエラー時対応について / AK (24/05/21(Tue) 19:12) #14364
  └Nomal Re[2]: モジュール化はフォームのレベル.. / ONnoji (24/05/21(Tue) 19:15) #14365
    ├Nomal モジュール化はフォームのレベルでも必要 / ONnoji (24/05/22(Wed) 10:52) #14366 ←Now
    └Nomal Re[3]: モジュール化はフォームのレベル.. / ジェダイの桐 (24/05/22(Wed) 16:28) #14367
      └Nomal Re[4]: モジュール化はフォームのレベル.. / ONnoji (24/05/22(Wed) 16:34) #14368
        └Nomal Re[5]: モジュール化はフォームのレベル.. / ONnoji (24/05/22(Wed) 16:48) #14369 1716386255.jpg/65KB
          └Nomal Re[6]: モジュール化はフォームのレベル.. / ジェダイの桐 (24/05/22(Wed) 17:12) #14370
            ├Nomal Re[7]: モジュール化はフォームのレベル.. / ONnoji (24/05/22(Wed) 17:26) #14371
            │└Nomal Re[8]: モジュール化はフォームのレベル.. / ジェダイの桐 (24/05/23(Thu) 13:53) #14376 解決済み!
            │  ├Nomal Re[9]: モジュール化はフォームのレベル.. / ONnoji (24/05/23(Thu) 16:26) #14380
            │  ├Nomal Re[9]: モジュール化はフォームのレベル.. / AK (24/05/23(Thu) 17:15) #14381
            │  │└Nomal Re[10]: モジュール化はフォームのレベル.. / ジェダイの桐 (24/05/24(Fri) 09:37) #14386
            │  │  └Nomal Re[11]: モジュール化はフォームのレベル.. / ななーし (24/05/28(Tue) 16:08) #14407
            │  └Nomal Re[9]: モジュール化はフォームのレベル.. / まさやん (24/05/23(Thu) 20:28) #14384
            ├Nomal Re[7]: モジュール化はフォームのレベル.. / ONnoji (24/05/22(Wed) 23:34) #14373 1716388486.jpg/73KB
            └Nomal Re[7]: モジュール化はフォームのレベル.. / ONnoji (24/05/23(Thu) 22:57) #14385
              └Nomal Re[8]: モジュール化はフォームのレベル.. / ジェダイの桐 (24/05/24(Fri) 10:12) #14387
                └Nomal Re[9]: モジュール化はフォームのレベル.. / ONnoji (24/05/26(Sun) 16:15) #14393

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -