パスワードを忘れた? アカウント作成
9962030 story
プログラミング

「Pythonコードは欠陥が少ない」という調査結果 50

ストーリー by hylom
色々とツッコミどころがありそうな気も 部門より
insiderman 曰く、

オープンソースで公開されているさまざまなソフトウェアの品質を調査したところ、Pythonが最も高かったという調査結果が発表された(本家/.)。

この調査では、「不具合率(defect density)」という基準を使ってソフトウェアの品質を調べたという(関連するSourceForge.JP Magazineの記事)。一般的に「品質がよい」とされるソフトウェアの不具合率を「1.0」とし、それと比較して「不具合率」を算出したそうなのだが、その結果、オープンソースソフトウェアの不具合率は0.69と、一般的な「品質のよいソフトウェア」よりも欠陥が少ないということが分かったそうだ。

さらに、Pythonコードのみに限った場合は不具合率は0.005と大幅に低かったそうだ。これは、1000行のコード中に不具合が0.005個見つかる、という割合らしい。

また、Python本体のソースコード約40万行のうち、欠陥が発見されたのは996件のみで、そのうち860件は現在までに修正されているという点についても報告されている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by deleted user (19654) on 2013年09月06日 16時35分 (#2455320) ホームページ 日記

    これ「Python で書かれたコード」じゃなくて「CPython 自体」の話ですよね。
    しかも CPython は開発段階で Coverity チェックしているので、見ようによってはチートです。

    • by Anonymous Coward on 2013年09月06日 17時09分 (#2455349)

      タレコミで、元記事にある「Coverity社の調査によると」を削除しているあたりがひどいですね。
      別にタレコミ者がPythonをひいきする目的だとまではいいませんが、一般論として、発表元を削除してはいかんでしょう。

      親コメント
      • by Anonymous Coward

        普通に読むと誰もが、「誰が調査したの?」って疑問に思う記事だよねぇ。
        最初の一行なんか特に、主語がないせいで凄い不自然な文章に感じる。

    • by Anonymous Coward on 2013年09月06日 18時25分 (#2455439)

      「Coverityを使って検査した結果、Coverityを使っているプロジェクトは、
      Coverityを使っていないプロジェクトに比べて、(Coverityが検出した)不具合が少なかった。」

      ってこと?

      親コメント
      • まあそうなんですけれど、そっち向きに理解すると無意味なのに対し、反対向きに「Coverityを使って検査した結果、Coverityを使っていないプロジェクトは、Coverityを使っているプロジェクトに比べて、(Coverityが検出した)不具合が多かった。」と理解すれば、意味のある報告と言えるでしょう。

        というのは、このような対照群との比較をしていなかったとすれば、「そもそもそんな不具合ほとんど発生しねー」だとか「そんな不具合、普通のテスト手法で容易に見つけられるから、リリースバージョンに残ってるわけねー」といった可能性が残っているからです。

        親コメント
      • by Anonymous Coward

        だって製品売りたいじゃん

    • by Anonymous Coward

      チートって言葉、日本のゲーマーはよく使うけど、
      アメリカでは「浮気する」って意味で、とても、とても、とーっても、よく使われる言葉なので、
      なんか女を騙す悪い男、でもモテるんだぜ。ってなイメージがすごくある。

      なのでゲーマーの言うチートも間違いではないんだけど、違和感あるなあ。

      • by SAN0 (45971) on 2013年09月06日 22時09分 (#2455570)

        つまり、あのキリトさんは、そっちの意味でもチーターだったってことですね。

        親コメント
        • by Anonymous Coward

          ラノベで言うチーレム(チート+ハーレム)ってのは
          ハーレムしつつ浮気もする/されるってことか。カオスだな。

      • by Anonymous Coward

        トランプもチートチートいうじゃん

        • by Anonymous Coward

          それはそういうゲームだからw
          ダウト!の変種でチート!って声かける奴だよね。
          懐かしい。向こうにいた頃よくやった。

          本来はチートってそういうズルの意味なのは間違いないよね。
          でも日常語としてはもう、浮気って意味で使われ杉だから
          そっちのイメージが強すぎるんだよね。

          • by Anonymous Coward

            日本でも浮気や不倫が男女間の話として定着してるのと似たようなものですかね。

            • by Anonymous Coward

              まさにそれ!
              よい例えをありがとう。

              不倫ってのも、もともと人の道を外れた行為全般を指す言葉だし今でもその意味が
              失われた訳じゃないけど、みんなが男女のソレのことで使いすぎるから
              もうそのイメージしか浮かばないみたいな。

      • by Anonymous Coward

        アメリカで「浮気する」の意味で使われるのは「チート」ではなく「cheat」。

        • by Anonymous Coward

          わざわざ書かなくても、アメリカ人が「カタカナ」を一般的に使用している可能性を考える人は
          あなたぐらいだから大丈夫。

          • by Anonymous Coward

            #2455352 はカタカナ語と英語の区別が付いていないようだから親切に教えてくれたんでしょ。

            • by Anonymous Coward

              カタカナ語と英語の区別をわかってのうえでの話なのに、
              もったいぶって的外れの指摘をしていることに対する皮肉でしょ。

              • by Anonymous Coward

                本人の後出し出ましたー

      • by Anonymous Coward

        掲示板とかではズルするって意味で普通に見かけますよ

      • by Anonymous Coward

        日本語の「だます」「ずるする」「インチキする」の意味で使われますよ
        浮気の意味しかしらないとすると、相当偏った環境で暮らしてますね。
        ♯騙すの意味から派生してるんで

      • by Anonymous Coward
        いや、学校のテストでずるするのをチーティングとか言うし...
      • by Anonymous Coward

        浮気以外の用法で使うと違和感を感じるのってのは相当に偏ってるけど、
        浮気の意味にしても「でもモテるんだぜ」なんてニュアンスが「すごくある」かなあ。

        • by Anonymous Coward

          #2455626 が「不倫」みたいなもんかって書いてくれてるてど、
          まさにそういうニュアンスを言いたかった。

          不倫って聞いたらなんかオジサンオバサンとかOLと上司とかのイメージわくじゃん?
          本来の意味にはそんなイメージは全然含まれてないのに。
          そういう変なイメージが言葉に染みこんじゃったので、ある意味本来の語源に近い使用をしている
          ゲーマー用語が、逆に違和感を覚えてしまうっていう。

          • by Anonymous Coward

            全然違う、本来の語源も何も日本語の「不倫」と違って英語のcheatは浮気以外の意味で
            今現在普通に良く使われてるでしょうが。

            自分の語感が歪んでるのが分からないなら、
            ネイティブスピーカーの一般的な言語使用が集まってるようなドメインで検索でもしてみたら?
            どのサイトでもいいけど、例えば"cheat site:bbc.co.uk"とかで検索して、検索結果を見てみなよ。
            スポーツやゲーム、試験などにおける不正行為の意味ばっかり出てくるでしょ。

            • by Anonymous Coward

              浮気以外の意味でも使われていることを誰も否定していないんだけど
              誰と戦っているの?
              あと俺らには同じ英語を喋っているように見えるけど、イギリスとアメリカは違う国なんだぜ。

  • なるほど (スコア:4, おもしろおかしい)

    by iwakuralain (33086) on 2013年09月06日 17時55分 (#2455402)

    私も今作っているモノをPythonにすると品質が向上するということかっ!!

    # この世でもっとも信じてはいけないのは自分で書いたコード・・・

  • by Sukoya (33993) on 2013年09月06日 16時55分 (#2455338) 日記

    比較対象の品質が良いソフトウェアとは一体?
    世間的に使いやすいと評価されているソフトウェアはバグが多いという事?

    これだけだと、世間一般に使ってもらえない評価してもらえない様なソフトウェアだから大した機能が無くてバグが少ないとか酷い読み方をしてしまうのでありますが……

    #誰かタレコミを解説するタレコミをお願いしますなんでもしますから。

    • by Anonymous Coward

      タレコミ文を解読する手間かけるくらいなら原文読んだ方が早いよ。

      http://www.eweek.com/developer/open-source-python-code-sets-new-standa... [eweek.com]
      http://www.ciol.com/ciol/news/194520/coverity-python-sets-level-qualit... [ciol.com]

  • by Anonymous Coward on 2013年09月06日 17時03分 (#2455346)

    Coverityのマーケティングですね。
    所詮静的解析で分かる範囲の品質であることも忘れてはいけませんね。

    • by Anonymous Coward

      コードの静的解析だと,pythonのようなインタプリタに対しては
      1000行のコードに対して不具合をたったの0.005個しか見つけられない
      と言うことですね.

  • by Dobon (7495) on 2013年09月07日 9時11分 (#2455733) 日記

    仕様バグを検出するツールが欲しいです。切実に。

    # 静的な分析ツールはなくても困らない。単体テストで発見できるから。
    # 仕様バグは、どうにもならないです。

    --
    notice : I ignore an anonymous contribution.
    • by sindobook (35700) on 2013年09月08日 21時11分 (#2456569)
      人工知能に期待するしかないな。
      そして人工知能が仕様バグを検出できるようになったらSE自体もお払い箱に。
      親コメント
    • by Anonymous Coward

      仕様バグは、 具体的なシミュレーションと早期から外部とのI/Fテストしていくしかないですよねぇ
      仕様バグは土壇場で出てくると、 大きな修正はできないから
      その場しのぎ的な対応しかとれなくなるのがつらいところ。

      ># 静的な分析ツールはなくても困らない。単体テストで発見できるから。
      それでもテストする前に検出できるのは以外と重要かなーとも思いますがね。
      まぁ、 所詮は単なる文法解析という点で結果が中途半端だったりする部分はありますけれど、
      コーディングバグつぶせるのはテストするよりも楽です。

      C/C++だと、コンパイラのチェックを強化するついでにcppcheckくらいは使ってます。
      # gcc -Wall -Wextra とかしたときに、 #include <> は対象外になるようにならないかなぁ
      # サードパーティの警告が大量に出てめんどくさい。

  • by Anonymous Coward on 2013年09月06日 19時25分 (#2455486)

    空行でもなんでも1行とカウントしてるんでしょ
    改行なんてしなくてもプログラムはうごいちゃうし

  • by Anonymous Coward on 2013年09月06日 20時18分 (#2455520)

    UnicodeDecodeError: 'ascii' codec can't decode

  • by Anonymous Coward on 2013年09月07日 1時08分 (#2455659)

    一見すると、確率的には不具合が少ないように見えるが、そもそも比較されている他の処理系に比べると相対的に利用数が少ないので、ベイズ的にいうとうんたらかんたら。

    #適当

  • by Anonymous Coward on 2013年09月07日 1時18分 (#2455663)

    くれぐれも「pythonで描けば品質が上がる」とか勘違いしないように

    • by Anonymous Coward

      from python import fun は止まったまま……
      #あpythonで「描いた」わけじゃないか

typodupeerror

「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」

読み込み中...