作者: 藤岡和夫
日時: 2008/3/01(10:58)
On Sat, 01 Mar 2008 04:00:44 +0900
davi <davi-1984@...> さんwrote:

> 知り合いに、1回しか呼んでいないのに何でもかんでも外に追い出す
> VBの中の人がいましてね…。
> 
> 「何書いてあるんだかわかんねーんだよ」と文句言ったら、「ファンク
> ションとサブプロシージャは違うのじゃ、その違いがわかって言って
> いるか?」と煙に巻かれました。
> 
> これ、絶対、煙に巻かれてますよね? 悔しいです。

 調べてみると、用語として、戻り値があるか、ないかの違いみたいだけど。プ
ログラムの一塊の機能に名前を付けたいということかもしれませんね。それはお
そらく分類みたいに本能みたいなものなんですね。再利用可能にしておくという
ことなんでしょう。

> 「万年初心者はなにゆえに万年初心者なのか?」ということの解の
> 1つには、抽象化とかオブジェクト化とかの高尚なお話以前に、
> 「あっちこっち飛んだらわからなくなる」というのが絶対あると
> 思います。

 Perlでモジュールを使うと、それはブラックボックスですから、モジュールの
コードを読めばいいかもしれませんけど、通常はドキュメントに従って、いろい
ろと使ってみて、意図どおりに動作すればOKみたいな感じで使いますね。あっち
こっちに飛んでわからないということではないですね。

> # 抽象化とかオブジェクト化とかの高尚なお話の段階になると、
> # 実業団のランナーと趣味のジョギングおじさんがホノルルマラソン
> # でたまたま同じ場所に立っている、という世界かな、という気が
> # しますが…。
> 
> 特に、if とか whileとかで 「〜である間」と「そうでなくなった時」
> が出てきて急に飛び出して行く場合。
> 
> で、入門書で、「デバッグの仕方」とか「そのときどんな値が入って
> いるのかを、状況遷移の一段階ずつを追って知る方法」を明示的かつ
> 超重要としてハッキリ書いてくれているものには出会ったことがあり
> ません。
> 
> 実に不思議です。
> ア○キーとか○評とかの言語入門書出版社の深謀遠慮としか思えません。
> 
> バッチのラベルジャンプに対する理解と、if とか whileとかの
> 明示的ループ回し、非明示の暗黙的な } からの飛び出しへの理解
> との間には、深い深い溝があると思います。
> 
> ここ2年ほどで、「どうもここの理解不足が自分の問題点らしい…」
> と薄ぼんやりと見えてきた気がします。

 条件分岐のための制御構造の使い方については、簡単なものから、複雑なもの
を試していけばきっとわかりますよ。今回のような題材は勉強のために最適でし
ょう。大体、ワンパターンになってきますけどね。複雑になっていくと、次第に
自分で何をやっているのかわからなくなりますけど^^;)

藤岡 和夫
kazuf@...
日曜プログラマのひとりごと http://homepage1.nifty.com/kazuf/renewal.html