break文の是非について

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
短期大学校にてプログラミングを学んでいるものです。
私の学校ではbreak文の使用が厳禁とされています(教師の個人的な規制だが)
また、メインループで0を返してループを抜け出すことも禁止されています(メインループの最後以外で)

このようにbreak文とは一般的には使用してはいけないもの、使用は控えるべきもの。と認識してもよろしいのでしょうか?
2デフォルトの名無しさん:2009/06/22(月) 17:19:23
一定レベル以上の人では、そういうのはすごい少数派。

あと、広がりのない話題でスレを立てるのはマナー違反な。
3デフォルトの名無しさん:2009/06/22(月) 17:26:29
>>2
スレ立てすいませんでした・・・
レスありがとうございます。
4デフォルトの名無しさん:2009/06/22(月) 17:26:29
>>1
世の中というのは不条理な物で、意味が無くても従わないといけない事もあるのです。

コーディング規約としては意味は無いけど、

・単位が欲しいなら従うしか無いでしょ
・給料が欲しいなら従うしか無いでしょ
・コミットして欲しいなら従うしか無いでしょ

みたいなね。

break がダメなら代わりに goto を書きまくったら良いんじゃね。
5デフォルトの名無しさん:2009/06/22(月) 17:29:33
>>1
あとで、ちゃんとした専門機関でもう一度勉強し直すことをお薦めします。
単位を取る以外のことは考えず、すべて受け流すように。
6デフォルトの名無しさん:2009/06/22(月) 17:29:34
>>4
単位のためには従うしかないないですね・・・
7デフォルトの名無しさん:2009/06/22(月) 17:34:10
>>5
今は単位を取ることだけに集中したいと思います。

>>6
ないない・・・
8デフォルトの名無しさん:2009/06/22(月) 17:41:42
>>1
それを提唱したのはダイクストラですが、そのことに関しては教えてもらいましたか?
まだであれば、ダイクストラと構造化プログラミングについてググってみましょう。

一般的には、breakも関数の途中抜けも多用され、そしてそれは悪いことではありませんが、
悪い用法・文脈で使われてしまうこともあります。
そのような癖を付けさせないために、学習期間中はダイクストラの教えを厳守させるのも
一つの方法です。

breakを使いたくなったり、関数を途中抜けしたくなったり、インデントが深くなったりしたときは、
まず関数全体の構造をよりよくできないか考えましょう。
あるいは、大きな関数やインデントが深い関数は、関数分割やリファクタリングを考えましょう。
そのようなことを考えさせるために、ダイクストラの教えを強要するのではないかと思います。
9デフォルトの名無しさん:2009/06/22(月) 17:52:58
ダイクストラが言っていたのは break ではなくて goto じゃないかな。
switch の中で break を使えない状況なんて、ちょっと理解出来ませんよね。

わざわざ無意味で不必要な制限を加えて、おかしな癖が付いたら逆効果です。
10デフォルトの名無しさん:2009/06/22(月) 17:57:35
switchなんていらないだろif elseifで十分
11デフォルトの名無しさん:2009/06/22(月) 18:07:44
構造化スキーで途中return禁止ってのはたまに出会うけど、break禁止ってのは珍しいな。
goto使いたくないっていうことで
do{...}while(0);
をbreakで抜ける技とか使うくらいなのに。
12デフォルトの名無しさん:2009/06/22(月) 18:18:26
breakもgotoと同じだろ
13デフォルトの名無しさん:2009/06/22(月) 18:20:03
continueも禁止ですな。
gotoと同じだし。
14デフォルトの名無しさん:2009/06/22(月) 18:20:58
>>9
switchの中のbreakじゃなくて、ループ脱出のためのbreakの話でしょ。
15デフォルトの名無しさん:2009/06/22(月) 18:26:45
マゾプログラミング講座では、現在 break, continue, goto, return が禁止されています。
switch の使用も意味をなさないので推奨されません。制限はこれからも増える予定です。
16デフォルトの名無しさん:2009/06/22(月) 18:30:06
スマソ。規約は正確に書かないとな。

× return が禁止
○ 複数 return が禁止
17デフォルトの名無しさん:2009/06/22(月) 19:43:17
スレ立てるまでもない質問はここで 97刷
http://pc12.2ch.net/test/read.cgi/tech/1240877154/
18デフォルトの名無しさん:2009/06/23(火) 10:37:12
初心者には禁止するくらいでいい
19デフォルトの名無しさん:2009/06/23(火) 10:51:07
初心者上級者関係ないです。
20デフォルトの名無しさん:2009/06/23(火) 10:58:33
break禁止は大きな過ち
むしろwhileとbreak以外の全ての制御構文を禁止するべき
ifとかelseとかforとか存在自体が無駄
21デフォルトの名無しさん:2009/06/23(火) 11:03:20
こんな30年前に終わった話題をいまさら蒸し返さなくてもいいよ
22デフォルトの名無しさん:2009/06/23(火) 14:16:40
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
23デフォルトの名無しさん:2009/06/23(火) 14:48:59
call/cc 使おうぜ!
24デフォルトの名無しさん:2009/06/23(火) 23:25:52
>>1
ところでプログラミング言語は何?
25デフォルトの名無しさん:2009/06/24(水) 08:22:01
学校の先生が禁止するのは、
必要もないところでむやみに使うやつがいるからだろう。
生半可な知識だと、とにかく動けばいいやってんで、
めちゃめちゃな使い方するやつがいるからね。

現実には、適切なところで、適切に使えばいいんだよ。
他人がそのプログラムを見たときに、
そのほうが分かりやすいかどうかが目安だ。
26デフォルトの名無しさん:2009/06/24(水) 08:45:53
禁止すれば何かが解決すると思うのもなんだかなあ…
27デフォルトの名無しさん:2009/06/24(水) 09:13:18
コーディングスタイルの話題で、そんな書き方ないだろうって言われると、
「いや、これは初心者(ヘタクソ)に有効な書き方なんだ」っていいわけ
するやつがいるけど、コーディングスタイルに上級者むけとかヘタクソむけ
とかないから。
28デフォルトの名無しさん:2009/06/24(水) 10:14:05
この場合は、へたくそに「有効」なんじゃなくて、
へたくそには「使わせない」ってことだから、ちょっと違う。

学校の先生は、数十人以上を同時に相手にしていて、
短大なら来プログラミングをする職業に就く人も少なそう。
いちいちきめ細かな指導をしていられる状況じゃない。
単に、一般教養の一種としてプログラミングの入門を
教えているなら、使わせないという発想もありだと思う。
29デフォルトの名無しさん:2009/06/24(水) 10:14:51
いくらなんでも無内容すぎる
30デフォルトの名無しさん:2009/06/24(水) 10:16:06
breakの代わりに、goto文を多用すればいいだけwwwwww
31デフォルトの名無しさん:2009/06/24(水) 10:44:00
正直言って、将来プログラマにならない
文系素人にコンピュータの仕組みを教えるなら、
BASICでいいと思うよ。もちろん、GOTO使いまくりで。
関数とかサブルーチンとか教えても無理だから。
32デフォルトの名無しさん:2009/06/24(水) 10:58:06
goto文が悪いわけじゃない。

プログラムのコーディングができても設計ができない奴に問題がある。
33デフォルトの名無しさん:2009/06/24(水) 11:50:46
C#のルールブックって本は break禁止だったな。
理由は分かりにくいってコトだったが、 サンプルどうみても
breakを使わないでかいたリストの方が分かりにくかったが。
34デフォルトの名無しさん:2009/06/24(水) 11:55:48
>>26
いや、解決するでしょ
35デフォルトの名無しさん:2009/06/24(水) 12:03:28
>>28
そういう理由なら、教えないってだけで、使うのは禁止しなくてもいい。
むしろ教えていない部分でも、自分で勉強して使う生徒は評価するくらいでなくては。
36デフォルトの名無しさん:2009/06/24(水) 13:10:20
所詮、体育会系単細胞教師ってことだw
37デフォルトの名無しさん:2009/06/24(水) 14:40:44
>>34
それは解決してる気になってるだけだよ。
38デフォルトの名無しさん:2009/06/24(水) 15:00:39
>>37
安易にbreak, continue, returnする癖が付く問題は回避できるでしょ
39デフォルトの名無しさん:2009/06/24(水) 15:27:25
break,continueを絶対使わない、returnは関数の最後に一個だけって
癖がつくのとどっちが有害だろうか。
40デフォルトの名無しさん:2009/06/24(水) 15:27:50
>>38
安易に禁止する事で、breakの使い方を知らない子供たちを量産するんですね
41デフォルトの名無しさん:2009/06/24(水) 15:45:33
>>39
使い所を知ってるからそういいたいんだろうけど、相手は初心者だよ?
42デフォルトの名無しさん:2009/06/24(水) 15:50:20
>>39
適切なbreak, continue, returnの使用は、そのうち学習すればいい。
適切じゃない使い方をさせないための制限でしょ。
break, continue, return, gotoを最初から無制限に使いまくれとでも言いたいの?
43デフォルトの名無しさん:2009/06/24(水) 15:53:02
古き良きPascalやLispを使わせれば問題ないんだよ。
44デフォルトの名無しさん:2009/06/24(水) 15:54:04
よくある、配列の要素をfor文で巡回する様な処理の場合も、
必要な値が見つかってもbreakしないで最後の要素まで
延々と検査するんだろうな。

それは悪い癖じゃないのかな?
45デフォルトの名無しさん:2009/06/24(水) 15:56:23
使いながらおぼえればいいだろ。
breakとかcontinueって、そんなに危険物なのか。
たいがいに入門書にはbreakやら、省略せずに教えてるけど、
そういう教科書で勉強した初心者は、すごいことになりそうだな。
46デフォルトの名無しさん:2009/06/24(水) 15:57:46
breakが無い言語ではプログラミング出来ないんだろうなぁ
47デフォルトの名無しさん:2009/06/24(水) 15:58:46
>>39
一年間の講義を終えた後でbreakの存在を知った生徒はどう思うんだろうね。
独自にbreakの使い方を勉強して、結局は悪い癖を身に付けちゃう子も居るだろうね。
授業で教えてくれなかったし…
48デフォルトの名無しさん:2009/06/24(水) 16:01:01
>>47
break禁止って言われるわけだから、一年後に存在に気づくなんてあり得ないだろ馬鹿
49デフォルトの名無しさん:2009/06/24(水) 16:02:25
>>48
名前を知ってるのと、適切な使い方を知ってるのは雲泥の差だろ…
50デフォルトの名無しさん:2009/06/24(水) 16:04:22
break禁止令を不自然だと思わない人間がム板にいる事が驚きだわあ
51デフォルトの名無しさん:2009/06/24(水) 16:09:36
スポーツとかと違って、プログラミングの癖なんていくらでも修正きくんで、
どうでもいいっていえばどうでもいいけどな。
初心者のころにbreakは一般的でないって教えられて、以後、それを信じ込んで
考えを変えられないとかってのは、癖どうこう以前にダメだしな。
(じっさいそういうヤツ一杯いるけど)

こういう、怪しいスタイルを教えるやつって一杯いるんで、自分で自衛するか
ない。
52デフォルトの名無しさん:2009/06/24(水) 16:14:52
出来る事ならば、学校の先生はそういう怪しいスタイルから
生徒を守る側に立って欲しいよな
53デフォルトの名無しさん:2009/06/24(水) 18:33:26
こういうのは、教科書の問題も大きい。
世の中の本の中には、とりあえず、breakやgotoの文法だけ
教えればいいだろうってんで、非現実的なサンプルプログラムを
載せているものがある。極端な例だと、

for (i = 0; i < 10; i++) {
...
if (i == 7) goto label;
...
}
label:

なんてのを見たことがある。
こいうのは、break, continue, gotoだけじゃなくて、
switch, do-while もそうなんだけど、短くてしかもちゃんと
必然性のあるサンプルプログラムって作るのって、結構難しいんだよね。
54デフォルトの名無しさん:2009/06/24(水) 18:44:43
例文はこういうので良いんじゃないの。

http://okuyama.mt.tama.hosei.ac.jp/unix/C/slide77.html

ちょっとググってみたけど、確かにあまり意味無いなあと思う例文も多いですね。
55デフォルトの名無しさん:2009/06/24(水) 18:54:39
>>54
普通は、配列を習うのは制御構造の後。
56デフォルトの名無しさん:2009/06/24(水) 20:18:26
>>18-
>>17 が見えないか?
見えてるけど、語りたいのか?莫迦のくせに。
57デフォルトの名無しさん:2009/06/24(水) 20:40:04
>>55
講師が↓このどちらかを言えば問題無いでしょ。

『breakについては配列を勉強してから再度詳しく取り上げます』
『配列については後で詳しく説明します』
58デフォルトの名無しさん:2009/06/24(水) 22:06:33
breakとかcontinueとか、時間がないから省略するってのは、まだしも
難しいとかクセがつくから教えないってのはありえない。
59デフォルトの名無しさん:2009/06/24(水) 22:53:21
この教師、フラグをガンガン使いまくってでも1個のbreakを避けることの方が重要なんだろうな。
まあ実社会でそういう害毒を撒き散らさないんなら、好きにやってていいよw
60デフォルトの名無しさん:2009/06/24(水) 23:27:42
breakって、関数型言語でループ(もどき)を回した時の
ガードに相当するんじゃないの?
61デフォルトの名無しさん:2009/06/25(木) 11:15:06
>>44
先生!break使わずに早や抜け出来ました!

int i, targetIndex = INT_MAX;
int count = countOfArray(array);
for(i = 0; i < count; i++) {
if(a[i] == target && targetIndex != INT_MAX) {
targetIndex = i;
count = i;
}
}
62デフォルトの名無しさん:2009/06/25(木) 15:07:43
>>61 break 使わないと 可読性がますます下がるな...
↓も break 使ってないがマダマシ?

int searchTargetIndex(int* array, int target)
{
 int i;
 int count = countOfArray(array);
 for (i = 0; i < count; i++) {
  if (array[i] == target) {
   return i;
  }
 }
 return INT_MAX;
}

targetIndex = searchTargetIndex();

6362:2009/06/25(木) 15:09:08
すまん.
途中 return も禁止だったね.
6462:2009/06/25(木) 15:10:13
しかも, 呼び出し
targetIndex= searchTargetIndex(array, target);
だ.
65デフォルトの名無しさん:2009/06/25(木) 21:04:33
なんで for? while 使えばいいじゃん
66デフォルトの名無しさん:2009/06/25(木) 21:09:29
done = 0;
while (!done) {

}
67デフォルトの名無しさん:2009/06/25(木) 21:13:40
そして余計なフラグが一個増えた
68デフォルトの名無しさん:2009/06/25(木) 23:17:41
break禁止よりwhileの使い方をちゃんと教えた方が有益だな、と思いました
69デフォルトの名無しさん:2009/06/26(金) 03:18:36
break禁止ってパフォーマンスに関わってくる気がする
70デフォルトの名無しさん:2009/06/26(金) 09:36:41
課題の評価方法として、例えばbreakは減点1、gotoは減点50、
フラグ目的の変数は減点2、などとして評価するのはどうだろう。
71デフォルトの名無しさん:2009/06/26(金) 10:10:37
使わなかったら点数が倍とか
72デフォルトの名無しさん:2009/06/26(金) 10:28:58
なんでbreakやフラグで減点なんだ。
73デフォルトの名無しさん:2009/06/26(金) 10:51:47
減点最小に最適化しろってことだろ。
74デフォルトの名無しさん:2009/06/26(金) 10:54:20
goto/break憎しでそれを避けるコードやそういうコードを書く奴って糞ばっかりなんだけど。
経験的に言って。
75デフォルトの名無しさん:2009/06/26(金) 11:01:28
>>74
そういうコードは大きく減点するようにすればいい。
76デフォルトの名無しさん:2009/06/26(金) 12:46:38
>>65
for-breakを使うことを知って、それで思考停止する馬鹿が多いから、break禁止にも一理あると言うことですな。
77デフォルトの名無しさん:2009/06/26(金) 12:56:15
一理もないような気がする。
78デフォルトの名無しさん:2009/06/26(金) 14:46:39
無駄な思考は要らんだろ
他に頭回せよ馬鹿
79デフォルトの名無しさん:2009/06/26(金) 14:46:42
気のせい
80デフォルトの名無しさん:2009/06/26(金) 14:47:35
>>78
君プログラマに向いてないよ
81デフォルトの名無しさん:2009/06/26(金) 15:02:44
>>80
お前が向いてない
金にならない
82デフォルトの名無しさん:2009/06/26(金) 15:51:59
>>80
悔しいね〜
83デフォルトの名無しさん:2009/06/26(金) 15:52:54
whileやdoを使うことを一ミリも考慮しない馬鹿
84デフォルトの名無しさん:2009/06/26(金) 16:39:04
まだ頑張ってるのかw
break禁止が非難されると困るのはどんな人なんだろうね。
85デフォルトの名無しさん:2009/06/26(金) 16:47:59
ifとgotoさえあれば他は要らない
86デフォルトの名無しさん:2009/06/26(金) 16:51:33
>>85
それで各行に番号みたいのがついてれば、ラベル名考える手間がなくて便利じゃね
87デフォルトの名無しさん:2009/06/26(金) 17:36:05
>>84
いやいや、誰かがbreakを禁止すると困る人が多いようだよ
88デフォルトの名無しさん:2009/06/26(金) 17:41:14
>>84
別に困らないけど、breakを禁止にすることによって得られるメリットがあることを納得しない
人がさんざん反論するから相手してるだけ。
89デフォルトの名無しさん:2009/06/26(金) 17:44:45
もうちょっとましな暇つぶししようぜ。
いくら時間をつぎ込んでも2chはお前を救ってはくれないぞ。
90デフォルトの名無しさん:2009/06/26(金) 17:50:23
生産性の無いことするの好きなんだね
91デフォルトの名無しさん:2009/06/26(金) 18:41:26
>>87
そりゃ困るだろ。
breakの使い方も知らない人間とコーディングするのは誰だって嫌だぜ。
歪んだ知識を持った奴がおかしな理屈を振りかざすのも面倒だし。
92デフォルトの名無しさん:2009/06/26(金) 19:02:35
あり得ない話だが、仮にbreak禁止論が一般に広まったとしたら、
一番困るのは、>>1が行ってる短大の講師だろう。
93デフォルトの名無しさん:2009/06/26(金) 19:20:15
break禁止論が一般に広まったとしたら、gotoで書くだけのような気がする。
goto駄目なら、例外とか、関数リターンとか、フラグ…
はっきりいって余計に悪い!
94デフォルトの名無しさん:2009/06/26(金) 20:02:36
breakみたいなよく使われる機能は授業の中できちんと教えるべきですよね。
もしbreakの使い方で問題が起こるなら(勿論そんな事は稀ですが)、講義の中で
フォローしてあげるのが先生の仕事ではないでしょうか。

それがそんなに難しい話だとは思えません。
95デフォルトの名無しさん:2009/06/26(金) 20:04:38
>>88
break を教えて貰えない事による、生徒の側のメリットって何よ?
96デフォルトの名無しさん:2009/06/26(金) 20:48:26
文系短大のプログラミング入門の授業だったら、
break なんてちゃんと教えてる時間はなさそう。
禁止する理由にはならないけど。
というか、Cなんて教えるな、という話になる。
97デフォルトの名無しさん:2009/07/01(水) 08:57:06
毎回規約が変わるのなら勉強としては良いかも知れない
今回はbreakやcontinueや途中return禁止、次回はelse禁止とか
98デフォルトの名無しさん:2009/07/01(水) 13:19:03
勉強にはなるかも知れんが
仕事にならんなw
99デフォルトの名無しさん:2009/07/01(水) 20:13:27
Java みたいに goto 禁止とか、
関数型言語みたいに破壊的代入禁止とか、
JavaScript みたいに sleep 禁止とか、

>>1 の話は全然レベルが違うか…
100デフォルトの名無しさん:2009/07/02(木) 15:21:14
goto のかわりに例外投げれば良いじゃない。
break のかわりに例外投げれば良いじゃない。 throw ELoopBroken みたいな。
途中 return のかわりに例外投げて関数の最後で補足すれば良いじゃない。throw EReturn(戻り値) みたいな。
101デフォルトの名無しさん:2009/07/02(木) 17:42:23
それ C じゃ通用しないお
102デフォルトの名無しさん:2009/07/02(木) 17:49:03
phpだと break 2 とか break 3 って、複数ループジャンプできなかったっけ
103デフォルトの名無しさん:2009/07/02(木) 18:47:30
もうsetjump(3)とlongjmp(3)でいいじゃない
104デフォルトの名無しさん:2009/07/02(木) 19:47:28
Java は break や continue にラベルを指定できる
105デフォルトの名無しさん:2009/07/02(木) 20:32:50
out:
while(1){
106デフォルトの名無しさん:2009/07/02(木) 20:34:11
    break out;
}

ミスった
107デフォルトの名無しさん:2009/08/05(水) 19:20:01
\\
108デフォルトの名無しさん:2009/08/05(水) 21:13:18
>>105-106
それってどんな goto
109デフォルトの名無しさん:2009/08/06(木) 00:24:06
しかし、大学校なんて防衛大ぐらいだと思ってたけど他にもあるのか。
110デフォルトの名無しさん:2009/08/07(金) 14:34:25
でーこーぼーこ大学校ー
はーじーまーるよー
111デフォルトの名無しさん:2009/08/08(土) 01:43:20
>>110
NTT西日本は大学校持ってないよ。
112デフォルトの名無しさん:2009/10/08(木) 04:58:45
つーか、学校でプログラミング教えているようなやつなんか終わってるんだよ。
優秀な人間ならどう考えたって教員なんかよりソフトウェアエンジニアリングの方が儲かるもん。
break禁止とか現場的枝葉に拘るところからして、コンピュータサイエンスとかのアカデミズムとも無縁だろう。
プログラミング教えるってそれ自体そもそも学問じゃないので大学職員としても底辺だし。
そんなダメなやつが break禁止って生意気だろ?
おまえは、Scott Mayerより偉いのか? K&Rより偉いのか?
『何様ですか?』と2chで人格攻撃されてましたと、どうかお伝えください。

113デフォルトの名無しさん:2009/10/08(木) 10:56:45
保守すんな阿呆
114デフォルトの名無しさん:2009/10/30(金) 16:40:45
プログラムは単なる手段です。
115デフォルトの名無しさん:2010/07/29(木) 16:31:07

116デフォルトの名無しさん:2011/05/05(木) 11:08:52.08
117デフォルトの名無しさん:2011/05/10(火) 07:17:14.97
ヽ(`Д´)ノボッキアゲ!!
118uy:2011/05/15(日) 01:23:01.67
breakは、アレだろ
こういう使い方はヤバイ
begin
print "test"
print "test"
print "test"
print "test"
print "test"
break if flag
print "aaaa"
print "aaaa"
print "aaaa"
print "aaaa"
print "aaaa"
print "aaaa"

end until false


こうやってbreakの後ろにもソースコードがある場合、
これは本来、ソースが冗長しようとbreakの前にある処理と、 breakの後ろにある処理を
別関数に分けるべき、
119uy:2011/05/15(日) 01:27:49.18
あとは何かイテレータで廻してるときとか、
each.do |n|
 break if test
 処理
end
こうかくのは全然あり
これをしないと
each.do |n|
 unless test
  処理
 end
end
こうかね。
しかも無駄なループが発生する
120デフォルトの名無しさん:2011/05/15(日) 08:18:33.30
>>119はともかく、>>118は駄目な発想だな。
関数は意味のあるまとまりができたときに、その処理に名前をつけるために作るもの。

文法的にこういう記述ができたから関数にしよう
……なんて発想で関数を作ると思いっきり読みにくくなる。
冗長とか言う問題じゃなくて、関数の間の結合度が上がる。
121uy:2011/05/17(火) 15:23:59.69
>>120
このヤバさがわからないとは、このケースの問題に当たった事がないだろ
俺が今まで読んだどこかの本にも書かれていた内容だと思ったけどな

returnや、breakは、その処理ブロックの最初か最後に書くべきであって、
中盤にやたらかいてはいけない
print "aaaa"    ←例えばこれが、百行くらいだったりした場合の可読性の低下は、やばい
そしてこのかき方をゆるすと、その百行の中にもさらに複数のbreakの発生を許す事にもなるよね

俺がつい最近>>118みたいなコードを「仕方なく」書いたから、例として出したんだけど後で書き直すつもりだよ
そのせいで関数の数が二つ増える事になるけど、そうする予定


んで、関数の名前についてだけど
別に関数を2個に分裂させるわけじゃなく、
共通処理を抜き出してSub関数を作るんだよ、この部分の関数分けは表には現われない
もしかしたらyieldが無いと出来ないタイプの芸当な感じがするけどな
122uy:2011/05/17(火) 15:47:14.41
なんか概念を色々しらなそうだから付け足しておいてる
lambda、クロージャでググレカス

オブジェクト指向ではなく、関数型プログラミングのほうで関数というものは
とにかく細かい単位にまで処理を分けるもの、OOではクラスでやってる役割も関数型ではlambdaで受け持つ事がある
OOでも118はダメだと思う
118が許されるのはC言語による手続き型のプログラミングまでです
123デフォルトの名無しさん:2011/05/22(日) 14:52:19.38
>>121
> print "aaaa"    ←例えばこれが、百行くらいだったりした場合の可読性の低下は、やばい
> そしてこのかき方をゆるすと、その百行の中にもさらに複数のbreakの発生を許す事にもなるよね

同じような記述が100行もある時点でおかしい。breakがどうこう言う以前の問題だよ。
お前は関数型言語だとかラムダだとかを知る前に、サブルーチンの作り方とかループを知れ。
124デフォルトの名無しさん:2011/05/23(月) 11:35:40.61
頭でっかちで実装技術が伴っていない悪寒。
125uy:2011/05/24(火) 22:35:01.12
>>123
知的障害者の方ですか?
ボケで言ってるんじゃなければ、病院いけ  それか休め


煽りじゃなく、  たぶん、お前以外の奴は全員理解してる
> print "aaaa"
> print "aaaa"
> print "aaaa"   これ 同じ記述が続くって意味じゃないことを
126uy:2011/05/24(火) 22:45:15.49

知的障害者は言い過ぎたか、素の初心者か君。


流石に、俺はあちこちで痛いこと書き込んでるけど そこまでではない
とりあえず、学生の君にも分かりやすくいうと、学生時代にC/C++で数万行のソースかいてたレベル
当然学内では1位だったよ
井の中の蛙とかおやまのたいしょうとか、思うならそれでもいいけれど

流石に君のような頭の悪そうな学生以下ではないので
127デフォルトの名無しさん:2011/05/25(水) 02:47:03.19
>>123の是非はともかく、少なくとも匿名掲示板で延々とコテ付けてる人が頭が良いとは言えないぞ
128デフォルトの名無しさん:2011/05/25(水) 07:30:09.64
>>127
マ板の例外スレ見てみ。
こいつキ○ガイだから。
129デフォルトの名無しさん:2011/05/25(水) 07:47:09.88
gotoと例外の区別もつかないのか。だから、breakとgotoの区別もついてないんだな。
130uy:2011/05/27(金) 21:29:42.92
知的障害は知的障害を呼ぶ

このスレこわ
大学1年生がみても、程度が低いと分かるレベル

笑っていいよ、 >>ここみてる大学生      これが日本のレベルです。。。。
131デフォルトの名無しさん:2011/05/30(月) 08:49:10.68
自分で言っちゃったね。
132uy ◆yyC0rYWEq2 :2011/05/30(月) 17:18:20.79

どうせ35でプログラマ続けるのが限界になって

ひっそりと自殺するゴミに何を言っても無駄か・・・
133デフォルトの名無しさん:2011/05/30(月) 19:53:46.31
うんこにラベルつけてもうんこはうんこですよ
134デフォルトの名無しさん:2011/06/04(土) 17:13:39.91
ruby厨っておもしれーな
135デフォルトの名無しさん:2011/06/04(土) 22:24:38.60
Perlにも変なのがいたぞ。PHPが嫌いらしい。
136デフォルトの名無しさん:2011/06/05(日) 02:37:05.33
本読みかじった知識だけ振り回して細かく分けすぎて破綻するパターンとか
クロージャ使いまくって不具合を追えなくなるパターンを経験してないんだな
137デフォルトの名無しさん:2011/06/06(月) 22:00:09.78
138デフォルトの名無しさん
へえ