[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 11:29 / Filesize : 188 KB / Number-of Response : 978
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

この会社辞めようと思ったソースコード#15



1 名前:仕様書無しさん [2006/12/26(火) 16:18:46 ]
この会社辞めようと思ったソースコード。
プログラマとして幻滅するソースコード。
プログラマを悩ませるソースコード。
をつらつらと綴っていって頂戴。

ちなみにここは質問スレじゃないので
技術的な質問がしたいならム板に逝って。

前スレ
この会社辞めようと思ったソースコード#14
pc8.2ch.net/test/read.cgi/prog/1158190165/

360 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:32:52 ]
>>358
え、それってVBの常套テクニックなの?
確かにフラグの値変わったときにブレークできるかもしれんけど、
普通にステップ実行で良いような気が・・・

361 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:34:24 ]
>>39

362 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:35:59 ]
>>361
納得!

363 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:37:46 ]
小粒だなぁ。できれば>>22みたいな良質な燃料が欲しいぞ?

364 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:41:18 ]
>>363
俺的には、
一目見てきれいであれば1000行オーダーは許す
SQL文とかでどうしても長くなる場合があるし。
でも、10000行はどう考えてもやりすぎだと思う。
まあ、どっちかっていうと、長さってよりは読みやすさって気はするが

365 名前:仕様書無しさん [2007/01/21(日) 16:44:32 ]
VBコード読まされてる時点でおわっとる

366 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:50:50 ]
>>364
きれい、がまた難しいけど概ねそうだね。

どっちかというと単に長いコードを書いて自慢したがるような輩と
一緒に仕事すると、会社辞めたく…いや、会社辞めさせたくなるよ。

367 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:53:37 ]
>>365
悪かったなwwww
しかもエクセルのVBAでつよwww

368 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:56:09 ]
エクセルって何気にすごいからな
あの技術は実はMSの中でも最高峰だろうw



369 名前:仕様書無しさん mailto:sage [2007/01/21(日) 16:57:54 ]
>>364
「行数」と「ステップ数」は違うぜ。

370 名前:仕様書無しさん mailto:sage [2007/01/21(日) 17:02:44 ]
>>369
うーん、まぁ、それでも同じかな。言いたいことは。

でも、{ }で囲まれた部分が1000ステップとかだと嫌

371 名前:仕様書無しさん mailto:sage [2007/01/21(日) 18:01:32 ]
>>365
すまん、この前javaでそんなコード書いたのだが
どうやっったら一行になるの?
日曜プログラマだから許して

372 名前:仕様書無しさん mailto:sage [2007/01/21(日) 18:06:05 ]
こうしろってことじゃねーの
if Not( someFunc() ) then goto errHdr

373 名前:仕様書無しさん mailto:sage [2007/01/21(日) 18:54:58 ]
>>371
boolean flag = isHoge();
if(flag){ /* 処理 */ }

じゃなくて

if(isHoge()){ /* 処理 */}

って書けばいいと思う。

374 名前:仕様書無しさん mailto:sage [2007/01/21(日) 19:03:31 ]
if( !someFunc() || !someFunc2() ){ /* エラーに飛ぶ処理 */}

375 名前:仕様書無しさん mailto:sage [2007/01/21(日) 19:08:51 ]
>>374
if(someFunc() && someFunc2()){ /* 正常系 */}else{/* エラーに飛ぶ処理 */}

両方notの条件をorで繋げるのは嫌い。

376 名前:仕様書無しさん mailto:sage [2007/01/21(日) 19:33:33 ]
>>355
おれもそうやるよ。コーディング時の効率、行数削減よりも
デバッグ時ちゃんとエラー値がハンドルできてることを見れるコードの方が
単体でバグ取りちゃんとできてあとで問題になりにくいと思ってる。

>>355的な1つにまとめてってのはどう書くの?
if(func1() <> x ) or (func2() <> y)
とか
bFlag1 = func1();
bFlag2 = func2();
if(bFlag1 <> x) or (bFlag2 <> y)

?後ろのやつはfunc1()がエラーのときもfunc2()を通っちゃうから実装自体に問題ありだけど

377 名前:仕様書無しさん mailto:sage [2007/01/21(日) 20:12:41 ]
>>375
>>355だけ見たら>>374が一番近いな
>>375のは厳密には意味が変わってくるからな

378 名前:355 mailto:sage [2007/01/21(日) 21:40:16 ]
そんな深いこと書いたつもり無かったんだけどw
おいらが思ったのは>>372

>>374は微妙な感じ。。。
>>375はsomeFunc, someFunc2両方とも実行されるから意味が異なる





379 名前:355 [2007/01/21(日) 21:42:10 ]
うそでした
>>375もsomeFuncがfalseとなった時点でthen以下が実行されるな
すまそ

380 名前:仕様書無しさん mailto:sage [2007/01/21(日) 21:46:04 ]
>>374, 375とも微妙なのは
たとえば、
func1をconnectDB()
func2をexecSQL
とすると分かりやすい。
って、んなこと書いてねーじゃん。すまん

381 名前:仕様書無しさん mailto:sage [2007/01/21(日) 21:56:35 ]
VBだとORは〜ってのを思い出すなぁ

382 名前:仕様書無しさん mailto:sage [2007/01/21(日) 22:50:49 ]
>>380
微妙じゃないじゃん。

383 名前:仕様書無しさん mailto:sage [2007/01/22(月) 00:19:24 ]
>>382
javaならそうね。
VBだと、両方評価されるんだ。

384 名前:仕様書無しさん mailto:sage [2007/01/22(月) 01:09:32 ]
なにその糞言語。

385 名前:仕様書無しさん mailto:sage [2007/01/22(月) 01:15:00 ]
マジだから。

386 名前:仕様書無しさん mailto:sage [2007/01/22(月) 01:22:09 ]
マジだね。
ショートサーキット利かない言語って意外とあるよ。
それで何度ブチ切れたことか。

# 言語仕様を把握せずに書いてる俺が悪いんだが。

387 名前:仕様書無しさん mailto:sage [2007/01/22(月) 02:15:01 ]
support.microsoft.com/kb/817250/ja
msdn.microsoft.com/library/ja/default.asp?url=/library/ja/vbcn7/html/vaconbooleanoperatorchanges.asp

これをみると、VB6はショートサーキット評価は効かない
2005もしくは.NETの場合でも明示的にAndAlsoかOrElseを使わないと効かない

ということだ。355のおかげで勉強になりました。ありがトン


388 名前:仕様書無しさん mailto:sage [2007/01/22(月) 12:59:37 ]
言語仕様がうんぬんに左右されず,読みやすいってことで
>>373の書き方が一番じゃないのかなぁ



389 名前:仕様書無しさん mailto:sage [2007/01/22(月) 16:22:04 ]
そんな程度のことにこだわっても良いこと無さげ。

390 名前:仕様書無しさん mailto:sage [2007/01/22(月) 19:42:24 ]
そもそも、VB6以前は、C言語の&&や||に相当する演算子が無かった希ガス。
(And は & の意味だし、Or は | の意味だったと思う)

391 名前:仕様書無しさん mailto:sage [2007/01/22(月) 21:28:57 ]
ねーよ
速度を考えると多段IFとかになる
だからもうね

392 名前:仕様書無しさん mailto:sage [2007/01/22(月) 21:56:07 ]
なんでVBって
dim i as integer = 0
とかって書けないの?いちいち2行使うのうざいんですけど
あと、! も使えなくてNot 3文字も打つ羽目になる

393 名前:仕様書無しさん mailto:sage [2007/01/22(月) 22:01:38 ]
そうそう
for dim i=0 to 5
と書けないのがうざい

394 名前:仕様書無しさん mailto:sage [2007/01/22(月) 22:09:03 ]
>392
上は .NET で解消したはず
オレもVBやってるときにイラついた仕様だ

395 名前:仕様書無しさん mailto:sage [2007/01/22(月) 22:49:16 ]
dim って dimension じゃなかったっけ?
配列以外の変数を宣言するのにも dim を使うのってなんか違和感ある。


396 名前:仕様書無しさん mailto:sage [2007/01/22(月) 22:51:17 ]
そーっすか

397 名前:仕様書無しさん mailto:sage [2007/01/22(月) 23:03:59 ]
>>395
BASIC時代に配列をDIMで宣言していた名残ですな
いまさら変更するわけにもいかんって感じじゃない?

398 名前:仕様書無しさん mailto:sage [2007/01/23(火) 00:24:30 ]
VBで一番イラつくのは ; がないこと。 といってみる。



399 名前:仕様書無しさん mailto:sage [2007/01/23(火) 00:36:05 ]
. があるCOBOLならOKですか?

400 名前:仕様書無しさん mailto:sage [2007/01/23(火) 00:39:34 ]
>>398
Pythonでその辺が不満

401 名前:仕様書無しさん mailto:sage [2007/01/23(火) 02:18:56 ]
>>400
Pythonは、別にセミコロン書いても問題ないし。
不満に思う理由が分からん。

402 名前:仕様書無しさん mailto:sage [2007/01/23(火) 02:49:41 ]
VB実は : が使えるのではないだろうか

403 名前:仕様書無しさん mailto:sage [2007/01/23(火) 02:56:50 ]
つけることで特殊な意味を持つ命令もあるから気を付けろ

404 名前:仕様書無しさん mailto:sage [2007/01/23(火) 09:35:57 ]
セミコンマを使えばいいのに

405 名前:仕様書無しさん mailto:sage [2007/01/23(火) 09:52:34 ]
>>393
それも .NET では
  For i As Integer = 0 to 5
と書ける。とても便利。

406 名前:仕様書無しさん mailto:sage [2007/01/23(火) 21:28:00 ]
セミコンマ の検索結果 3 件中 1 - 3 件目

407 名前:仕様書無しさん mailto:sage [2007/01/23(火) 21:38:34 ]
.NETマンセーーーーーーーーーーーーー!!!!
でもマネージドコードとかいうやつに胡散臭さを感じる

408 名前:仕様書無しさん mailto:sage [2007/01/23(火) 21:39:59 ]
セミコンマと
アホトンマは似ている



409 名前:仕様書無しさん mailto:sage [2007/01/23(火) 22:01:16 ]
アホトンマに該当するページが見つかりませんでした。

410 名前:仕様書無しさん mailto:sage [2007/01/23(火) 22:47:21 ]
アホトンマ の検索結果 3 件中 日本語 のページ 1 - 3 件目 (0.23 秒)


411 名前:仕様書無しさん [2007/01/23(火) 23:02:09 ]
マホカンタ の検索結果のうち 日本語のページ 約 43,500 件中 1 - 10 件目 (0.12 秒)

412 名前:仕様書無しさん mailto:sage [2007/01/23(火) 23:02:44 ]
セミコンマとマホカンタは似ている



413 名前:仕様書無しさん mailto:sage [2007/01/23(火) 23:08:07 ]
>>For i As Integer = 0 to 5
Asじゃまだなぁ

414 名前:仕様書無しさん mailto:sage [2007/01/23(火) 23:14:43 ]
ちなみにその i のスコープってどこになるの?

415 名前:仕様書無しさん mailto:sage [2007/01/23(火) 23:15:01 ]
話がずれるけど、Cの、
void func(int a, int b, int c);
もめんどうだな。

なんで、
void func(int a, b, c);
じゃだめなんだろ。


416 名前:仕様書無しさん mailto:sage [2007/01/23(火) 23:54:38 ]
>>415
パースするのが面倒だから。

417 名前:仕様書無しさん mailto:sage [2007/01/24(水) 00:34:07 ]
>>416
ちょっとワロタ

418 名前:仕様書無しさん mailto:sage [2007/01/24(水) 00:50:17 ]
typedef int b;
って書いてあったら2つ目どーすんだよ。



419 名前:仕様書無しさん mailto:sage [2007/01/24(水) 00:55:42 ]
>>418
意味わかんね

420 名前:仕様書無しさん mailto:sage [2007/01/24(水) 00:59:31 ]
>>418
コンパイルエラーだろ

421 名前:仕様書無しさん mailto:sage [2007/01/24(水) 01:04:01 ]
>415
関数定義なら
void func(a, b, c)
int a, b, c;
{
/* etc.etc. */
}
ってのはできるけどなぁ。まぁ、新たに書き起こすコードの関数定義を
K&Rスタイルで書く奴が職場にいたらちょっと辞めたくなるw

422 名前:仕様書無しさん mailto:sage [2007/01/24(水) 01:09:54 ]
My name is 茶イロがっPaガイコツM.





423 名前:仕様書無しさん mailto:sage [2007/01/24(水) 01:20:48 ]
つうか、スレ違いのお前らがうざい

424 名前:仕様書無しさん mailto:sage [2007/01/24(水) 19:47:52 ]
>415
Delphiって確かそんな感じに書けるんだっけ?

425 名前:仕様書無しさん mailto:sage [2007/01/24(水) 19:58:38 ]
書けるよ。
A, B, C: Integer とか。
変数の宣言も引数もおk

426 名前:仕様書無しさん mailto:sage [2007/01/24(水) 21:34:01 ]
VB.netも使える記法だろ?

427 名前:仕様書無しさん mailto:sage [2007/01/25(木) 22:58:29 ]
VBって
Dim A, B, C As Integer
ってやると A, B はバリアントになるんじゃないっけ?
それってDelphiの A, B, C: Integer とは意味が違うだろ

428 名前:仕様書無しさん mailto:sage [2007/01/26(金) 01:33:28 ]
だから .net って書いてあるだろハゲ



429 名前:仕様書無しさん mailto:sage [2007/01/28(日) 05:58:47 ]
ところで聞いてくれ。
最初は2つくらいのcaseがあるswitch文だったんだ…。

面倒だったから、そのままcaseを追加したんだ…。

またしばらくして、ちょっとcaseを追加したんだ…。

そのまたしばらく後…。


430 名前:仕様書無しさん mailto:sage [2007/01/28(日) 09:26:11 ]
>>429
あーあ。

431 名前:仕様書無しさん mailto:sage [2007/01/28(日) 13:31:13 ]
>>429
elseifが山ほど並んでいるよりずっといいじゃないか

432 名前:仕様書無しさん mailto:sage [2007/01/28(日) 13:38:26 ]
それはテライヤス

433 名前:仕様書無しさん mailto:sage [2007/01/28(日) 14:09:29 ]
>>432
でも、switch文を嫌ってif文でないと受け付けない奴が実在する。
そいつが書いたコードで1万行近いif文の塊があって、読みにくいどころか
バグってたのだけど、殺しても無罪だよね?

434 名前:仕様書無しさん mailto:sage [2007/01/28(日) 16:50:03 ]
自分のやったことが激しく犯罪であると認めさせた後にな

435 名前:仕様書無しさん mailto:sage [2007/01/28(日) 19:15:06 ]
殺したら情状酌量はされるが有罪だと思う。
しかし、実力行使ではなく訴えたら勝てる気がする。


436 名前:仕様書無しさん mailto:sage [2007/01/28(日) 19:40:06 ]
どのような違法行為であると?
いや、人として許せないのは同意なんだが

437 名前:仕様書無しさん mailto:sage [2007/01/28(日) 21:36:50 ]
>>436
業務執行妨害
不法バグ混入罪
猥褻物陳列罪

438 名前:仕様書無しさん [2007/01/28(日) 23:14:35 ]
>433
陪審制なら無罪だな。



439 名前:仕様書無しさん mailto:sage [2007/01/29(月) 01:02:48 ]
>429,431
ifやforが山脈のように連なってるよりずっといいじゃないか

440 名前:仕様書無しさん mailto:sage [2007/01/29(月) 04:10:54 ]
>ifやforが山脈のように連なってるよりずっといいじゃないか
うまいたとえだ

441 名前:仕様書無しさん mailto:sage [2007/01/29(月) 08:39:53 ]
無能なのを雇っているのが悪いと言うこともあるから業務執行妨害はちと無理が
あるが、猥褻物陳列罪については釈明の余地は無いな。


442 名前:仕様書無しさん mailto:sage [2007/01/29(月) 17:40:58 ]
>>433
1万行ww

443 名前:仕様書無しさん mailto:sage [2007/01/29(月) 19:58:13 ]
>>441
猥褻物陳列罪は成立するんだwww

変なコード書くと猥褻物陳列罪でしょっ引かれるのか。

444 名前:仕様書無しさん mailto:sage [2007/01/29(月) 20:35:40 ]
ま、1万行もあれば芸術性で争うことも無理があるっしょ?


445 名前:仕様書無しさん mailto:sage [2007/01/29(月) 21:46:54 ]
>>444
遠目で見るとAAができてんじゃね?

446 名前:仕様書無しさん mailto:sage [2007/01/30(火) 00:01:22 ]
見るのに相当な努力を要するものでも猥褻物陳列罪に問われるのか?

447 名前:仕様書無しさん mailto:sage [2007/01/30(火) 14:02:18 ]
注:このスレはフィクションです。
猥褻物を公共の場に晒すことは犯罪ですので絶対に行わないでください。

448 名前:仕様書無しさん mailto:sage [2007/01/30(火) 19:24:36 ]
VB6 抜粋

Dim strTemp As String
strTemp = "abcd"
If Right(strTemp, 1) = "ABCD" Then
  ......
End If


(;´д`) ・・・?



449 名前:仕様書無しさん mailto:sage [2007/01/30(火) 20:21:10 ]
strutsの開発で全画面で一つのActionFormを使い回してるやつで
validateメソッドの中で条件分岐しまくりなのを見たとき。
ActionFormだけで6000行くらいあった。

450 名前:仕様書無しさん mailto:sage [2007/01/30(火) 20:42:56 ]
作りが古いな、1.0か?

451 名前:仕様書無しさん mailto:sage [2007/01/30(火) 22:52:55 ]
>>448
これ何したいのか本気で分からないんだが…
何をやろうとしたらこうなるの?

452 名前:仕様書無しさん mailto:sage [2007/01/30(火) 23:27:55 ]
>>445
ICCCか?

453 名前:仕様書無しさん mailto:sage [2007/01/30(火) 23:52:39 ]
>>452
IOCCCじゃね?
O=Obfuscated


454 名前:仕様書無しさん mailto:sage [2007/01/31(水) 14:22:41 ]
>>448
予想1
大文字と小文字の文字コードが違う事を知らず、どこかで大文字と小文字の違いを認識OS

455 名前:仕様書無しさん mailto:sage [2007/01/31(水) 14:26:26 ]
大文字うとうとshift押しながら入力してEnterキー二度押ししてしまったOTZ
>>448
予想1
大文字と小文字の文字コードが違う事を知らず、どこかでOSによっては
パスワードで大文字と小文字の違いを認識しないと聞いたのを曲解した。
予想2
メモリ確保のエラーのキャッチをするつもりだった。

456 名前:仕様書無しさん mailto:sage [2007/01/31(水) 16:16:08 ]
>>454-455
right(hoge,1)はhogeの右端の一文字をとる。
左辺が1文字、右辺が4文字。
長さの違う文字列の比較は常にfalse。
大文字とか、小文字とか関係ない。

メモリが不足なら、IF文まで進まない。

457 名前:仕様書無しさん mailto:sage [2007/01/31(水) 17:28:02 ]
strTemp を "abcABCD" にしたかったとか。

458 名前:仕様書無しさん mailto:sage [2007/01/31(水) 18:44:20 ]
あまり使えない小人さんが作っただけだとオモ。



459 名前:仕様書無しさん mailto:sage [2007/01/31(水) 19:15:38 ]
short BitCheck( short a_sArg )
{
  short sDat;

  if( a_sArg&0x1000 ) {
   sDat = 0x1000;
  } else if( a_sArg&0x0800 ) {
   sDat = 0x0800;
  }else if( a_sArg&0x00400 ) {
   sDat = 0x0400;
 
   (以下略)
  } else if( a_sArg&0x0004 ) {
   sDat = 0x0004;
  } else {
   sDat &= 0x000f;
  }

  return sDat;
}

もう帰りたい。

460 名前:仕様書無しさん mailto:sage [2007/01/31(水) 19:22:28 ]
>>459
ひたすらelseifが続いてるって事?

んー、もっと短く書けそうな気がしないでもない。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<188KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef