X



絶望的なソースコード、みたことある?
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@涙目です。(北海道) [US]
垢版 |
2018/06/27(水) 13:14:49.82ID:niXxiq2x0?PLT(12015)

中級者病(読み:ちゅうきゅうしゃびょう)とは、プログラミングなどを学ぶ際に、とくに中級者が陥りやすい精神疾患のことである。

概要
初級者から中級者へ昇格する時期は、ほぼどのようなソースコードでも読める程度にプログラミング言語に
精通し、また偉いプログラマーの提唱したデザインパターンも一通り理解したくらいの時期である。

すると、プログラミング言語の持つあらゆる機能と、偉いプログラマーの提唱するあらゆる技術を使わねば
ならないという思い込みが発生する。そしてHello Worldにまで崇高なオブジェクト指向や壮大なデザイン
パターンを適用しようとしだすのである。

その結果、
* 大量のクラス
* 迷路のような変数渡し
* 底なしに深いネスト

などといった凄い(ただし誰も理解できない)ものが生まれる。

また、条件分岐に多段の三項演算子を乱用するなどの症状も多く見受けられる。
最終的には第三者にとって読みにくい保守性の悪いスパゲッティコードが生成されることになる。

職業プログラマーにおいて中級者病の症状が発症すると、仕様書の作成や単体テストなどの工程を省き、
「○○日で完成させた」などと工期の短さを自慢するようになる。
さらに、そのような手抜きを前提とした見積書を作り、ライバル他社のお硬い見積書に対して
「あそこの会社ボッタクリっすねぇw」などと営業しだすことが多い。

中級者病は教育環境に依存すると言われており、とくに教育した人間が悪いと好発しやすいと言われている。
軍事や医療、金融などの世界では新入社員教育の一環として中級者病を防ぐ目的で「保守性」と「堅牢性」を第一に叩き込まれる。

なお、プログラミングしていて一番楽しい時期でもある。

http://monobook.org/wiki/%E4%B8%AD%E7%B4%9A%E8%80%85%E7%97%85
0004名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/27(水) 13:15:47.32ID:rFI0muMB0
富士通ではよくある
0005名無しさん@涙目です。(北海道) [ニダ]
垢版 |
2018/06/27(水) 13:16:46.32ID:gbCUnFIQ0
言語の構文はわずかに例外が有るにしろ、
コードをシンプルで分かりやすく書くことが出来るように 作られたもので、
バージョンが上がると追加される機能っていうのはそれを更に良くするもの。

という当たり前のことから考えると、
問題ない機能を「俺が知らないから」「馬鹿が知らないから」という
理由で禁止する行為は、コードをクソコードに仕上げることになる。

もっと最悪なのが、俺がこれ以上勉強したくないから
他の人も使うの禁止!と言い出すリーダー。
0006名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 13:17:23.96ID:muDLQhKq0
/* おまじない */
0011名無しさん@涙目です。(茸) [ニダ]
垢版 |
2018/06/27(水) 13:18:32.99ID:/B0ED6/f0
if
 if
   if
   if
    if
     if
      if
0013名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 13:18:55.57ID:muDLQhKq0
>>5
日本はコンピューターサイエンスの学位すら無い奴がプログラマでございしてるから際限なくレベル落とすことになる
0016名無しさん@涙目です。(大阪府) [ニダ]
垢版 |
2018/06/27(水) 13:19:34.39ID:32W6GuEb0
構造体名に日付が入っている

// struct Hoge_20070920{
struct Hoge_20081010{
}
0017名無しさん@涙目です。(庭) [JP]
垢版 |
2018/06/27(水) 13:20:14.85ID:N5XKWUmZ0
「AをBに代入する」とかいう訳の分からないコメントが全行に書かれてるソースコード
そんなの見りゃ分かる。なんでそうしたのかをコメントに残せよ!
0021名無しさん@涙目です。(静岡県) [US]
垢版 |
2018/06/27(水) 13:21:03.67ID:Q94ld3R00
>>4 ww
富士通の方ですか?
0023名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 13:21:38.69ID:UD0y2ArS0
空飛ぶスパゲッティモンスターコード教
0027【B:78 W:62 H:92 (A cup)】 (東京都) [ニダ]
垢版 |
2018/06/27(水) 13:22:09.50ID:TzJ6Rq/z0
ワンライナー自慢
0028名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/27(水) 13:22:18.86ID:Jv7Kqzt/0
古いシステムで言語の全くわからんのを見るとほぇ〜って感じにむしろ感心する
0029名無しさん@涙目です。(東京都) [IT]
垢版 |
2018/06/27(水) 13:22:35.33ID:cK3g8xdr0
どこにも使用していないのに削除すると誤動作を起こしてしまう謎の文字列変数
0030名無しさん@涙目です。(静岡県) [US]
垢版 |
2018/06/27(水) 13:22:42.02ID:Q94ld3R00
クラスも上手く使えば便利極まりない道具なんだけどね。
人のプログラムだと追っかけるのが面倒だよね。
0032名無しさん@涙目です。(神奈川県) [US]
垢版 |
2018/06/27(水) 13:23:02.43ID:z7gzCkpU0
>>17
0033名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 13:23:04.37ID:VA1H9jJf0
>そしてHello Worldにまで崇高なオブジェクト指向や壮大なデザイン
>パターンを適用しようとしだすのである

見てみたいw
0036名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 13:23:41.56ID:muDLQhKq0
>>16
常にメモリ番地を直接参照してれば何とかなるな
0040名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 13:24:42.74ID:KASc5Lzb0
やべ、バイナリ開いちゃったと思って
よく見たらソースコードだった
0042名無しさん@涙目です。(空) [US]
垢版 |
2018/06/27(水) 13:25:06.45ID:zKsUwUOv0
ネストはまだいい
gotoでスパゲッティーは死ぬぞ、追ってたら
0045名無しさん@涙目です。(東京都) [KR]
垢版 |
2018/06/27(水) 13:26:11.84ID:dm0dlpcX0
>>25
returnする前に一度使う分には行数減るしいいだろ。三項演算子そのものが人気ないなら、エルビス演算子なんか生まれてないよ。
指摘されてるのは、それがさらに分岐するパティーン。
0046名無しさん@涙目です。(愛媛県) [FR]
垢版 |
2018/06/27(水) 13:26:42.89ID:ZMCIO02I0
>ほぼどのようなソースコードでも読める程度にプログラミング言語に
>精通し、また偉いプログラマーの提唱したデザインパターンも一通り理解したくらいの時期

この時期に

>大量のクラス
>迷路のような変数渡し
>底なしに深いネスト

こんなことするわけない。もししてるとしたらデザインパターンも全く理解してないし
言語に精通もしてない。
0048名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/27(水) 13:27:30.41ID:6dQRInmR0
ポインタでポインタを指定
0049名無しさん@涙目です。(静岡県) [US]
垢版 |
2018/06/27(水) 13:27:34.76ID:Q94ld3R00
gotoで一気に抜ければ楽なのに、Cの初心者は意地でも goto を使わないので余計見づらくなる。
0051名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 13:28:13.22ID:z7AlSXFL0
>>11
それくらいなら単純で分かりやすいやろ
0053名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 13:29:01.64ID:muDLQhKq0
>>25
javascriptのpromise〜thenを無名関数でとか見たら発狂しそう
0055名無しさん@涙目です。(京都府) [SK]
垢版 |
2018/06/27(水) 13:29:39.23ID:nbCEm4TU0
同意過ぎてワロタ
一番楽しい時期だよな
0057名無しさん@涙目です。(岩手県) [US]
垢版 |
2018/06/27(水) 13:30:33.18ID:LSLZmvun0
五次元テーブル見た時はぶっ倒れそうになった
オレの脳みそでは三次元までしかイメージできん
0058名無しさん@涙目です。(大阪府) [ニダ]
垢版 |
2018/06/27(水) 13:30:40.73ID:32W6GuEb0
デグレ試験工数減らすために共通部処理に手を入れるのをためらい、まるまる別関数としてコピーする、をくりかえして同じようなコードがあちこちにあり収集がつかなくなってるソース
0059名無しさん@涙目です。(dion軍) [CN]
垢版 |
2018/06/27(水) 13:30:46.35ID:sZwp6XvT0
専門用語と外来語を連発して俺は頭いいを誇示するやつほどスパゲティ
0061名無しさん@涙目です。(dion軍) [ニダ]
垢版 |
2018/06/27(水) 13:32:13.25ID:iLrZW0dA0
要するに技術者の大半はこの経験あるということか
無能集団だな
0065名無しさん@涙目です。(空) [US]
垢版 |
2018/06/27(水) 13:33:04.03ID:ezHVL6E/0
職業プログラマーは意固地、というか自分の考え以外を全部クソ扱いする印象ある
あんまり相手したくないな
0067名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 13:34:43.30ID:muDLQhKq0
>>62
worldオブジェクトにメッセージ渡しするべきや
0069名無しさん@涙目です。(庭) [HK]
垢版 |
2018/06/27(水) 13:35:32.07ID:zkZ2u4lS0
俺が新人時代に書いた某チェーン店のPOSレジのソース
システムリプレイスで改修する必要があったがあまりにも酷くて
既に営業に移動になっていた俺が開発に召喚されたw
0070名無しさん@涙目です。(愛媛県) [FR]
垢版 |
2018/06/27(水) 13:35:41.52ID:ZMCIO02I0
>>50,52
ほぼどのようなソースコードも読めて
デザインパターンも「理解」してるんだぞ。

それでそんなコード書くわけないだろ。もしそんなコード書いてるなら上でいったように
精通してないしデザインパターン理解もしてないわ。
0071名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/27(水) 13:35:46.66ID:04EwU/zl0
>>5
新規の開発なら確かにクソリーダー
既存の改修なら、既存部分の置換や再テストをスコープ外にするためにそういう設定することはある
0073名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 13:36:15.13ID:muDLQhKq0
>>50
まあド素人がstatic扱うのは危険極まりないないからな
逆に大規模システムでstatic適切に使えて無いのは性能のことを何も考えてない証
0075名無しさん@涙目です。(新潟県) [BR]
垢版 |
2018/06/27(水) 13:36:16.24ID:/Yvrg6yI0
俺の目の前の画面に毎日表示されてる
0077名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 13:36:31.91ID:ERuJFuwj0
変数名関数名を
dotoとかgogoとか
全部dtgoの組み合わせに置換してから引き継ごう
0079名無しさん@涙目です。(茸) [ニダ]
垢版 |
2018/06/27(水) 13:39:00.07ID:4HOKcTjw0
>>25
書き方による
a=(b<5)?(b-2)
:(b+32)

のようにif文のように分かりやすく書く
必ず()で囲む(演算優先がおかしいため)
長くなりそうだったら諦める

うまく使うと鬼のようなif文の連続から逃げられる
0080名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 13:39:43.32ID:3DXEKnnT0
このスレ、なんか悲しい空気が流れてる
0083名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 13:41:37.31ID:ERuJFuwj0
チューリングマシン用加算プログラム書いたことないやつは他人のコードにとやかく言う資格ないと思う
お前は「書ける」だけ。「設計」はできないんだ
0088名無しさん@涙目です。(庭) [HK]
垢版 |
2018/06/27(水) 13:45:20.29ID:zkZ2u4lS0
>>83
自称プログラマの殆どはコーダーだから
0091名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 13:46:21.66ID:XhgWuizC0
wordpressのソースコードとか絶望的だと思うぞ個人的には
0097名無しさん@涙目です。(庭) [KR]
垢版 |
2018/06/27(水) 13:52:26.69ID:rNNpRiaL0
>>8
あるある
0101名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 13:54:55.43ID:hvqICMBS0
>>8
Cでよくあった
メモリ管理できてないのがげんいんってのが多い
0102名無しさん@涙目です。(大阪府) [JP]
垢版 |
2018/06/27(水) 13:55:41.55ID:BBY/3McS0
同じスコープ内で大文字小文字だけが違う同じ名前の変数が複数あってそれぞれ別の使われ方をしている。
エディタ殺しだなあ。
0103名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 13:56:28.22ID:XhgWuizC0
>>102
一応それ規約あるんだよな…
あるよな?
0105名無しさん@涙目です。(空) [ニダ]
垢版 |
2018/06/27(水) 13:57:16.85ID:aTbZ/CR80
10年前の俺のコード
0106名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 13:57:17.22ID:hvqICMBS0
条件式の中に条件式書く奴いてめんどかった
デバッグ効率も考えて書け
0107名無しさん@涙目です。(catv?) [IN]
垢版 |
2018/06/27(水) 13:57:28.07ID:4b4GQLA50
ジェイク・ギレンホールの映画
0108名無しさん@涙目です。(SB-iPhone) [US]
垢版 |
2018/06/27(水) 13:58:34.17ID:L3Y+1bBI0
ほんと読みづらいコード書く奴氏ねって思うわ
0109名無しさん@涙目です。(禿) [ニダ]
垢版 |
2018/06/27(水) 13:59:02.39ID:ysv6wygL0
>>17
逆にコメントを書くとそのメンテに工数取られるから書くなっつうレビュアーがいたな
改行空行も無駄だから省きました!レビューお願いします!ってかましたら音をあげたがw
0111名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/27(水) 13:59:46.45ID:04EwU/zl0
レガシーになりそうなシステムでは、残すべきドキュメントは仕様書じゃなくて議事録なんだよなあ
仕様なんかはソース読めば起こせるけど、なんでそんな仕様になってるかはわからんからなあ
議事録残ってると、当時の誰の判断でなんでこんな仕様になってるかわかって助かる
元号対応してないシステムとかも、予算なくて後回しとか議事録にあるだけで助かるわ
0113名無しさん@涙目です。(神奈川県) [DK]
垢版 |
2018/06/27(水) 14:00:28.02ID:PHB84Onp0
10Mの.cppファイルに関数が3つ
内一つはmain()
ていうか全体の99%がmain()
goto文で飛ぶ先は三重ループの中
_sleep(100); //消すと動かなくなる!
0114名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/06/27(水) 14:01:43.65ID:4luo++NB0
>迷路のような変数渡し

これってどういうこと?
0115名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:01:49.53ID:XhgWuizC0
>>104
汚い(スコープが広い)なりに、一応思想的に統一はされてるんだけどね
あれのメリットは、globalに各種apiクラスのインスタンスが載ってるって安心感
デメリットは、globalが超汚染されてるって絶望感

まぁプラグインとかです組む時は、おもいっきりモダンな構成にすれば溜飲は下げられるw
0117名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 14:02:45.09ID:muDLQhKq0
>>113
組み込み屋が作ったな
0119名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 14:03:46.81ID:hvqICMBS0
関数やクラス、メソッド、変数名が適当なのも困る
aaa
bbb
とか手抜きすぎだろ
0120名無しさん@涙目です。(新疆ウイグル自治区) [US]
垢版 |
2018/06/27(水) 14:03:50.22ID:DcCxKRfh0
ドブス嫁ほったらかして地元テニサーで知り合った中学校の女性教師の愛人と浮気ハメハメ交尾
してる田舎零細の中卒エテ公社長も、絶望的な知能の低さですね
0121名無しさん@涙目です。(滋賀県) [TT]
垢版 |
2018/06/27(水) 14:04:24.69ID:BhFRkAJU0
デザインパターン入門読み始めは要観察期間
0122名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:04:38.10ID:XhgWuizC0
>>116
大文字小文字だけじゃなく表記も揺れてんのかよw
がんばれとしかいえねぇ…
0128名無しさん@涙目です。(東京都) [JP]
垢版 |
2018/06/27(水) 14:06:44.28ID:7CMKbUfR0
// とりあえず
0129名無しさん@涙目です。(滋賀県) [TT]
垢版 |
2018/06/27(水) 14:06:55.25ID:BhFRkAJU0
>>125
日本のソフト業界の現状しって転職する人が多いですからねぇ(´・ω・`)私もメーカーやめて個人塾やってます
0130名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 14:09:42.59ID:ERuJFuwj0
 
意味不明な大量のコメントアウト
0132名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:11:46.46ID:XhgWuizC0
>>130
gitとかsvnで管理してんのに
// 2018-xx-yy del start
//
//
// 2018-xx-yy del end
とかな
0133名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:12:16.26ID:XhgWuizC0
>>131
鯖名が惑星とか北欧神話はありがち
0134名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 14:12:18.76ID:ERuJFuwj0
 
なんでネットワーク層の仕事AP内でやらしてんの?
0135名無しさん@涙目です。(SB-iPhone) [ニダ]
垢版 |
2018/06/27(水) 14:12:34.30ID:pN1svhf30
//おまじない
0136名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:12:52.03ID:XhgWuizC0
// ここには来ないはず
0138名無しさん@涙目です。(茸) [TW]
垢版 |
2018/06/27(水) 14:13:36.15ID:k0LRx8H70
俺が頑張って書いたやつをそう言われたことならある
0139名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:15:15.08ID:XhgWuizC0
>>137
まぁ大概コミットコミットは「◯◯システム改修対応」で終わりとかだったりするな

そして、コード無いでバージョン管理させるタイプのPJは、看板コメントに改版履歴残すのが鉄板

めんどくせぇったらないわ
0143名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:17:45.13ID:XhgWuizC0
>>141
俺この書き方結構好きなんだけどな(´・ω・`)
0144名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/27(水) 14:18:35.93ID:xWcqdgHk0
>>30
>人のプログラムだと追っかけるのが面倒だよね。

クラスは要件に対してその人がどのような世界観を持っているかを現してるからな。
感動する時もある。
クラスは楽器とか鉛筆やな。センスというか、深い人間に描かせたら芸術になるな。
尤も、大規模なシステムではそういうのは無いけど。
定数クラス、ビジネスロジッククラス、デービークラス、画面クラスとかそんなん。
そっからオリジナルの派生クラスを作っても俺だけ目立つしな。
だいいち、そのオリジナルクラスの名前付けルールが無いから作れんしな。
0146名無しさん@涙目です。(catv?) [KR]
垢版 |
2018/06/27(水) 14:20:26.02ID:MJBsWwi00
1円足りないからとりあえず今月だけ1円足しとく。ってのが4つくらい並んでるんだけど?
0147名無しさん@涙目です。(香川県) [KR]
垢版 |
2018/06/27(水) 14:20:43.18ID:DG6HvAhn0
INC 1,XHL
INC 1,A
DEC 1,XBC
OR XBC,XBC
J NZ,RCVCH0
IRET

変えておいてやったぞ>>118
0148名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/06/27(水) 14:21:03.79ID:flhGLzze0
10 DEFINT A-Z
20 PRINT"お好きな飲み物をどうぞ。"
30 INPUT"1.お茶 2.コーヒー 3.ビール 4.高原の岩清水&レモン";A
40 IF A<1 OR A>4 GOTO 30
50 FOR I=0 TO 3
60 IF A=0 THEN PRINT MID$("それで?だから?ふうん。あっそ。",1+I*4,4):END
70 A=A-1
80 NEXT
0149名無しさん@涙目です。(チベット自治区) [ニダ]
垢版 |
2018/06/27(水) 14:21:36.90ID:RVB1mNh60
>>141
ちょっとした判定ならそれの方が行数少なくて見やすい
改行とインデントだらけでどうでもいいコメントが大量にあるコードは見ててうんざりする
横幅の広いディスプレイで書かれたコードを小さいディスプレイで見たときもうんざりする
0150名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 14:22:42.68ID:hvqICMBS0
>>143
一般受けしないから仕事ではやめとけ
0151名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:24:24.59ID:XhgWuizC0
>>150
まぁ規約で禁止されてる場合が多いな
趣味で組む時は使うが仕事で禁止されてる場合は流石にやらんわ
0152名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/27(水) 14:28:08.66ID:xWcqdgHk0
年数と共に仕様変更が入りまくって
変更前のソースはコメントにして残すから
膨大なコメントアウトした過去ソースの合間に本ソースがチラホラあって
それがさらにif文ネストの中の奴とかで、コメントアウトしました仕様変更番号もネストしててスクロール何度も上下して
うわーー!結局何してんのか今自分が何処に居るのかすら全く分からんとかはあるな。
0154名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 14:30:26.57ID:muDLQhKq0
>>150
メジャーなオープンソースプロダクツのコードでは普通に見る書き方やけどな
0156名無しさん@涙目です。(大阪府) [KR]
垢版 |
2018/06/27(水) 14:31:15.39ID:Djv1axMW0
>>125
効率より村社会
ビジネスより村社会
法律より村社会

それが日本
ザ・ニッポン
0158名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/27(水) 14:32:52.73ID:St83LSVf0
c→javaとやってきて
pythonはなんか気持ち悪く感じる
0159名無しさん@涙目です。(やわらか銀行) [HK]
垢版 |
2018/06/27(水) 14:33:36.16ID:BK5u7raU0
何十画面もあるのに1画面1exeになったやつがソフトハウスから上がってきてビビった思い出

画面間のデータの受け渡しはiniファイル
0161名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/27(水) 14:34:41.75ID:xWcqdgHk0
>>151
画面に沢山チェックボックスがあって、
ロードする際にデービーの値を元にとかで全部に設定していく時とかに使わん?
あれをifでやると超絶長くなる時とか。

内容によってデータの運命が変わる際どい判定処理とかにそれ使うと読み間違えるリスクがあるからちゃんと書くけど。
If flg =true then
って、=trueまで入れて書くわ。
0162名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:34:59.64ID:XhgWuizC0
>>159
VB由来の設計思想引きずったシステムだとよくあるよなそれ
0163名無しさん@涙目です。(東京都) [IN]
垢版 |
2018/06/27(水) 14:35:19.81ID:HTq9VLQ90
昔は2ちゃんねるに怪しいコードが書き込まれてて
ノートン先生(笑)がバンバン反応した
0167名無しさん@涙目です。(神奈川県) [DK]
垢版 |
2018/06/27(水) 14:38:40.80ID:PHB84Onp0
>>159
俺も見たことあるな
データの受け渡しはソケット通信だった
何でこんなことにって聞いたらパフォーマンス改善の為とか説明されたけど逆に落ちるよね
0168名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:38:40.76ID:XhgWuizC0
>>161
代入から計算まで済ませられるから便利だな
方法論としては好きだぞ?

ただ、規約に反してまでやろうとは思わん
キックスタート時にそんな規約上がってきたら本気で説得に走って訂正させるけどねw


てかそれ絡みは、いつも書き方迷うわ
何回Maybeモナド欲しいと思った事か
0169名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 14:39:29.53ID:jBfUQcGD0
可読性の高いプログラムを組めるようになるのが、中級者だろ
0170名無しさん@涙目です。(空) [US]
垢版 |
2018/06/27(水) 14:39:31.51ID:KXKcrFeV0
>>161
flg != false じゃないと気持ち悪い
0171名無しさん@涙目です。(東京都) [VN]
垢版 |
2018/06/27(水) 14:39:42.82ID:UCqNlq4o0
コメントに「これこれこーいう仕様だったけど急に変更になって
あーだこーだしてるよ&日付
でもまた仕様元に戻ったけど、ほにゃららの部分だけ変更のまま&日付」

みたいな自分で書いたコメントで、「あーー、なるほど!そういうことか!!
ありがとう1年前の俺!!」

ってことよくあるよね?(´・ω・`)
0172名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:41:03.65ID:XhgWuizC0
>>166
画面構成複雑じゃないシステムだとすごく楽なんだよ単純だし

ある意味アリだとは思うよ
ちなみに、AdobeAirとかFlexでも似たような構成にする時がある。
(最近flexとかairの案件無いな)
0174名無しさん@涙目です。(玉音放送) [FI]
垢版 |
2018/06/27(水) 14:42:56.40ID:BnLptYQ60
三項演算子読めないヤツは猿
三項演算子で可読性下がるとか言ってるヤツは池沼
0176名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/27(水) 14:43:34.41ID:xWcqdgHk0
>>168
プロジェクト人数よな。
毎日朝に同期取ったら全国各地から最新ソースが降ってくるようなデカいプロジェクトやったらあり得んもんな。
腕の立つ人間数人だけで大き目のシステム組む時は規約が緩くて楽しい。
お互いのソースが読めるしメンテ出来るし。
0177名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 14:44:14.71ID:o84K7cAt0
あれ、三項演算子みんな嫌いなの?

数値代入くらいならifelseより簡潔でいいと思うんだけど
0181名無しさん@涙目です。(広島県) [LT]
垢版 |
2018/06/27(水) 14:46:31.00ID:OLmHIPJB0
あるある
ルーターのプログラム解析してくれって渡されたんだけど、とにかく見たことがない
奇抜な書き方のソースだったもんで、誰が作ったか聞いてみたら、中国人だと

なんと言うか「動けばいい」ほんと、これを具現化したソースだった
中国下請けにコーディング任せて大損失くらった話よく聞いたけど、なるほどと思った
0183名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:47:03.93ID:XhgWuizC0
>>176
プロジェクトは3-5人程度が一番気楽でいいよな
いい金にはならないけど…

大規模な奴はそもそもガッチガチだからねぇ規約とか
と思ってた時期が俺にもあったけど、割りと自由気ままな大規模pjってのもそれなりにあるんだよなw
0184名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 14:47:10.79ID:o84K7cAt0
>>170
静的解析ツールだとtrueとの比較は怒られちゃうね
でも人間的にはこっちの方が理解しやすいんだもの
0185名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 14:47:29.59ID:bZjgICrM0
数日前に15年くらい前の自作ツールのExcel VBAコードを見た
あちこちのモジュールのパブリック変数にあちこちのモジュールから設定してた
設計が滅茶苦茶で笑ったわ。まさにスパゲッティ

そしてモジュール名が"MzrKk"とか"MzrKs"とか理解不能な変数名てんこ盛り…
わけわからなくて眩暈がしたわ

これでも当時は大真面目にスパゲッティにならないように気を付けて組んでた
いつか当時を懐かしみながらリファクタリングしてみようと思う
0187名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 14:50:14.93ID:bZjgICrM0
>>177
俺は好きだよ。さすがに三項演算子を入れ子にするのはやめたが
0189名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 14:51:59.81ID:D7URRKnk0
開発が遅れ気味になり中国にオフショア部隊がいる会社に一部発注したら、コメントで「がんばつてください」と書いてあってちょっと笑ってが、思い切りバグだらけで結果開発遅延。
0190名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 14:52:39.93ID:o84K7cAt0
// 暫定

いつ取れますか?
0191名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 14:53:19.19ID:ERuJFuwj0
>>173
それを仕様書と言う
0193名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 14:55:33.56ID:o84K7cAt0
>>191
だれが読んでも同じコードが作られる仕様書にしろ!なんて言う人いるよね

それなら最初からコード書いた方が速いという
0194名無しさん@涙目です。(catv?) [CA]
垢版 |
2018/06/27(水) 14:57:23.84ID:WD1hT2sk0
三項演算子自体を叩いてる奴はプログラミング向いてないぞ
「多段の三項演算子を乱用」は読みづらいから良くないけど
0195名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 14:57:56.10ID:bZjgICrM0
>>188
1行目から9行目までのコードを10行目以降に
列が合うようにスペースを入れて調整すれば完璧
0198名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 14:59:56.45ID:XhgWuizC0
三項演算嫌いな人はラムダ式とかどう捉えてるんだろうか
0199名無しさん@涙目です。(やわらか銀行) [CZ]
垢版 |
2018/06/27(水) 15:00:27.17ID:yeZ6+TEn0
>>177
分岐1つだけで代入値が変わるだけならアリ
コピペで多用されると厄介だしプロジェクトで禁止しちゃうのも分からんではないけど
0202名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 15:01:56.15ID:bZjgICrM0
>>197
俺はJavaでは上のpiyo、C#では下のbarにしてる
0203名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 15:02:37.66ID:XhgWuizC0
>>202
hoge「俺たちを」
fuga「除け者にするなよ…」
0206名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 15:05:35.09ID:bZjgICrM0
>>203
>>197に言ってくれ
ちなみに俺はhoge huga派な
0207名無しさん@涙目です。(東京都) [VN]
垢版 |
2018/06/27(水) 15:06:05.85ID:UCqNlq4o0
プログラマの全員が全員、頭がいいわけでないから、知能の低い方に
合わせて小難しい書き方はやめて単純な書式に統一するのはアリなのかも。
どんな書き方したって、最終的にバグらず仕様どおりちゃんと動いてメンテ
やりやすければいいんだしね。
Go言語がそんな思想でおもろかった
0208名無しさん@涙目です。(庭) [JP]
垢版 |
2018/06/27(水) 15:06:47.25ID:lpU3MAU80
外注のソフト屋は絶対に個人のところは使わない。
多少高くてもスタッフが多数いる会社を選ぶわ。
0209名無しさん@涙目です。(空) [US]
垢版 |
2018/06/27(水) 15:07:28.78ID:KXKcrFeV0
>>200
条件は()で括って欲しい
0210名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 15:10:35.74ID:muDLQhKq0
>>205
Webはテキストフォーム入力の世界だからPHPが正しいわ
0211名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/27(水) 15:11:09.25ID:Me74pEOc0
コメントの罠、変数名の罠、上げたらきりがないよね。
tmpという変数があったから一時用なのかと思ってたら、よく見たらtmplでテンプレだったりして混乱した覚えがあるわ。
0212名無しさん@涙目です。(茸) [FR]
垢版 |
2018/06/27(水) 15:11:26.12ID:XIPEFsfn0
新宿古着屋の自爆コードでしょうねダイバクショウ
いつでもスイッチオーんダイバクショウ
0214名無しさん@涙目です。(三重県) [CN]
垢版 |
2018/06/27(水) 15:13:20.89ID:n26FqbZV0
左詰めびっしりのコード
タブ、段落なし
0217名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 15:18:53.42ID:muDLQhKq0
お前らもっとすごく絶望的なコードの話してくれよ
これっぽっちじゃ夜に一人でトイレ行けちゃうよ
0218名無しさん@涙目です。(空) [US]
垢版 |
2018/06/27(水) 15:18:55.00ID:UId7b3wI0
git使ってるといま自分がどこのブランチにいるのかわからなくなるのは俺がおっさんだからなのか
0219名無しさん@涙目です。(東京都) [DE]
垢版 |
2018/06/27(水) 15:19:30.10ID:PT4hFbuk0
>>46
え・・・精通してないの・・・?
そ、そっか・・・仕方無いなぁ、お姉さんが言語に精通させてあげる
0220名無しさん@涙目です。(家) [CN]
垢版 |
2018/06/27(水) 15:19:34.27ID:g++n1wb40
MR. ROBOT
0221名無しさん@涙目です。(茸) [ID]
垢版 |
2018/06/27(水) 15:20:39.20ID:MZa83LvQ0
散々こねくり回して結局使われない変数
0222名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 15:21:46.89ID:muDLQhKq0
>>218
そんなんじゃあバックマージとコンフリクト起きまくってそうだな
0223名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 15:22:00.20ID:XhgWuizC0
>>218
大丈夫
pushしようとして蹴られたらそれがmasterブランチだから
深く考えるな気楽に行こうw

ってか俺もよく迷子になるわ
0224名無しさん@涙目です。(家) [GB]
垢版 |
2018/06/27(水) 15:22:57.88ID:60UYIu5h0
if
 if
  if
   if
    30行くらい(縦一画面におさまらないくらい)のコード ← これ
   else
    1・2行くらいのコード
   endif
  else
   1・2行くらいのコード
  endif
 else
  1・2行くらいのコード
 endif
eles
 1・2行くらいのコード
endif
0225名無しさん@涙目です。(茸) [SI]
垢版 |
2018/06/27(水) 15:23:13.88ID:+tnNXbPj0
>>17
昔の銀行のシステムだと、まず日本語で全部コメント書いてレビューして、
OKが出るとはじめてプログラムに取り掛かるとか。
0226名無しさん@涙目です。(茸) [HR]
垢版 |
2018/06/27(水) 15:24:36.28ID:abK1PVDm0
>>94
これ
0230名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 15:40:41.60ID:hvqICMBS0
VBAをクラスで実装したら、VBAできます!って人がわけわからんと言ってきたことはある
0231名無しさん@涙目です。(空) [ニダ]
垢版 |
2018/06/27(水) 15:41:23.71ID:OjDcau6j0
アップデートありきのオンラインゲーム(ソシャゲ含む)全般だな。
2年くらいやって安定してきたから色々直したいけどスパゲティコードすぎて直せないという
開発スタッフのコメントはよく見る
0233名無しさん@涙目です。(やわらか銀行) [CZ]
垢版 |
2018/06/27(水) 15:43:56.07ID:yeZ6+TEn0
>>225
現場にコンパイラがあまり無い、あるいは時間がかかる時代の文化だね
開発端末も無いとまずコードを紙に書くところから始まるらしい
0234名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 15:48:48.55ID:hvqICMBS0
DBのカラムがtmp1,tmp2・・・tmp10ってあって仕様書には予備としか書いてない
10年の間に改変に改変加えたシステムで古参の作成者なし
って状態で全ソースを見て一週間で解析したらお客様にめちゃくちゃ信頼されるようになった
ソースコメントでもいいから予備カラム使うときは用途残そう
0235名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 15:49:11.81ID:5Xr0OIUY0
クラスも関数も一長一短、ちゃんと整理されててルールがないと読んでて辛いよな。
0236名無しさん@涙目です。(庭) [KR]
垢版 |
2018/06/27(水) 15:52:19.92ID:3mYyv8uE0
お前ら日本語話してくれよ
0238名無しさん@涙目です。(和歌山県) [AU]
垢版 |
2018/06/27(水) 16:01:34.96ID:dmjos8pe0
最近Swiftのせいで行末のセミコロンが打てなくなった;
0239名無しさん@涙目です。(茸) [CN]
垢版 |
2018/06/27(水) 16:02:45.36ID:3f7GCGTJ0
EXCELVBAくらいしか使えない事務マンだけどEXCELVBAのクラスについて説明してるページの少なさ

構造体すらそんなに説明してくれてない
0241名無しさん@涙目です。(茸) [ニダ]
垢版 |
2018/06/27(水) 16:06:43.38ID:otoZJSFQ0
>>6
クソワロ
0243名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 16:12:19.49ID:okyTFXSk0
コードを書き始めて最初に学ぶべきなのは、一年後に自分が見て分かるようにコメントを残しておく事の大切さだ
そして一年後に、自分が見て分かるようなコメントを残しておく事が重要だと分かるんだ
0244名無しさん@涙目です。(禿) [CO]
垢版 |
2018/06/27(水) 16:12:29.19ID:s49LztWW0
開発プロセスさえ遵守すれば低脳でもまともなコードが書けると思ってる上司を何とかしたい
0245名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 16:15:43.31ID:aAe3vBnx0
>>236
プログラムは仕様書はあるけど、プロダクト(ソフト、スマホのアイコンごとの単位)の
内部設計資料は存在しないものが殆ど。だから、プログラムを作る人はプログラムの
中にその内容を記録しておくことが「慣例」になっている。その「慣例」が通じてれば、
次の担当者も前の人が作ったお約束の中で作業ができるし、お客さんも前版と同じ
ルールで作られているんだな、と安心できる。

例えば、お金の計算のプログラムで、「足し算」と書いてある処理があるからバージョン
2の足し算処理でもそれを引継ぎで使ってみた。けど、動かしてみると不思議と数字が合わない。
調べてみると、足し算した後に勝手に端数をなくす処理が入っていた。

そういうプログラムが必要なときは、普通プログラマは処理の名前を「端数切捨て足し算」
とする。もしくは、「足し算」と書いてあるところに(この足し算は端数を切り捨てますので注意)
と書いておくことが慣例になっている。
0246名無しさん@涙目です。(東日本) [CN]
垢版 |
2018/06/27(水) 16:16:15.80ID:lFa4hnvJ0
>>243
時間が経った後に見たらコメント自体の意味がわからず逆にコードを見直して理解する
なんてことも結構あるよなあ
0247名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 16:16:17.95ID:hvqICMBS0
ソフトは1日あればできると思ってるハード出身の顧客を消し去りたい
0248名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 16:28:45.90ID:eMC6MNZ70
>245
お前の中のオレオレ慣例なんてよそじゃ通用しねーよ
わけわかんねーこと言ってないで転職して介護とかでもしててね
0249名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/27(水) 16:32:21.69ID:dcAom3800
>>117
組み込み屋だってそんな造りはしないよ
gotoだって制御時間的によっぽどシビアなコーディング求められる状況でないと可読性悪くするだけだから使わん
0250名無しさん@涙目です。(SB-iPhone) [FR]
垢版 |
2018/06/27(水) 16:32:47.44ID:X7SABc1Y0
//次の選挙で野党全滅//
0251名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 16:35:57.44ID:jBfUQcGD0
>>188
それエラーコードの固定値は規則性ないの?
あればオフセット値と条件で確認してる変数の値で、一行に出来ないの?
0252名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 16:37:46.48ID:jBfUQcGD0
>>224
それならgotoを使って条件ネストを一つにするかな。
0253名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/27(水) 16:38:05.83ID:dcAom3800
>>251
規則性なくても配列におこしたいな…
0255名無しさん@涙目です。(catv?) [HU]
垢版 |
2018/06/27(水) 16:39:43.45ID:ME/zcHOm0
x = y;
x = y; // 不安だからもう一回
0256名無しさん@涙目です。(dion軍) [CA]
垢版 |
2018/06/27(水) 16:39:47.69ID:rj3Kd8O40
>>188
発作的にリファクタリング掛けたい衝動に駆られるけど右の定数に規則性があるとは限らないのが嫌らしい
でもそこに規則性がなかったらそれはそれでクソだわ
0257名無しさん@涙目です。(京都府) [KR]
垢版 |
2018/06/27(水) 16:40:58.59ID:VbrBseWL0
おい、やめろ
0259名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 16:46:01.93ID:jBfUQcGD0
>>253
そうね。
配列に値をセットするだけの関数を作って、その中に延々と記述だったらわかるわ。
0263名無しさん@涙目です。(東京都) [SE]
垢版 |
2018/06/27(水) 16:52:10.25ID:6jLmiHQf0
ユーザからの言葉をそのままコードにしたIF文を見た時、めまいを起こした

IF の後 AND 、OR、NOT が無数に並び、その下に 同じような IF文が続いてるのを見た時
これは、保守できんと、時期を見てプログラムの廃棄を了解してもらった
0264名無しさん@涙目です。(禿) [ニダ]
垢版 |
2018/06/27(水) 16:52:15.42ID:wz8Gn5Mv0
平均年収
アメリカのエンジニア 1200万円
日本のエンジニア 420万円
0265名無しさん@涙目です。(dion軍) [CA]
垢版 |
2018/06/27(水) 16:56:04.74ID:rj3Kd8O40
>>52
わかるわかる。俺もそうだった(黒歴史)
深いネストは避けるけどグローバル変数を異常に忌避する事と
ついでに命名規則に異常に拘るせいで他のデータにアクセスする文法が滅茶苦茶長ったらしくなるんだよね
0267名無しさん@涙目です。(新疆ウイグル自治区) [CN]
垢版 |
2018/06/27(水) 16:59:16.34ID:OQgxl/EW0
最悪だったのは一文で数千行のSQLの修正をいくつもやったときだわ
プログラム知らないやつが唯一知ってるSQLで
無理やりなんとかやろうとしてバグだらけにしたとこに投入された
0269名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 17:01:50.43ID:muDLQhKq0
>>249
mainに集約させるのはメモリ常時使用量明確化のため
スリープはデバイス操作のため
gotoはアドレスジャンプの可視化のため
と解釈したわ
0273名無しさん@涙目です。(庭) [ニダ]
垢版 |
2018/06/27(水) 17:08:16.56ID:5Xr0OIUY0
>>188
これはなかなかwww
0276名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 17:18:31.33ID:P5SX6YM40
>>263
やりたい事しか言わないユーザーを信用するから間違いが起こる
言外に有る例外を言わない、教えないバカユーザーに当たるとシステムが障害だらけ
0277名無しさん@涙目です。(大阪府) [RO]
垢版 |
2018/06/27(水) 17:21:48.43ID:JRPRp7ny0
>>188
違う会社、違う時代に作られた2つの独立したモジュールのエラーコード変換処理あるあるだな。
もし右の定数の値に規則性があってもその規則を使うのは危険(いつ値が変更されるか分からん)なので、俺ならLUT作ってiLine添字にして一発変換だな。そのほうが処理も速いし。
0280名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 17:27:17.84ID:wztqC+wX0
既に会社を辞めてしまった達人が書いたPerlのコード。

コメントアウトがなく、省略しすぎで何が書いてある分からないからブラックボックスに・・・
0282名無しさん@涙目です。(大阪府) [RO]
垢版 |
2018/06/27(水) 17:32:34.26ID:JRPRp7ny0
俺の経験で一番驚愕したのは、そこそこデカい在庫管理システムの心臓部分がPrologで記述されているのを見たときには感心した。
しかも超簡潔で芸術的だった。
0283名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 17:38:56.68ID:oor1EmrC0
文系の人間がプログラマーになっちゃダメだよ
何でも力技でプログラミングするからスマートじゃない
0285名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/27(水) 17:47:26.38ID:t0x1r9cY0
自分以外の人が面倒を見るかもしれないという思いやりがあればいいが、心をすり減らした人がどうせ俺しか見ないんだろって作ったやつはえらいことになってる。
0290名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 17:56:28.73ID:XhgWuizC0
>>287
// Nothing To Do...
0291名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/06/27(水) 17:59:17.52ID:pzY3SjhO0
シンメトリックなアリジゴクコード書いた時には高級言語要らんわと思った(´・ω・`)
0292名無しさん@涙目です。(庭) [RU]
垢版 |
2018/06/27(水) 18:02:29.04ID:6bV/qtWD0
// おまじない
0295名無しさん@涙目です。(庭) [KR]
垢版 |
2018/06/27(水) 18:13:32.21ID:sLbIKdEo0
まったくの素人だけどソースコードというより
ツールを上手に使おうって話題にならないのかな?
作っても検証が必要な訳だし人の能力には限界があるし
0298名無しさん@涙目です。(庭) [SE]
垢版 |
2018/06/27(水) 18:21:49.55ID:XhgWuizC0
>>295
モダン(て言葉は好きじゃないけど)な開発環境ではツール使いまくってるよ。
よりよくはなってきてるけど、結局最後は人が頼りなんだわ。

あとは、古い既存資産直したりする場合はそのお作法に則らないと逆に保守性悪くなったりとかあるんだよ。
ここが絶望的って事がままある

んじゃ直せばいいじゃんて話ななると思うけど、当然だが直しには必ずテストがセットでついて回る。
直すのは簡単だけどテストにはお金かかるし、ここの金出せないor出したくないディベロッパーも多いんだよ。

結果、古いものは古いまま残る事になる
0299名無しさん@涙目です。(空) [GB]
垢版 |
2018/06/27(水) 18:25:49.62ID:pxnkFyVM0
>>11
ネストしてくれるだけマシ
0301名無しさん@涙目です。(庭) [CA]
垢版 |
2018/06/27(水) 18:31:23.21ID:t0XFA6Nm0
>>188
配列に定数を格納すればよいのでは……?
0302名無しさん@涙目です。(SB-iPhone) [US]
垢版 |
2018/06/27(水) 18:33:19.10ID:x15sMaNm0
>>2
コレ
0304名無しさん@涙目です。(愛知県) [US]
垢版 |
2018/06/27(水) 18:39:24.36ID:sS9Rt2dm0
俺「うわあああ何だこれ何やろうとしてんだこれ誰だよこれ俺だよ死ねよ」

俺「コメントあったやったあああ!グッジョブ過去の俺!」

俺「死ねよ俺」
0305名無しさん@涙目です。(新疆ウイグル自治区) [FR]
垢版 |
2018/06/27(水) 18:39:33.33ID:0klGvRNN0
M80でマクロ使いすぎで別言語になってるやつ
0307名無しさん@涙目です。(東日本) [US]
垢版 |
2018/06/27(水) 18:43:18.62ID:gRh7pyPo0
文系コードは追えば分かるからいいんだよ
プログラマ適性の高い専門卒が書いたようなコードが一番キツい
決め打ちでしか組まれてないから仕様変更で全部迂回して新しいクラス作ることになる
0315名無しさん@涙目です。(埼玉県) [US]
垢版 |
2018/06/27(水) 19:03:14.79ID:jwOwiYiU0
業種によるんだろ。

特定ハードウェア・デバイス対応な世界と、勘定系などの汎用プロジェクトの常識とではまったく世界が違う。
効率重視のデバイス向けや科学計算ではなく、本来保守性を重んじたはずの勘定・汎用系などのほうが
デザインパターンなどに惑わされる。
低レベルを知らないからだろうがな。

> * 大量のクラス
> * 迷路のような変数渡し
> * 底なしに深いネスト

まあ、こんなのは習ったことをやろうとして本質を見失っているだけだろうが、
三項演算子は、むしろこういう症状の人が最も嫌がるものじゃないの?
その辺がよく解らんな。

まあ、例えば大工でも2X4工法とかやってるのと、宮大工と、超高層ビル建ててるのとでは常識が違うだろう。
飯屋でも、チェーン店のレシピと調理、運営と、定食屋などのそれ、小料理屋・割烹・料亭・高級旅館などとおのそれは
プロトコルでも作法でも重視する点でもまったく違うだろ。


業務に適応してやってきたスタイルならともかく、なんか宗教的な流儀に拘ってるやつが多いのが困りものでしょ。
0318名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 19:21:00.86ID:WUOPwbO70
前に居た職場で1クエリなのに50000行も書かれてるのを見た
何考えて作ったのか、どうやってデバッグしたのか、謎過ぎる
0322名無しさん@涙目です。(庭) [GB]
垢版 |
2018/06/27(水) 19:41:36.50ID:JPMvJ6Na0
糞コードじゃないけど海外のコードはインデント2文字で非常に見辛い
0324名無しさん@涙目です。(チベット自治区) [SE]
垢版 |
2018/06/27(水) 19:52:41.66ID:SuyiBf/60
>>323
仕様変更でどうせそっちのパターンに書き換えるハメになるんだから
最初から全部そう書いとけ
0326名無しさん@涙目です。(地図に無い島) [KR]
垢版 |
2018/06/27(水) 19:58:27.81ID:xcbMaoZB0
>>6
今笑えるけど実際見ると殺したくなる(ヽ´ω`)
0328名無しさん@涙目です。(庭) [FR]
垢版 |
2018/06/27(水) 20:07:26.39ID:Deh7dAIf0
>>318
それすげぇな
カラム数多いテーブル同士結合しまくってんのか?
0329名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/27(水) 20:12:18.34ID:ak27BePN0
SIeep(0); //消さないで
0332名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/27(水) 20:33:36.85ID:muDLQhKq0
>>329
システムコールでユーザーモードから特権モードにコンテキストスイッチさせてスタックポインタ切り替えさせてスタックとレジスタを綺麗にする処理だな
0333名無しさん@涙目です。(神奈川県) [SE]
垢版 |
2018/06/27(水) 20:34:01.30ID:3j5QAlkb0
>>95
愉しそう
0336名無しさん@涙目です。(茸) [AU]
垢版 |
2018/06/27(水) 20:37:39.60ID:DufDNTrR0
HDLだけど、条件演算を4個くらい重ねて書いてたときあったな〜
あの時はホントに時間なかったし、ハードちゃんと動いてるから許してくれ
0338名無しさん@涙目です。(新疆ウイグル自治区) [ZA]
垢版 |
2018/06/27(水) 20:40:53.82ID:rzJNXesH0
const variable = is_hoge ? 1 : 0;
だと const になるけど
let variable = 0;
if is_hoge { variable = 1; }
だとデフォルト値があって再代入している形に
なっちゃうんで意味合いが本当は違うと思うんだ
0339名無しさん@涙目です。(兵庫県) [US]
垢版 |
2018/06/27(水) 20:41:50.38ID:6nQKtwk70
スパゲッティーコードなら昔よく見た。
0343名無しさん@涙目です。(庭) [FR]
垢版 |
2018/06/27(水) 20:44:13.20ID:Deh7dAIf0
>>341
コード書かない設計onlyの人?それともpjに恵まれ続けてる人?

だとしたら羨ましいな特に後者
0344名無しさん@涙目です。(神奈川県) [SE]
垢版 |
2018/06/27(水) 20:46:05.44ID:3j5QAlkb0
switch(label){
case 1: goto label2;
case 2: goto label1;
case 3: goto label5;
}

label=0;
label1:
label++;

label2:
label--;;

label5:
label++;
0345名無しさん@涙目です。(空) [US]
垢版 |
2018/06/27(水) 20:48:04.22ID:aegFD73N0
怪しい中国人
0348名無しさん@涙目です。(家) [AU]
垢版 |
2018/06/27(水) 20:51:44.32ID:ywyri5IU0
SELECT分を連結せずに
表1の結果をループしながらもう1行1行表2をSELECTしてた
0350名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 20:54:43.46ID:eSqKYjSq0
>>11
do while (false) で適宜breakすればネスト深くならずにすみそう
0351名無しさん@涙目です。(兵庫県) [ニダ]
垢版 |
2018/06/27(水) 20:55:19.53ID:5LilrlIN0
引き継いだら中身がLisp
0352名無しさん@涙目です。(庭) [FR]
垢版 |
2018/06/27(水) 20:55:45.04ID:Deh7dAIf0
>>347
運用畑の人か!
ならあまりコードとは触れ合わないわな
端から見るといい仕事に見えるw
それなりに苦労はあると思うけどw
0353名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 20:56:08.02ID:Z+ZemaPD0
//こうするとなぜかうごく
0356名無しさん@涙目です。(神奈川県) [PK]
垢版 |
2018/06/27(水) 21:00:26.41ID:fMZrOhDU0
>>6
そこの変なprintf文を外すとメモリアロケートが壊れてバグるんだろ?
0359名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 21:06:21.44ID:KASc5Lzb0
適度に冗長な方がいいな
曲芸みたいなシンプルさは困る
0360名無しさん@涙目です。(兵庫県) [ニダ]
垢版 |
2018/06/27(水) 21:06:34.65ID:5LilrlIN0
昔、C言語で書かれた膨大な数のプログラム群のグローバル変数がaとかbとかふざけた名前付ける奴いがいてまじ絶望したけど
今ってVisual Studioがその辺しっかりサポートしてくれるからかなり楽だよな
0361名無しさん@涙目です。(空) [MY]
垢版 |
2018/06/27(水) 21:07:06.38ID:en4XR8Au0
ウンコードマニア見ようぜ
http://unkode-mania.net/

個人的にJavaScriptにSQL文書いてる(もちろんクライアントサイド)のはヤバいと思った
0363名無しさん@涙目です。(宮城県) [US]
垢版 |
2018/06/27(水) 21:09:06.21ID:baoN2BgQ0
>>336
HDLは普通のプログラミング言語で云うスパゲッティ状態でしか書けない言語だから
ちょっとくらい条件式が込み入ってても問題ない
それよりもちゃんと論理合成できてタイミングも満たせることのほうが大切だ
0365名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/27(水) 21:10:50.45ID:t0x1r9cY0
>>335
条件分岐内にラベルがあると殺意がわく。
0366名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 21:12:06.90ID:Z+ZemaPD0
test := 1;
if name = 'hogehoge' then
begin
test := 1;
end;
//これが美しい
0367名無しさん@涙目です。(玉音放送) [FI]
垢版 |
2018/06/27(水) 21:12:23.53ID:BnLptYQ60
class hoge
{
public:
    hoge() { memset(this,0,sizeof(*this)); }
    virtual void foo(){}
};
0368名無しさん@涙目です。(チベット自治区) [CN]
垢版 |
2018/06/27(水) 21:12:42.58ID:TF1kRJhf0
void sub(void)
{
p=malloc(100);

do {
  ret = subsub1();
  if (ret != 成功) break;
  /* goto はゼッタイ使っちゃだめ */

  ret = subsub2();
  if (ret != 成功) break;
  /* goto はゼッタイ使っちゃだめ */
} while(0);

free(p);
return;
}
0371名無しさん@涙目です。(庭) [FR]
垢版 |
2018/06/27(水) 21:14:26.03ID:Deh7dAIf0
むしろこれ
レガシーと言えば聞こえはいいが…

<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

<?php endwhile; ?>

<?php else: ?>

<?php endif; ?>
0372名無しさん@涙目です。(空) [US]
垢版 |
2018/06/27(水) 21:14:39.31ID:aegFD73N0
外人が書いたソース全部書き直した時
0373名無しさん@涙目です。(宮城県) [US]
垢版 |
2018/06/27(水) 21:14:49.03ID:baoN2BgQ0
自分はあまり経験ないが
組み込みだとタイミングが変わるからこういう書き方>>323はNGとか規約あったりするのだろうか
0374名無しさん@涙目です。(神奈川県) [ニダ]
垢版 |
2018/06/27(水) 21:14:53.42ID:jYoySWSe0
1. 複数回初期化される変数。しかも初期値はマジックナンバー
2. セットされるだけで決して参照されないプロパティ
3. if文の条件が入れ子の関数呼び出し。解析した結果恒等式だった時の殺意
4. コメントの「たぶん」「おそらく」「なぜか」
0375名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/06/27(水) 21:16:24.21ID:HxAmIhF10
スレタイと全く関係ないけど関数の使い方とかどこで調べるの?
hogeって関数分からなくてネットで調べると色んな言語出てきたり古い情報?出てきたりでプログラミング難しいおもいました
0377名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/06/27(水) 21:17:04.60ID:m8UM7r4f0
>>364
三項演算子が素直じゃないと思うのはどういう背景なんだろ
代入とif文から入ることが理由なのかな
0378名無しさん@涙目です。(愛知県) [ニダ]
垢版 |
2018/06/27(水) 21:17:46.44ID:XpbHxza20
ソースというか、DBの全項目がNULL可かつ一意項目無しだったときは絶望を感じた
しかもそれ使って業務回ってんだよ
0379名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/06/27(水) 21:18:11.57ID:ENKlxUwi0
他人のソース見て一番困るのは「何の目的で組んだロジックか分からない」命令が出てきた時
1行でいいから簡単な説明のコメント行書いてくれるだけで全然違うのに
0380名無しさん@涙目です。(庭) [FR]
垢版 |
2018/06/27(水) 21:18:34.53ID:Deh7dAIf0
>>378
速度大丈夫なの?それ
0381名無しさん@涙目です。(茸) [ニダ]
垢版 |
2018/06/27(水) 21:18:54.14ID:pzynxjmn0
富士通に見せてもらえ
0384名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/06/27(水) 21:22:42.85ID:m8UM7r4f0
なぜか#ifdefはインデントしない文化があるのだけど
よくあるのかね?

ネストしてると読むのに死ねる
0386名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 21:24:25.99ID:V5a3Bs2Y0
Perlのプログラム解析やったときは疲れた
0387名無しさん@涙目です。(愛知県) [ニダ]
垢版 |
2018/06/27(水) 21:24:52.59ID:XpbHxza20
>>380
使ってたから大丈夫なんだろう
それよりキーと思われる項目が重複してたりNULLだったりするデータが大量にあって、
なんで動いてるのか不思議だった
0389名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 21:26:27.20ID:Z+ZemaPD0
ER図作ってないのかな
なんか怖い
0390名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/27(水) 21:28:52.34ID:eSqKYjSq0
>>367
仮想関数テーブルが壊れるんだっけ?
0395名無しさん@涙目です。(dion軍) [GB]
垢版 |
2018/06/27(水) 21:35:03.53ID:LeUQODuh0
//s*****<< ここはよくわかんないけど合ってる >>******

//e*****<< ここはよくわかんないけど合ってる >>******
0397名無しさん@涙目です。(富山県) [CN]
垢版 |
2018/06/27(水) 21:35:16.97ID:Li1rsK540
母が古代言語コボル使いだと最近知った
0399名無しさん@涙目です。(庭) [FR]
垢版 |
2018/06/27(水) 21:37:04.29ID:Deh7dAIf0
>>393
まぁ独特な言い回し使ってたりするからなjavaのapi仕様書って

取り敢えず使ってみてapi-doc見て言い回しに慣れろとしか言えんね
そのうち読めるようになるよ
0401名無しさん@涙目です。(やわらか銀行) [ニダ]
垢版 |
2018/06/27(水) 21:43:40.39ID:LDIwzMGi0
>>288
最近の若いやつはちゃんとした情報処理の知識もないのか。
if elseだと処理時間最大O(n)だがLUTなら最大O(1)で処理できる。
switchの場合はコンパイラが優秀だとジャンプテーブル生成してO(1)のコードになる。
それでもLUT方式が最速かつコード最小。
0402名無しさん@涙目です。(愛知県) [ニダ]
垢版 |
2018/06/27(水) 21:43:59.74ID:XpbHxza20
>>394
古いデータじゃなくて、そんなデータが日々新たに作られてるんだよ
0404名無しさん@涙目です。(やわらか銀行) [ニダ]
垢版 |
2018/06/27(水) 21:49:06.88ID:LDIwzMGi0
>>332
カーネルから戻ってきたらレジスタバンクもスタックも元通りになるのでそれはない。
そもそもスレッドごとにスタックは別なので関係ない。
Sleep(0)で唯一考えられるのは、スレッドスイッチング(ラウンドロビン)がここのサービスコール中に発生しやすくなることじゃね?
当然タイミングによってはちゃんと動作しなくなる。
0405名無しさん@涙目です。(神奈川県) [US]
垢版 |
2018/06/27(水) 21:49:09.15ID:H26YC3wj0
フローチャートを書いていかなる入力に対してもエラー含め答えが百パーセント保証されないサブプログラムがあるコードはダメだな
でもプロ将士並みの頭脳なら数千行のコードを書けるかもしれない
0408ボックス ◆YdehfKz25M (神奈川県) [BO]
垢版 |
2018/06/27(水) 21:56:40.69ID:uJC10ps60
5 cls
0410名無しさん@涙目です。(神奈川県) [US]
垢版 |
2018/06/27(水) 21:58:16.22ID:qOeUQI7g0
動けばいいんだよ。
0414名無しさん@涙目です。(庭) [DE]
垢版 |
2018/06/27(水) 22:12:32.58ID:YGhxqOeC0
>>188
配列にしたくなるけど、将来的にインデックスが歯抜けになる可能性があるとか、
配列のアクセス範囲、配列の確保や初期化、そのテストコードと、考慮することが増えるから、これはこれで簡潔な実装だと思うよ。
0420名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/27(水) 22:48:51.03ID:dAydDLmj0
クレジット会社のJavaソース
気が狂いそうになった
0423名無しさん@涙目です。(大阪府) [IT]
垢版 |
2018/06/27(水) 22:57:12.02ID:eNoTACIi0
>>209
演算子の処理順番を完全に理解してる人から見たら邪魔と言われる
一瞬、見た目で理解し時間短縮の人はそう言う(演算子の処理順番を理解してないと言うと怒る)

コード規約に従います
0427名無しさん@涙目です。(チベット自治区) [US]
垢版 |
2018/06/27(水) 23:35:36.53ID:jBfUQcGD0
>>368
mallocの失敗が考慮されてないやり直し
0432名無しさん@涙目です。(家) [EG]
垢版 |
2018/06/28(木) 01:21:39.74ID:NtyOeRxS0
コメントが一切ないperl
0434名無しさん@涙目です。(dion軍) [ニダ]
垢版 |
2018/06/28(木) 02:00:58.42ID:iKpQUfNF0
goto if のスパイラル
0438名無しさん@涙目です。(家) [PL]
垢版 |
2018/06/28(木) 03:26:40.53ID:Gb2gPXgd0
女の子にやらせたらラベルがお花になっていて
goto himawari; とかなっていた
0441名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/28(木) 04:26:47.34ID:YveFTY4Q0
>>125
適当なプログラム書かせて採用決めればいいのに
まっさらな状態から教え込もうとするのに限界がある
向いてない奴が大量生産されて困ったことに

文章苦手な奴に小説なんか書けるわけないだろう
0445名無しさん@涙目です。(チベット自治区) [DE]
垢版 |
2018/06/28(木) 05:04:00.38ID:QvZ6fc+h0
>また、条件分岐に多段の三項演算子を乱用するなどの症状も多く見受けられる。

多段は皆嫌
コード規約が常識化して良かった
アホが一人で意地張ってやめないのをルールで規制できる
0450名無しさん@涙目です。(茸) [BR]
垢版 |
2018/06/28(木) 07:44:05.77ID:GLDMV0mC0
>>448
例外的なのは最初か最後にbreakかreturnで抜けるなぁ。

本当はgotoでも良いんだけど、流用や機能追記時にアホが考え無しな事をしてるのを見て無理だと悟った。大昔に。

まぁアホにかかったら何でもダメなんだけど、確率って事でなw
0452名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/28(木) 08:14:31.86ID:9y+QgfEU0
一人でこつこつサグラダファミリアみたいにプログラム作るのがよさそう
0455名無しさん@涙目です。(SB-iPhone) [CA]
垢版 |
2018/06/28(木) 08:37:24.54ID:LEHZs/dA0
同じ処理がいろんなファイルに書いてある時
他社からの引継ぎで攻撃受けてトロイが仕込まれたままのコードを渡された時
0456名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/06/28(木) 08:38:10.89ID:C8GUfC4e0
>>450
例外で後始末をしてから抜けなきゃならない時に
同じ後始末の処理をそこら中に書いてある奴は後始末処理を修正する時にミスする元だし
例外フラグ作って各処理バイパスしてくのもわかりにくいしミスの元だしgotoするのが一番わかりやすくてエレガントだ
gotoは前に戻っちゃいけない、ループの外から中に飛んじゃいけない程度の規定で分かりやすくなるならどんどん使った方がいい
0460名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/28(木) 08:44:13.31ID:JFE8AiNy0
>>459
新卒の時はviで開発してたわ俺
よくやってたよ正直
0461名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/28(木) 09:15:22.91ID:epvFDvju0
高機能なIDEが提供されている現代で頑なにEmacsやViで開発してるやつはなんなの?
マゾなの?
0462名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/28(木) 09:17:26.55ID:JFE8AiNy0
自己満足なんじゃね?
0464名無しさん@涙目です。(空) [US]
垢版 |
2018/06/28(木) 09:20:51.88ID:LTq20yCW0
>>451
行数の多さで生産性決める現場あったわ
くだらねえと思った
0466名無しさん@涙目です。(茨城県) [US]
垢版 |
2018/06/28(木) 09:28:21.34ID:tC7eVgVu0
VBscriptでHello World (要Excel)

'# hello.vbs で保存してダブルクリック
dim EXL
set EXL=WScript.CreateObject("Excel.Application")
EXL.Workbooks.Add
EXL.Cells(1,1).Value="Hello World"
EXL.Visible=True
0468名無しさん@涙目です。(兵庫県) [GR]
垢版 |
2018/06/28(木) 09:55:50.69ID:8o3R9Ha10
クソみたいなプラットフォーム上で無理やりシステム組まされたら嫌でもクソコードになる
俺が辞めたら誰一人理解できないだろな
0469名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/28(木) 10:01:46.30ID:fEYDXJF50
みんなすごく技術好きなんだね
でも仕事の現場では、お客さんの課長さんと主任さんの要件の対立をおさめたり、
そもそも要件出してくれないのを催促したりするのがメインの仕事になんだよね
そらIT技術者になりたいやつ減るわ
0471名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/28(木) 10:08:43.27ID:JFE8AiNy0
>>469
そこに関してはITに限らないんじゃね?顧客との折衝はどの職種でも必要
0473名無しさん@涙目です。(茸) [US]
垢版 |
2018/06/28(木) 10:16:04.84ID:fEYDXJF50
他業種だとお客さんもプロで話はやいけど、ITはお客さんがよくわからんから頼むって要件定義ですら投げてくるとこあるからなあ
お互い不幸に仕事する羽目になる
0475名無しさん@涙目です。(新疆ウイグル自治区) [US]
垢版 |
2018/06/28(木) 10:39:01.90ID:j8+IeV/S0
>>1
>* 大量のクラス
>* 迷路のような変数渡し
>* 底なしに深いネスト

↑この状況になるのにオブジェクト指向もデザインパターンも一切関係がない
単に馬鹿なだけ

OJTなどと言ってまともに新人教育をしない企業で働く素人に毛が生えた程度の底辺のやることであって、中級者ですらない

勝手に中級者病などと勘違いも甚だしい言葉を作るな
0476名無しさん@涙目です。(空) [DE]
垢版 |
2018/06/28(木) 10:43:52.50ID:C8f7b5ao0
新規プロジェクトで、これまでの慣例通りStruts1使えという猛反対を押し切ってSpring初めて使ったら綺麗すぎて鼻水出たわ
0477名無しさん@涙目です。(茸) [CN]
垢版 |
2018/06/28(木) 10:46:50.95ID:TU7zRR8b0
>>79
言ってることはわかる

でもその改行はないわ
それならif文で書くわ
0478名無しさん@涙目です。(公衆電話) [GB]
垢版 |
2018/06/28(木) 10:51:41.25ID:USw+78op0
>>467
違うよ
DBの全項目って書いてるだろ
どのテーブルをみても主キーが無いんだよ

理解しようとする必要はないんだ
「絶望を感じた」話を書いてるんだから
なにがしかの合理性があるのなら絶望なんて感じないだろ?

例えば見積テーブルのキーである見積り番号がNULLだったり重複があったりするんだよ
業務上絶対必要な筈なんだけどね
じゃあほかにシーケンスなり別のキーが実はあるのかというとそれも無いという
0480名無しさん@涙目です。(茸) [FR]
垢版 |
2018/06/28(木) 10:52:27.78ID:OpuoS7zd0
昔フレームワークの上に、独自フレームワークを載せたカスがいたなあ
0481名無しさん@涙目です。(茸) [CN]
垢版 |
2018/06/28(木) 10:52:53.01ID:TU7zRR8b0
>>474
シグナルの受信待ちでsleep使うとかアホやわwwwwwww
常に受信待ちにしとけよwwwwww

必要ないなら切れよwwwwwww
0483名無しさん@涙目です。(茸) [CN]
垢版 |
2018/06/28(木) 10:55:37.90ID:TU7zRR8b0
>>448
えっ

vb屋は死んで
0484名無しさん@涙目です。(catv?) [JP]
垢版 |
2018/06/28(木) 11:03:38.39ID:D7iKF97o0
>素人に毛が生えた程度の底辺のやることであって、中級者ですらない

それな
底辺がそのまま経験を積んでも中級者にはならない
0485名無しさん@涙目です。(茸) [FI]
垢版 |
2018/06/28(木) 11:04:19.00ID:Say5Qnu40
>>482
まあ恐ろしいのはそれが某大手SIerの作品なんだよね
しかも「こんな素晴らしい開発をしました」みたいな例としてサイトにのってやがんの

恐らくだけど、「10人で10ヶ月」みたいな開発に対して、
「100人で1ヶ月でやれや」って指示をしたんじゃ無いかと
それで、DBは各機能や画面のメモにしかならなかったんじゃないかと思う
0486名無しさん@涙目です。(新疆ウイグル自治区) [US]
垢版 |
2018/06/28(木) 11:05:39.56ID:MrFAHFj30
野党・マスゴミ関数

main(){
 do{
  モリカケ();
 }
 while (true);
}
0487名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/28(木) 11:06:15.11ID:JFE8AiNy0
>>482
正規化はデータ構造の整理の話だからな
プライマリーキーがなくても一応テーブルはつくれるし検索はかけられるだろ
0488名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/28(木) 11:15:30.38ID:f3tZiJ390
>>478
レコードにtimestampさえ入ってりゃAP側で何とかなるで
DBなんてデータ永続化とバックアップ集中の役割さえ果たしてくれればええねん
という割り切りかもな
0489名無しさん@涙目です。(catv?) [JP]
垢版 |
2018/06/28(木) 11:17:02.65ID:D7iKF97o0
「GOSUBよりGOTOの方が早ええんだよ」の頃から本質的には変わってない
コード書きは熟練してもコード書き
システムは作れんのだ

お前らの言ってる事は、これから城塞作ろうって時に
煉瓦の焼き方がどうのこうの積み方がどうのこうのと言ってるのと一緒
0490名無しさん@涙目です。(茸) [FI]
垢版 |
2018/06/28(木) 11:23:16.61ID:Say5Qnu40
>>488
だから無いんだって
レコードはいかなる方法を使っても一意に特定できないの
だから絶望を感じたって話ね

しかもソイツがなんらかのロジックで基幹システムと連携してるんだぜ
絶望しか感じないだろ
0491名無しさん@涙目です。(福岡県) [IN]
垢版 |
2018/06/28(木) 11:23:58.96ID:w5K/R0Aq0
昔、BASICでGOSUBでサブルーチンに飛んでGOTOでいくつものサブルーチンを渡り歩いて
RETURNで戻ってくるプログラムを見た時は痺れたわwww
0494名無しさん@涙目です。(兵庫県) [US]
垢版 |
2018/06/28(木) 11:57:46.84ID:ab8RyE7X0
Hoge
Piyo
0495名無しさん@涙目です。(茸) [BR]
垢版 |
2018/06/28(木) 11:58:13.49ID:jzUu+HZE0
10 cls
0496名無しさん@涙目です。(大阪府) [TW]
垢版 |
2018/06/28(木) 12:00:14.37ID:8yWomB7Q0
10 PRINT"(´・ω・`) "
20 GOTO 10
0497名無しさん@涙目です。(大阪府) [IT]
垢版 |
2018/06/28(木) 12:04:22.08ID:P9QxX+5d0
>>426
あと

お客さん仕様:数値を調べて、一番小さい桁を捨てて、全ての桁を1つ移動させる(10で割って、小数点以下は切り捨てみたいな)

サブリーダー「なんで態々桁を移動するような関数作ってるの?」
製造「お客様の仕様に沿っただけです」
サブリーダー「だからと言って、言語に合わない事をするな。せめて既存のライブラリを使え!」

こういう人も居る
0499ボックス ◆YdehfKz25M (禿) [ES]
垢版 |
2018/06/28(木) 12:14:00.67ID:Oaahzuo70
>>482
正規化せずともプログラムのロジックで対象を見つけ出しさえすれば、できないこともないんだろうが
作った人も、その労力を別のところで発揮してれば、もっと良かったろうにね
0503名無しさん@涙目です。(禿) [ニダ]
垢版 |
2018/06/28(木) 12:32:59.39ID:oOcdcuN90
>>332
>>404
お前らすげえわ
何言ってんのかまったくわからん
0505名無しさん@涙目です。(茸) [GB]
垢版 |
2018/06/28(木) 14:18:15.76ID:5KBR6kSE0
>>478
多分、こんな感じかな
基幹システム
 @見積り管理マスタ(テーブル)
  支店コード
  見積りSEQ
  見積りトラン開始ポインタ
  見積りトラン最新ポインタ
 A見積りトラン
  見積りSEQ 支店毎にSEQ
  見積り先コード
  商品コード
  商品数

 @、A共にDB外で使用されていたが、見積りデータから商品の発注予約或いは製造計画を練りたいとのことで、AのトランだけDBへバッチ転送
 しているとか
0506名無しさん@涙目です。(庭) [FR]
垢版 |
2018/06/28(木) 14:51:02.24ID:5V3emB5J0
UTF-16はうんこ
0509名無しさん@涙目です。(禿) [US]
垢版 |
2018/06/28(木) 15:39:40.94ID:Z5fyWLNk0
>>459
お前さんにUNIXでVi editorでUNIX COBOL修正して、コンパイラかけてモジュール作ってUNIXシェル動かして、IN OUT編集してデバッグ結果検証、て作業やらせて発狂させたいわ
0511名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/28(木) 15:58:48.05ID:xX+GM+1X0
>>347
お前とは仕事したくないわw
0512名無しさん@涙目です。(庭) [RO]
垢版 |
2018/06/28(木) 16:28:52.55ID:cKNxBEsI0
>>491
白黒のシャープのザウルスのプログラムでそんなのあった。
しかも容量も少なくインタプリタだから改行や空白でも容量食っちゃうから、
改行すらケチって延々と一行で書かれてたwww
0513名無しさん@涙目です。(catv?) [US]
垢版 |
2018/06/28(木) 18:49:17.12ID:/Xr7+Umi0
先輩に汎用的なコードを書けと言われて、どんどん汎用性を持たせた結果、、
eval(cmd);
先輩はこれで満足してた
0516名無しさん@涙目です。(庭) [JP]
垢版 |
2018/06/28(木) 20:18:11.87ID:+NtnnZso0
クソコードをメンテ云々言ってる奴は捨てる勇気がないだけ
0517名無しさん@涙目です。(チベット自治区) [CN]
垢版 |
2018/06/28(木) 20:18:22.25ID:c3U5PNvQ0
iアプリ時代のJavaは
for(i=0;i<100;i++){
  //処理
}
より
for(i=99;i>=0;i--){
  //処理
}
のほうがVMバイトコードを1バイト節約できるとか言う話だった
※当時は「大切に使え、血の1バイト」とかいわれてプログラム
作ってた。あれは本当だったの?
0518名無しさん@涙目です。(やわらか銀行) [IN]
垢版 |
2018/06/28(木) 20:49:52.02ID:YgDosNJ10
>>29
NECのがバグをいつまでたっても直せないからソース見たら、定数や変数にコメント書いて無いのな
おそらく他社に切り替えられないように別に管理しているんだろうけど、メンテしているお前が理解でき
なくなってんじゃないのか?
解析したらオーバーフローしていたぞ
0520名無しさん@涙目です。(やわらか銀行) [ニダ]
垢版 |
2018/06/28(木) 21:23:36.29ID:Mr0cGY6s0
>>517
JavaVMに限らず、一般的に定数以上とか以下とか判定するには2ニーモニックもしくは多倍長命令が必要だけど、ゼロ条件分岐はZフラグ一発で判定できるから。
今時こんなこと言うやつはいないとは思うけどね。
0521名無しさん@涙目です。(東京都) [PH]
垢版 |
2018/06/28(木) 21:28:28.71ID:eRjw3wQ10
>>266
PowerShell

$g = [Security.Cryptography.RandomNumberGenerator]::Create()
$b = New-Object byte[] 1
do {
 $g.GetBytes($b)
 $n = $b[0]
} while ($n -ge 252)
$n % 6 + 1
0522名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/28(木) 21:34:28.35ID:AYxxLy680
醤油かければいいじゃん
0526名無しさん@涙目です。(庭) [DE]
垢版 |
2018/06/28(木) 21:53:22.70ID:F6Y+visE0
>>518
NECは社外にソースコードを出すときコメントを削除する
本気を出したときは関数名や変数名もaとかbとか意味のない値にする
最初は開発用と納品用でソースを分けて管理するが、時間が経つと納品用だけ編集するようになり破綻する
0529名無しさん@涙目です。(東京都) [US]
垢版 |
2018/06/28(木) 22:08:35.43ID:x42UPNa20
大量のクラス→責務分割できてる証拠
迷路のような変数渡し→値オブジェクトなどを覚えるのでむしろ無駄な変数渡しが減る
底なしに深いネスト→中級者はネスト大嫌いなので逆に減る

この記事を書いた人は他業種の方かな?
0535名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/29(金) 11:08:27.11ID:NGePY71f0
>>534
全くならない
例外Aに後始末aが必要ならそれをコードで表せ
そんな状況で例外Aだけに後始末dが必要になったらどうすんの?スパゲティ和えるのか?
0536名無しさん@涙目です。(茸) [ニダ]
垢版 |
2018/06/29(金) 12:39:00.28ID:W4Zd3nIs0
>>534
俺もならんなぁ。
ややこしい処理ならabc自体を関数化する(手続きと制御を分離する)ベキだし、その条件に限ればbreak無しswitchでも表現出来る。

超絶効率(サイズorスピード)を求めない限りgoto必要ない→組み込み系には必要かも。って考え。
0538名無しさん@涙目です。(アメリカ合衆国) [DE]
垢版 |
2018/06/29(金) 14:38:01.50ID:UDTBeoPd0
>>433
いや
そこでとめずに今度はその場で得た知見をもとに再度コメントを修正するんだ
フィードバックを繰り返せば小説のように書き方が身につくかもしれない

>>520
それだと
for(i=99;i,=0;i--){
  //処理
}
が正解でないか?
0541名無しさん@涙目です。(東京都) [ニダ]
垢版 |
2018/06/29(金) 15:45:50.21ID:gt14ci870
>>534
こんなのね

 if (STATE_A) {
  A();
   ;
  RET=1;
  goto EXIT;
 }
  ;
  ;
 if(STATE_B){
  B();
   ;
  RET=2;
  goto EXIT;
 }
  ;
 C();
 RET=0;

EXIT:
 close_handle();
 free_buffer();
   ;
 return RET;
0542名無しさん@涙目です。(空) [US]
垢版 |
2018/06/29(金) 17:48:08.82ID:tIuug4ZZ0
>>216
釣り針デカいな
0543名無しさん@涙目です。(大阪府) [GB]
垢版 |
2018/06/29(金) 17:55:11.79ID:8FYeXHmP0
大量のデータをForループで1行ずつ追加して、1行データを追加する度に画面をリフレッシュ。
データ量が多いから仕方がないと顧客には説明されてた模様。

なお、Select InsertでForループを削除して、画面リフレッシュを1回にしたら、パフォーマンスが劇的に改善されて神扱いされたことある。
0545名無しさん@涙目です。(公衆電話) [US]
垢版 |
2018/06/29(金) 19:37:04.70ID:YzOhhpAI0
// ゴメンなさい、後はよろしく


なら見たことある
0546名無しさん@涙目です。(庭) [US]
垢版 |
2018/06/29(金) 19:37:50.19ID:yJOmJmGN0
>>545
それ書いた奴のその後が気になる
0547名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/29(金) 19:44:59.82ID:pd4+Tnqc0
hell world
0548名無しさん@涙目です。(家) [CN]
垢版 |
2018/06/29(金) 19:55:18.63ID:O4QpuIok0
>>504
VBAで前任者が投げ出したコードがあったが、ボタンクリック時の処理が関数1個だけで1KLオーバーで卒倒した
(いわゆる、一から十までmain関数に突っ込んでる)

内容解析したら同じ動作を5回か6回繰り返してる(ACCESS-DBからデータ拾って表形式に変換)ので、一応データ責任者に変更許可貰って局所関数として編集
結果、かなり全体的にすっきりした
0549名無しさん@涙目です。(やわらか銀行) [ニダ]
垢版 |
2018/06/29(金) 20:24:01.68ID:PBBKbT5R0
>>504
あ、俺もCでその半分ぐらいの行数ならメンテしたことある!
しかも複数行をdefine定義したマクロ多用してて、さらにそのマクロの中でreturnやgoto使ってるもんだから常人には理解不能だったわ。
さらにさらにデバッガさえもその関数を解析しきれずにローカル変数のウォッチができなかった。
それ作ったのは日本の最高学府卒のスーパーエリートで、そんな関数を殴り書きで作りながらもほぼ一発でバグなく動かす、本物の天才だった。
後にも先にもあんな凄い関数と天才プログラマは見たことないわ。
0552名無しさん@涙目です。(西日本) [ZA]
垢版 |
2018/06/29(金) 20:55:44.57ID:dxo6VE+k0
>>549
そう言う俺コードを参考書に書いてる馬鹿がいて、新卒君が変なコードばかり書くから、聞いてみたら、この本で勉強しましたって。

その本、今も売ってるけど他人に理解できない、自分だけの謎ルール多用の俺コードばかり。

そんな本で勉強した奴が社会に出てくると困るわ。

著者はCだけでなくC++とJAVAまで出版してる。
0553名無しさん@涙目です。(東京都) [PH]
垢版 |
2018/06/29(金) 21:29:30.17ID:yjoGiUNx0
>>552
お名前教えて!
0555名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/29(金) 22:35:05.48ID:9x9zNbPH0
>>549
文系の場合はそんな感じて全ての法と施行令の相関関係と矛盾点を頭の中に入れながら曲芸的綱渡りだけど瑕疵の無い無謬な文書を書けたりするような奴が官僚になって制度動かしてたりする
0556名無しさん@涙目です。(福岡県) [CN]
垢版 |
2018/06/29(金) 22:35:35.46ID:IlC3r2V40
コードギアス
0557名無しさん@涙目です。(やわらか銀行) [ニダ]
垢版 |
2018/06/29(金) 22:36:52.89ID:3Vp4Mz0/0
if (x == null) {
return null;
}

マジで意味わからんかった
0559名無しさん@涙目です。(新疆ウイグル自治区) [SE]
垢版 |
2018/06/29(金) 22:41:13.88ID:9x9zNbPH0
>>490
一意である必要あるのか
実業務で同じ見積書番号の見積書を何種類も使ってて一意管理されたら困るのかもしれないだろ
0560名無しさん@涙目です。(やわらか銀行) [IT]
垢版 |
2018/06/29(金) 22:44:18.79ID:CLY6AHJ+0
毎日書いてるよ
0567名無しさん@涙目です。(やわらか銀行) [US]
垢版 |
2018/06/29(金) 23:49:04.05ID:7h/AV1Ck0
>>566
だってλxって書くやン
0571名無しさん@涙目です。(catv?) [ニダ]
垢版 |
2018/06/30(土) 11:08:17.18ID:H1TcCvBX0
>>557
ぬるぽ
0572名無しさん@涙目です。(新疆ウイグル自治区) [US]
垢版 |
2018/06/30(土) 11:11:50.15ID:Tt9arSNs0
不出来のソースコードを添削してくれるAIを開発すればいい
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況