• ベストアンサー

モジュールとは何ですか

モジュールとは具体的には何を指しているのか、をお聞きします。 手元のカタカナ語辞典では 「プログラムを、それぞれ特有の機能を持ついくつかの基準単位に分割すること。また、その基準単位。」 と書いてありました。 そうすると、1つ1つのソースファイルを指しているように思えてきます。 いままで私が人がしゃべっているのを聞いてきたところでは、Windowsでいうところの、exeファイルやdllファイルを指しているような気がします。 「モジュール」という言葉は gooの新語辞典にも載っています。 また、コンピュータ用語辞典のようなサイトも見てみました。 それらによると、「ソフトウェア・ハードウェアの部品」だそうです。 しかし、例えば何のことをいっているのかが、分からないのです。 #ファイルなら何でもいいのだろうか。 この言葉の用例を教えていただきたいのです。 ============================ 過去の質問と回答より。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=302590 回答No.1の補足より。 >モジュールはAccessの標準モジュールのことです わたしはAccessのことをほとんど知らないので、ハテナです。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=293234 こちらのNo.2の回答では、 dllとは「共通モジュール=ライブラリ」である、 という使い方ですので、例えばdllのことを指しているようです。

noname#2004
noname#2004

質問者が選んだベストアンサー

  • ベストアンサー
  • toysmith
  • ベストアンサー率37% (570/1525)
回答No.4

「モジュール」と言う言葉には「ソフトウェアの部品」という以上の共通概念はありません。 よって、使用される文章の前後関係によって微妙に意味合いが変ってきます。 1.関数、手続き 「mainモジュール」など 2.機能単位でまとめられたライブラリのメンバー 「標準関数ライブラリ(UNIXならlibc.a)に含まれるstdio関係の関数群」など 3.実行ファイルを構築するための個々の素材ファイル 「ソースファイル」、「オブジェクトファイル」、「ライブラリファイル」など 4.実行環境を構成する個々の実行可能ファイル 「exeファイル」、「dllファイル」など 5.(オブジェクト指向型言語において)クラス モジュールは機能で分類されていると言う保証はありません。 「stdioを構成する個々の関数」を関数モジュールと言う場合もあります。 モジュールと言う単語を使い場合、「関数モジュール」とか「ライブラリモジュール」と言うように、モジュールと言う言葉の曖昧さを保管するような単語と組み合わせて使う用に心がけた方が安全です。

noname#2004
質問者

お礼

私は「クラス」というものがよくわかっていないので、わかるところで言うと、 私が質問で書いた「1つ1つのソースファイルを指している」とか、「exeファイルやdllファイルを指している」というのは、間違ってはいないわけですね。 「関数」のことをいう場合もあるようですね。

noname#2004
質問者

補足

これまでご回答された方々へ: 補足またはお礼をするのに時間をいただきたいと思います。 (もちろん更なる回答もお待ちします。)

その他の回答 (4)

  • itohh
  • ベストアンサー率45% (210/459)
回答No.5

こんにちは。itohhといいます。 「モジュール」って言葉は、凄く汎用的な言葉なんですよ。 例えば。 パソコン(ハードのことです)は、CPUとハードディスクとメモリなどで出来上がっています CPUとハードディスクとメモリが「モジュール」です。 「モジュール」の組み合わせによってSONYのパソコンになったり、富士通のパソコンになったり します。 ジグソーパズルには、多くのピースがあります、ピースをすべてはめると1つの絵になりますが ピースの形はほとんど同じものですよね?(まるっきり同じかも...) このピースが「モジュール」です。ピース自体は同じ形をしていますが表面の絵を変えることに よって違うジグソーパズルにもなります。 Cドライブには、Windowsに絶対必要な「モジュール」が入っています。 Win98系の場合:c:\windows\system32配下 WinNT系の場合:c:\winNT\system32配下 この中にはたくさんのDLLが入っています。このDLLでWindowsが構成されています。 さらに、DLLの中にも関数(または、メソッド)と呼ばれるモジュールが入っています。 ブラウザもたくさんの「モジュール」で構成されています。 マウスを操作する「モジュール」、文字を表示するための「モジュール」、画像を表示するための 「モジュール」、サーバと通信を行うための「モジュール」などなど。 つまり、1つのものを構成している一つ一つを「モジュール」といいます。

noname#2004
質問者

お礼

締め切り7月2日21時30分ころ

noname#2004
質問者

補足

モジュールという言葉を使うのはソフトウェアの話だとは限らず、ハードウェアでも使うんですね。 ジグソーパズルのピースの話は、No.3の方の話に近いですね。 >Cドライブには、Windowsに絶対必要な「モジュール」が入っています。 >Win98系の場合:c:\windows\system32配下 >WinNT系の場合:c:\winNT\system32配下 >この中にはたくさんのDLLが入っています。このDLLでWindowsが構成されています。 >さらに、DLLの中にも関数(または、メソッド)と呼ばれるモジュールが入っています。 これってつまり、「モジュールとは、dllを指すこともあるし、dllの中の関数を指すこともある」ということですね。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

Moduleを英和辞書で引くと、基準寸法(例積水ハウスのメーターモジュールなど)とあり、畳(メーター・190cm、関西間、京間、江戸間など)などを始め、入れ替えが可能で、他の同類物でもぴったり収まる様にきめられた単位やそれに従った物。家具などの規格化された組みたてユニットも言う。電算用語ではラテン語の尺度のModusに小さいを示す語がついて出来たとある。仕事や処理タイプの適当なまとまりを、応用が利くように分割(小さく)して、ソフト・プログラムを組むことが、モジュール化であり、出来たものがモジュールである。決してアクセスやOSのDLLやEXEファイルだけでなくソフト設計の基本的な設計概念と思います。似たような言葉に、ルーチンとかサブルーチンというのがあって、こちらも「ン」は小さいという意味のようです。(1)分割可能な機能の一部分を構成(2)組みたてられる一部(3)(旧くなったり誤りが見つかれば)取替え可能で他に影響を最小限に抑えられる。(4)他との組みたて時に不都合が出ない。(畳と障子の整合性などのイメージ)。このどれかをイメージとして引きずっている時使われる。あと「ロードモジュール」、「モジュール化」とかの用語があり、 モデムのModulationやModulus(係数)、Mod(VB言語の余り)、Modulus11も同根の言葉のよう。Methodもラテン語Modから来るようで同根か。他にModel。似たような語感の語にコンポーネントがソフト関係使われる。

noname#2004
質問者

補足

正直に言って、ご回答は私には難しいです。 物の一部であって、取り替えられるかどうかが重要のようですね。

  • Spur
  • ベストアンサー率25% (453/1783)
回答No.2

「ひとつの機能」や「ひとつの仕事の単位」と考えたら理解できますか? 何かのプログラムを作る時には、たくさんの機能の集まりになります。 その機能の単位と考えてください。 ファイルから読みこむ。ファイルに書き込む。画面に表示する。エラー判定をする。 などの機能単位です。 最終的に出来あがるのは、実行型プログラムの場合は「*.exe」になりますが、それはモジュールの集合体です。 「*.dll」はモジュール単位で作る場合もあるし、いくつかのモジュールを一まとめにして、ひとつのファイルにする場合もあります。 >dllとは「共通モジュール=ライブラリ」である、 これは、ちょっと違うかな? DLLとは、共通モジュールまたは共通モジュールの集合体です。 ですから「Library=図書館、書庫」と言います。

noname#2004
質問者

補足

このご回答を見て思ったのは、C言語でいうところの「関数」のようなものだということでした。 dllやexeとの関係で言うと、「モジュール」が集まってそれらになる、というイメージですね。 この場合も、モジュールは、ファイルとは明らかに違いますね。

回答No.1

プログラミング初心者(VisualBasic)なので、 感覚的にしかわかってないのですが。 exeファイルはモジュールの集まりです。 (1つのモジュールで構成されていることもあります) DLLはモジュールの一種です。 標準モジュールとか フォームモジュールとか クラスモジュールとか モジュールにはいろいろ種類があります。 VisualBasicでいいますと(ご存じなかったらすみません) 1つのウインドウは1つのモジュールで構成されています。 例えばあるプログラムがウインドウを5つ持っている(表示する) とすれば、そのプログラムは最低でも5つのモジュールで構成されていることに なります。

noname#2004
質問者

お礼

(現在の最終回答No.5) 皆様のご回答を拝見すると、モジュールという言葉はいろいろなものを指すようですね。だから、回答者の方によって、具体的に指すものが違うこともあるわけですね。 回答No.1について: 私はVBのことを知らないですが、プログラムの部品をモジュールと言っているんですね。「ファイル」という概念とは別であることがわかります。 具体的でいいなあと思ったのは、ウィンドウが1つのモジュールだというところでした。 ありがとうございました。

関連するQ&A

  • WinRARでUNRAR32.DLLはいる?

    http://oshiete1.goo.ne.jp/kotaeru.php3?q=2190094にて A-No.3の方がDLL二つ入ってますか と言ってますが必要なんですか?

  • エクセルのツールバーの設定

    エクセルでツールバーの設定がファイルを開くたび変わってしまうことがあります。 どのようにしたら固定できるでしょうか。 以前に回答があった下記urlのNo.2をやろうとしましたが、できませんでした。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=699296

  • 誰かーー

    誰か私が書いた、「tartarsauceとbarnacles」のNo.3のruneeさんが回答した のを訳してください。 関連URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=249071

  • タスクでの自動シャットダウンで

    下記のNo.4さんの回答を見て自動シャットダウンを試したところ、プログラムが実行しませんでした。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=540924 そこで、下記のNo.2の回答にあるように、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=508883 C:\WINDOWS\SYSTEM32\SHUTDOWN.EXE -S と、最後に"-S"を付け加えたら実行できるようになりました。 この"-S"って何なんでしょうか? 意味を知っている方教えて下さい。 それと、"-S"以外にも何かこうゆう記号?ってありますか? よろしくお願いします。m(__)m

  • 回答者のマナー?

    ここの質問に対する回答 http://oshiete1.goo.ne.jp/kotaeru.php3?q=62568 ここの回答のまるまるコピー! http://oshiete1.goo.ne.jp/kotaeru.php3?q=29341 参考URLぐらい書くべきだと思うんですが・・・ みなさんはどう思われますか?

  • この教えて!goo> 教育 > 歴史で

    No.711850の表示(掲示板)おかしくないですか? http://oshiete1.goo.ne.jp/kotaeru.php3?q=711850

  • No.2 既婚者としての恋愛感情

    何度もすみません。質問のNo.16800の続きです。もう少し回答やアドバイスがほしくて再度質問しています。よろしくおねがいします。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=16800

  • 「気の措けない」ではありませんか?

    少し前の質問に対して,回答者も(回答者ですら)複数の方が,「気の(が)置けない」という文字をつかっています。 正しい漢字を教えてください。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=500397 http://oshiete1.goo.ne.jp/kotaeru.php3?q=836530

  • Win98からsambaサーバーにアクセスする際に必要なパスワード

    現在Win98からKNOPPIX3.4のsambaサーバーにアクセスしたいのですが、 Win98の[ネットワークコンピュータ]からアクセスしようとすると[ネットワークパスワード]を求められます。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=463889を 読んで見ましたが、No.1のやり方を したいのですが、難しすぎて手順などが全くわかりませんので、分かりやすいように教えてもらえませんでしょうか。よろしくお願いします。

  • enterでsubmitされない方法

    http://oshiete1.goo.ne.jp/kotaeru.php3?q=101678 で、enterでsubmitされない方法が記載されているのですが、 No.3の回答に対して、もうすこし詳しく具体的に教えていただけないでしょうか? 当方、javaは、まったくわかりません。 よろしくお願いします。

専門家に質問してみよう