2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

プログラマーって

1 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:00:28.401 ID:OeUU9+6Tr.net
何行ぐらいのソースならさっと読み解ける?

自分で書いたものなのに300行もあると辛くなってくるんだが

2 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:03:35.308 ID:QgxtfE0Wd.net
そこで//の出番よ

3 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:05:37.466 ID:YgZZVFfOa.net
その昔、1万で良いコード書いてたんだからそのくらいじゃないの(適当)

4 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:05:42.552 ID:uGEQs9Pt0.net
分からなくなったら一から組み直す

5 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:07:21.661 ID:OeUU9+6Tr.net
独学だからコメントの書き方もいまいちなんだよな
1ヶ月後には何言ってんだこいつってなる
名前の付け方が悪いのも分かってるんだが、中学英語すら危ういから単語が出てこない
なるべく短く汎用的にクラス・関数作って、引数でキレイに出来たらとは思ってるんだが
うまくいかんわ

6 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:07:39.016 ID:wF1HsGVyp.net
ソースじゃなくて設計書読めよ

7 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:08:39.815 ID:OeUU9+6Tr.net
>>6
オレオレスクリプトだから仕様書なんかない
書きながら仕様決めてる
フローとかもちゃんとした方がいいんだろうなぁ

8 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:09:43.984 ID:wF1HsGVyp.net
>>7
設計してないグチャグチャソースだから読めなくなるんじゃね

9 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:11:56.934 ID:OeUU9+6Tr.net
>>8
うん、それもあると思う
スクリプト言語チマチマしてるだけだから設計書ってどんなことが書いてあるのかすら知らない

10 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:12:07.482 ID:gQM0O1aRd.net
書きながら仕様決めてるとか趣味かな

11 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:12:25.449 ID:gRDIPEqK0.net
何とか思考とかデザインパターンを守ってればそんな風にはならなくね?

12 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:12:47.525 ID:YgZZVFfOa.net
ちなみに俺も聞きたいけど、設計って具体的にどうやるんだ?

13 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:13:53.000 ID:Tbtn6lCn0.net
同じ処理は全部パブリック関数にぶん投げる

14 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:15:25.137 ID:2FK3K3Xqp.net
>>12
機能を列挙して機能同士の関係や処理のタイミングや見た目について整理してどんなクラスを作ればいいか考える

15 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:16:33.597 ID:Tbtn6lCn0.net
>>12
営業か上司に従うだけ

16 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:18:33.908 ID:wF1HsGVyp.net
>>12
雑に言うと
要求されるソフトウェアを分割あるいは階層化して
どこで何をするか決めたり、分割した部品同士で
データのやり取りのやりかたを決めたりする

17 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:19:42.539 ID:YgZZVFfOa.net
>>14
オブジェクト思考でソフトウェア組むときだよね
自分は趣味グラマーだから何とも言えないけど、電話交換器システムの設計してた人から話聞いたときは、設計は2人でやったとかいうけど、そういう小さいところでやるものなのかね

18 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:21:03.778 ID:OeUU9+6Tr.net
>>10
趣味だね
ソフトがないようなもんで手作業で計算出来るのを自動化したくてやってるだけ
得たい結果は分かってるから、どう処理するかは入ってくるものを想像しながら作ってる

>>11
最近はちょっとそう出来るようにはなってきたが、お決まりパターンの経験なさすぎるせいもあるのかも

>>13
今だと当たり前じゃんだけど、本当に覚えたての頃は分岐する度に同じコード書いてたわ
しかも無駄にオリジナル要素入れるから全部見てってまとめるのにバカみたいにリソースくってた
まぁそれが経験値にもなったが

19 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:21:05.837 ID:YgZZVFfOa.net
>>15
そうなんやねぇ
でも上司の設計ってサブルーチンとかクラスのインターフェースなりin/outのみでしょ?
実装はやっぱりプログラマー次第なんかなぁ

20 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:21:41.463 ID:Tbtn6lCn0.net
>>10
ありえない
書きながらマニュアルを常に変更して行くのはある

21 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:22:58.219 ID:YgZZVFfOa.net
>>16
なるほど、階層を分ける……かぁ

22 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:24:20.317 ID:OeUU9+6Tr.net
ちなみに君たちのレベルには程遠いほどの雑魚だからね
ようやっと三項とかlambdaの書き方が雰囲気で分かってきたぐらいだから

23 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:25:03.558 ID:Al6oc54lp.net
偉い人「プログラム書け」

俺「じゃあまずは設計」

偉い人「早く手を動かして書け」

俺「設計しなきゃ後の修正が大変」

偉い人「プログラムに設計なんて無駄だ早く書け」

俺(ふえぇ……)

24 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:25:59.549 ID:wF1HsGVyp.net
>>23
どんな底辺企業だよ

25 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:29:14.598 ID:Wc/sjdo6M.net
仕様書も設計書も人に伝えるためにあるのであって
一人で理解できるのなら作らない方が効率よい
例えば刃物の職人さんは作業手順書なんか作らないし見ない

26 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:29:53.952 ID:JZPYNglt0.net
時間があるならまずそのソフトでやりたい事を簡単に纏めて、プロトタイプを作ってみたら良いと思う
雑魚趣味グラマーたけど

27 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:30:26.077 ID:Tbtn6lCn0.net
>>23
5年ぐらい経過

上司「これ」
俺「あ、はい」
上司「工数は?」
俺「1週間あれば」
上司「じゃあ2週間にしとく」
俺「うぃっす」
上司「例のどうなった」
俺「とっくに終わって、別の案件してますけど納品行きます?」
上司「ならいい」
俺「うぃーっす」

28 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:32:18.067 ID:auz7pTZB0.net
下手に抽象化したら意味不明なクソースが出来上がったでござる

29 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:35:36.217 ID:Tbtn6lCn0.net
>>28
俺「○○です、お世話になっております、え?エラーメッセージが出た?
そのエラーメッセージにはなんと出ていますか?・・・
すぐに向かいます!(クソースすんなよフォロー大変だろうが!?)」

30 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:37:08.305 ID:pF9vVrHx0.net
func1()
func2()
func3()
func4(){
func3();
func2();
}


main(){
func1;
func2;
...
}

こういうソース嫌い

31 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:37:22.829 ID:wF1HsGVyp.net
そもそもまず要件定義せな

32 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:40:48.615 ID:wF1HsGVyp.net
>>30
プロトタイプしろってこと?
関数分割に意図が見えないってこと?
どっちにしろ好き嫌い云々の前にレビューで指摘するな

33 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:41:07.488 ID:Tbtn6lCn0.net
>>30
どんなコードだよfuncしてんだからせめて変数返せよ
func2で無限ループもありえるぞ、全部抹殺

34 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:45:38.097 ID:pF9vVrHx0.net
関数化しすぎでまとめすぎてて逆に見にくいといいたい
参考書の例題でこんな感じになってるとキレそう
使い方だけのソースでいいに決まってる
明らかに中身は自分で実装したほうが早い

35 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:47:21.747 ID:pF9vVrHx0.net
マクロ化と関数化すると綺麗なソースになるけど
悪いけどやった本人しか見にくいだけだとしか思えないわ
別にライブラリ化するならいいよ?
でもね普通のソースならやればやるだけ可読性がなくなるわ

36 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:49:14.499 ID:pF9vVrHx0.net
ソースコードを理解する場合って数値を追うしかないと思うんだよ
例えばエントリポイントから入ってこの関数に飛んで
switchからのこの場合はこの関数に飛んで
その関数の中からこの関数に飛んで・・・
他の関数に飛ぶたびに増える変数と関数
アホか

37 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:51:50.146 ID:N+8VXgiXa.net
それってその関数書いた人とキミのレベルが低いだけだよ
switchで関数分岐とか関数またいで数値追うのが頻出するとか論外だよ

38 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:52:19.770 ID:pF9vVrHx0.net
自分で実装するようになるとわかると思うけど
ある一定以上の処理数になると把握できなくなるんだよ
アニメーションまで考えると間違いなくそうなる実際に動かしてみてやっていくようになるわけ
その時のソースコードなんて作ってる本人だって理解してないわけ
それを他のヤツが見て理解するなんて無理
これで動く。だけで十分。アルゴリズムさらっと見るだけで十分
完全自分のものにしたいなら自分で実装するがよろし

39 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:55:01.878 ID:ocQpgGtAp.net
関数の入力と出力の定義が曖昧だからじゃねーの
ちゃんとテストされてるなら関数の中身を追う必要もない

40 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:58:45.586 ID:pF9vVrHx0.net
完全ライブラリ的のAPIになってるなら追う必要ないのかもな
数値送れば帰ってくるみたいな

41 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 10:59:09.371 ID:pF9vVrHx0.net
いや!だめだろ。やっぱ追う必要あるわ

42 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:00:35.466 ID:+SPce4+s0.net
関数名見たら引数返り値となんお処理か分かるようにしてる

43 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:02:32.143 ID:N+8VXgiXa.net
非常に言いにくいけどキミとキミの周りにいるプログラマはレベルが結構低いんだよ…

44 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:04:06.661 ID:JZPYNglt0.net
今はコメントから自動的にリファレンス生成してくれる仕組みがあるし
それ使えば良いんじゃないの?

45 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:04:45.181 ID:gQM0O1aRd.net
IT後進国の日本はこのレベルなんだなぁと悲しくなった

46 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:05:44.119 ID:pF9vVrHx0.net
コメント多い奴も嫌いだわ
特に決まってる定番の関数にコメントつけるアホはなんなのかね

47 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:06:41.276 ID:EB7YoHU40.net
>>44
そんなのあんのか
便利だな

48 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:07:33.142 ID:+SPce4+s0.net
数値追わないと読めないソースとかリファクタリングどころか作り直しだわ

49 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:07:43.353 ID:pF9vVrHx0.net
しかも二つか三つしかないのにマクロで名前つけたがるアホ
ええですよ?ビット演算して判定しとるんなら

50 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:09:51.214 ID:554DVmVO0.net
まーた定義ごときをマクロマクロ言うお前かーwwwwwww

51 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:09:58.578 ID:R5HPErJO0.net
300行の時点でなにか間違えてる
必要だとしたらちゃんとコメント書いとく

52 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:10:21.813 ID:wF1HsGVyp.net
>>47
つdoxygen

53 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:11:35.884 ID:EB7YoHU40.net
>>52
トンクスwwww
めっちゃ助かったわwwwww

54 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:21:10.210 ID:N+8VXgiXa.net
センスないやつが底辺企業で数年働くとああいう風にこじらせちゃうのかな…恐ろしい…

55 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:32:17.590 ID:OeUU9+6Tr.net
>>51
出来ることなら短く書きたいけどな
ネストさせまくれば短くは出来るだろうけど書いてる通り設計とか何もないのよ
想定も甘いからちょくちょくエラー出すしネストしすぎると追えなくなる
書いてる時は分かるけど、長くなっても分岐を一つずつ拾うように書いた方が自分的には分かりやすい
後で読み返した時にソースだけで可読出来るようにしとくのが多分俺の中ではベストなんだ
それやってるから逐一エラーのコードが入ってきてダラダラ長くなって見るのだるーってなってるわけよ

56 :以下、\(^o^)/でVIPがお送りします:2015/10/22(木) 11:38:58.704 ID:N+8VXgiXa.net
>>55
関数の中で変数の値を変更するのは最小限にした方がいいよ数学でいう函数を意識した方が不具合でにくい
とりあえずオブジェクト指向を勉強した方がいんじゃない?

総レス数 56
14 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★