パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

昔のプログラミングスキルは今も大事?」記事へのコメント

  • by Anonymous Coward
    普遍の真理だと思い込まれる害と相殺されるか、マイナスになるくらい。
    • 最近、客先の社員(自分とは多分一回りぐらい年が違う)に

      「VSS使ったことありますか?」キリッ
      「あっ、コード修正したら、変更前の部分はわかりやすいようにコメントにしておいてください」キリッ

      とか言われてもんにょりしている私が通りますよ。ええ、いろいろな意味で。

      コの業界、文明以前の呪術的な状態がまだ続いているところもあるんだなあ。

      おかげで、帰ってから趣味のプログラミングがはかどる事。
      --
      #存在自体がホラー
      • by matlay (32743) on 2011年08月09日 19時46分 (#2000235) 日記
        繰り返しギャグなら、もうひとついるな。
        「テスト項目は(Excelの)仕様書をコピーして、記述の後ろに■と日付を入れていってください」キリッ

        まあ、何が言いたかったかというと、それはもう十年くらい前に自分が通過してはまってきた道だという事と、

        このタイムスリップした感をどうやって修正してくかね。
        --
        #存在自体がホラー
        親コメント
        • by Touko (27992) on 2011年08月09日 20時05分 (#2000247) 日記

          テスト項目はFirefoxをインストールしてこの拡張機能をインストールすると
          SQlite+Windowsファイル共有でグループ全体で共有できます(キリ

          ならやったことあります。
          DBファイルをファイルとして共有とかバッドノウハウ

          --
          誤記 FireFox
          巫女 Firefox [mozdev.org]
          親コメント
        • あと、書き忘れたけど、ソース眺めていてみつけた記述。

          問題:入力値の先頭を0埋めして7桁に揃えなさい
          答え:入力値の文字列長を取り、0〜6までのcase文でそれぞれ対応する個数の"0"を先頭につける

          修正履歴に残る名前がまあ、それなわけだ。
          • by Anonymous Coward

            問題:入力値の先頭を0埋めして7桁に揃えなさい

            自分はつい先日同じような要件を提示され、「10000000+入力値」して下7桁を文字列変換して返す仕様にしました。

            修正履歴に残る名前がまあ、それなわけだ。

            ここがよくわからないので親コメさんにお聞きしたいのですが、

            • このオチで何を言いたいのか
            • それと問題に対する正解は何だと思っているのか

            について教えていただけません?

            • by Anonymous Coward
              さて、ここで問題です。

              >自分はつい先日同じような要件を提示され、「10000000+入力値」して下7桁を文字列変換して返す仕様にしました。

              上記の実装で暗黙の前提としている条件を述べ、そのままだと起こりうる問題点を挙げよ。

              俺は "0000000" + x で右7桁取るだけど。(ただし、Cの場合を除く)
              • by Anonymous Coward on 2011年08月09日 22時44分 (#2000355)
                ここからはバッドノウハウレベル最下位決定戦となります。
                親コメント
              • by Anonymous Coward
                入力値が数値という前提がなされていない(入力チェックの有無も)という指摘かな?
              • by Anonymous Coward

                前提1. 入力が数値に変換できる
                前提2. 入力は0以上の値である

                1はここでは言わずもがなでいいとして、2はまずいな。
                負数だと頭に符号がつくから、"0000000" + x で右7桁を返す方法も同様にまずい。
                負数を入力エラーとする仕様なら動く。
                ただ、0で始まる整数値は8進数と認識されることもあるから、頭0埋めの仕様がそもそも良くない。

              • by Anonymous Coward
                入力は整数である
                入力は7ケタを超えない

                さて、整数であることを確認する方法は?
              • by Anonymous Coward
                別に整数でなくても7桁超えててもいいんじゃね?要求仕様が「先頭0埋めして7桁に揃えよ」なら。
                テストケース→OKパターン
                0→0000000
                1→0000001
                9999999→9999999
                123456789→1234567 or 2345678 or 3456789
                -1→00000-1
                hoge→000hoge
              • by Anonymous Coward
                やれやれ、ここまでオーバーフローの話が無いとは...。

                意図しない入力で異常終了するよりは誤動作でも動作する方に倒れるほうがいいと思わないか?
              • by Anonymous Coward

                どっちも良くないのは言うまでもないですが、どうせならきちんと異常終了してエラーを返してくれる方がマシです
                その方が、誰の目にも明らかに異常が認識できますから
                とにかく検品だけ通過して、後は野となれ山となれで放り出して逃げること前提なら別ですがw

              • by Anonymous Coward
                またしても自己紹介、乙。

                意図しない入力があった場合は落ちます。キリッですか。

                そんなコード残される身にもなってくれ。
              • by Anonymous Coward

                ただ、0で始まる整数値は8進数と認識されることもあるから、頭0埋めの仕様がそもそも良くない。

                言いたいことは理解できるけど、例えば銀行の口座番号とか銀行間で桁が揃っていない場合は
                「最大桁の銀行に合わせて頭0埋めして取り扱う」
                という慣例が延々と引き継がれているわけで、システムの見地から理想を言ってもどうにもならないよ。

                #あくまでも口座番号は例えね。今は統一されているかも?

私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike

処理中...