プログラミング用語について への返答

投稿で使用できる特殊コードの説明。(別タブで開きます。)
本名は入力しないようにしましょう。
投稿した後で削除するときに使うパスワードです。返答があった後は削除できません。
返答する人が目安にします。相手が小学生か社会人かで返答の仕方も変わります。
最初の投稿が質問の場合、質問者が解決時にチェックしてください。(以降も追加書き込み・返信は可能です。)
※「過去ログ」について書くときはその過去ログのURLも書いてください。

以下の返答は逆順(新しい順)に並んでいます。

投稿者 るきお  (社会人) 投稿日時 2010/7/10 14:23:02
なおきんさんが初心者と思って回答します。
初心者にオーバーライドを説明するのは、小学生にいきなり中学校の内容を教えるようなもので、あまり意味はないことと思っています。既に発言もあったかと思いますが、さしあたり気にしない方がよいです。

とはいえ、気になってしまうこともあると思いますから私流に簡単に説明すると「既にある機能の内容を書き換えてしまうこと」です。フォームのプログラムでメソッドを定義するときにPrivate Function…と書いていくかと思いますが、ここでいきなり「Overrides」と書いてスペースを打つと書き換え可能な機能(=オーバーライド可能なメソッドなど)の一覧が表示されます。

一応ここに解説記事を書いています。
http://homepage1.nifty.com/rucio/main/VBdotNet/Advance/Advance3.htm

インスタンスは初心者は一番苦労する考え方ではないかなと思います。
ここで解説記事を書いています。
初級講座第9回 クラスの使い方
http://homepage1.nifty.com/rucio/main/dotnet/shokyu/standard9.htm

入門講座1回から順番に読んでたどりついていただければなと思います。
初心者向きに簡単に説明すると「As クラス名」で宣言した変数のことがインスタンスです。
たとえば、次の変数pはPenクラスのインスタンスです。
Dim p As New Pen

本当はただ宣言しているだけではだめでNewなどでインスタンス化してないとインスタンスにはなれません。


>この掲示板の冒頭に「小学生 中学生 高校生に優しいページを目指しています」と書かれています。
これは私個人の目標なので、みなさんは普通に書き込んでいただければOKです。
普通に書き込んでもらえるだけで嬉しいです。

もちろん、私の趣旨に賛成してもらえればそれとは別の嬉しさがあります。
部外者さん、くみとっていただいてありがとうございます!

今後もよろしくお願いします。
投稿者 部外者  (社会人) 投稿日時 2010/7/10 09:39:10
この掲示板の冒頭に「小学生 中学生 高校生に優しいページを目指しています」と書かれています。

>プログラミングの本を読んでると、
>「オーバーライド」や、「インスタンス」など、訳のわからない(自分にとって)言葉がたくさん出てきます。
>このような用語の意味を教えてください。
こうした質問に対して
>国語で分からない単語が出てきたら国語辞典で調べるでしょう
>プログラムする人にとっては、突き放すとかいうレベルじゃなくて常識なんですが。。。
確かにおっしゃるとおりかもしれませんが
回答する人は、私も含めて、もう少し優しい気持ちで、言葉を選んで伝えるように心がけようではありませんか

それが、るきおさんがこのサイトを立ち上げた思いにかなうものと思われます。
投稿者 cupid  (その他) 投稿日時 2010/7/9 10:51:08
そういう言葉(特にカタカナ語)の解らない箇所など、当面は、読み飛ばせば良いですよ。
見方を変えれば、解説が難解なだけで、書かれたプログラムを見れば、そう難解でない。
ともかくこう書けば、プログラムはこう動くと解れば、それでよろしいのでは。
いずれまた、解説書に書かれた意味を考えれば、そのうち解るでしょう。
現状では、意味だけ説明されても、余計に解らなくなるだけ、かもしれず。
投稿者 (削除されました)  () 投稿日時 2010/7/9 10:31:46
(削除されました)
投稿者 るしぇ  (社会人) 投稿日時 2010/7/9 10:17:45
国語で分からない単語が出てきたら国語辞典で調べるでしょう。
コンピュータ用語で分からない単語はコンピュータ用語辞典で
調べます。プログラムする人にとっては、突き放すとかいう
レベルじゃなくて常識なんですが。。。

>プログラムをより簡潔に書くための一手法であり、
>生産性を高めるための技法という
>おさえでいいいのかなと思っております。
そんな大風呂敷なんだ?オーバーロードも継承もインターフェース
なんかも当てはまりそうな説明でいいの?

>例えば自作の関数を使えばコーディングも少なくなり、
>プログラムが簡潔なものになりますが
既存の関数がそのまま使える場面だとコーディングしなくて
良くなるのでは?そもそも関数を使うかどうかの話と
オーバーライドするかどうかは目的から違うと思う。

冗長と言うなら、オーバーライドの方が使われないコードが
でき易いので、プログラムは冗長になってると言えなくもない。
親クラスのメソッドの内容が無駄じゃないか疑う余地もある
かもね。勿論、必要があるから使うんだけどね。
投稿者 とくめい人  (社会人) 投稿日時 2010/7/9 07:31:29
私もオーバーライドについえは深く理解してないのでうまく説明できませんが、
プログラムをより簡潔に書くための一手法であり、生産性を高めるための技法という
おさえでいいいのかなと思っております。

例えば自作の関数を使えばコーディングも少なくなり、プログラムが簡潔なものになりますが
関数を使わなければ冗長なものになってしまい、無駄が多くなるということです。

私の認識が誤っていたら訂正願います

投稿者 (削除されました)  () 投稿日時 2010/7/9 07:29:40
(削除されました)
投稿者 流れ者  (社会人) 投稿日時 2010/7/9 03:55:43
おはようございます。

なおきんさん
あえて、突き放します。自分で調べてください。
。。。と、完全に突き放すのも大人気ないので、ヒントを。

オーバーライドは関数、インスタンスはクラス・変数に関係する用語です。

プログラムをやっていると、わからない用語はよく出てきます。
そのたびに人に聞いていると、時間がかかるので、自分なりに調べる術を身につけてください。
投稿者 まだまだ  (高校生) 投稿日時 2010/7/8 22:31:19
ぐぐれば出てきますよ。
例えば、「VB インスタンス」等と打ってぐぐってみてください。
VB中学校にもいくつかは解説してあると思います。
投稿者 なおきん  (小学生) 投稿日時 2010/7/8 21:08:53
プログラミング用語について質問です。

プログラミングの本を読んでると、
「オーバーライド」や、「インスタンス」など、訳のわからない(自分にとって)言葉がたくさん出てきます。
このような用語の意味を教えてください。
皆様のご回答をお待ちしております。