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

SoftEther VPNのソースコードがGPLv2で公開される」記事へのコメント

  • by annoymouse coward (11178) on 2014年01月06日 16時11分 (#2522684) 日記

    ソースコードをざっと眺めました.第一印象としては
    - ソースコードが冗長.長い!
    - コメントが英語で書かれているが文法の誤りが多い
    点が気になりました

    たとえば
    http://ja.softether.org/@api/deki/files/679/=sourcecode.png [softether.org]
    に例示されているたった20行のソースコードでも
    IPV4_GET_FLAGS(ip) & 0x01 を直接評価する行もあれば,その後 last_packet 変数に代入する行もあったりで
    全体的に冗長です

    プロトコルやパケットは実装側のことも考えてデザインされているので,
    そのデザインを正しく理解できれば,多分ソースコードは今の半分ぐらいの行数で簡潔に実装出来ると思います

    • by Egtra (38265) on 2014年01月06日 23時32分 (#2522931)

      - コメントが英語で書かれているが文法の誤りが多い

      これについては、今回の公開に当たり英訳したそうなので、ある程度は仕方ないことだと思います。

      親コメント
    • by Anonymous Coward

      評論家は偉大なり。自分で作れずとも批評ができるから。

      • by Anonymous Coward on 2014年01月06日 16時28分 (#2522704)

        匿名の臆病者は偉大なり。自分でソースが読めずとも批判ができるから。

        公表されてから今までの短時間で冗長な大規模コードを「ざっと見て」
        ある程度の判断ができる時点でプログラムのできる人だと推測できるのですが。
        少なくとも自分には(読むのも書くのも)無理です。

        親コメント
      • by Anonymous Coward on 2014年01月06日 17時49分 (#2522767)
        改善案を出したら批評家以上になれますかね。

        例えば、IPV4_GET_OFFSET(ip)が0でなくて、IPV4_GET_FLAGS(ip)の1ビット目のフラグが立ってる場合、
        「フラグメントが起こっていない」にもかかわらず「フラグメント中のどこか途中」という
        矛盾のあるパケットを意味しそうですが、そのエラーチェックはありませんね。
        IPは詳しくないので、そういう不正な(?)パケットの処理をどうすべきか正確には分かりませんが、もやもやします。
        他の部分との兼ね合いで絶対に起こらないのであれば、両方をチェックする必要はありませんし。

        あとは、0x01を何かの定数にしておいて欲しいな、とかも。

        とにもかくにも動作するすごい者を作れる人はすごいんですが、
        作ったあとのメンテナンス性やらなにやらと、プログラミング坂はそこからもまだまだ長いので。
        親コメント
      • by Anonymous Coward

        評論家は偉大なり。自分で作れずとも批評ができるから。

        よく見なきゃダメだろ?
        あなたは「Anonymous Coward」。対して、元コメントは「anonymous coward」というID持ち。

        ※私もAnonymous Coward

        なんで、ソースをざっくり変えてくれるんですよ……期待しています > anonymous coward

        • by Anonymous Coward

          よく見なきゃダメだよ。
          揚げ足とってすまんけど、わざわざ名前を間違えるのは失礼だよ
          > by annoymouse coward

      • by Anonymous Coward

        ソースレビュー全否定?

        • by Anonymous Coward

          「ボクなら半分で書けるもん」をソースレビューとは言わない。

          • by Anonymous Coward

            そもそも、SoftEtherくらい大きなソフトウェアをコードレビューして
            コード汚いだとか冗長だとか細部の体裁の指摘に走るあたりがピント外れというか…。

    • by Anonymous Coward

      この人の書いたコードって、短いけど読みにくそう。

      • by Anonymous Coward

        半分とか大きく出たよなと思うわ。流石にじゃあやってみなと言いたいレベル。
        コメント削ってほら半分とかじゃないこと願うよ。

        • by Anonymous Coward

          >半分とか大きく出たよなと思うわ。流石にじゃあやってみなと言いたいレベル。

          当然、ソースコードを読んだ上で発言してるのですよね。

          # 出る杭を叩くだけのACの多さに辟易する今日このごろ。

          • by Anonymous Coward

            ソースコードにケチをつけるだけの人を「出る杭」とは褒め過ぎだと思う。

      • by Anonymous Coward

        少なくとも例に出ていた20行のコードを見ても、#2522684で書かれている通り、
        『同一のものを複数(この場合は2つ)の表現で記述』していますから、『冗長だ』
        『分かり辛い』と思われても仕方がないかと。
        # それ以外にも、直値を出している時点で危険な気がしますけど…。

        #2522684のannoymouse cowardさんがどのようなコードを書かれるか知らない
        のですが、該当箇所については、より読みやすい事が期待できる気がします。
        # ソースをまだ見てませんので、半分になるかどうかは不明ですが。

        # 短くすると読みづらいと言う妄想を捨てると幸せになれるかも知れませんよ。
        # もちろん長ければ良いと言うものでもありません。
        # 何にせよ『分かりやすくて読みやすいのが一番』です。

    • by Anonymous Coward

      期待してます。
      来週くらいにはできますよね?

      • by Anonymous Coward

        現時点で来週ぐらいに出来ると見積もれるのであれば、あなたの方が適任では?

    • by Anonymous Coward

      gitなんで、Forkして普通に修正してPull Req送ってもいいのですよ?

    • by Anonymous Coward

      案の定ツリー荒れてますね…。

      僕にもわかった!ここ冗長!みたいなコーディングの指摘1箇所でもって
      「多分ソースコードは今の半分ぐらいの行数で簡潔に実装出来ると思います」
      と豪語されたら、経験的にアチャーと感じる人たちは多いでしょうな。

      • by Anonymous Coward

        そうですね。
        でも、もし高い確度で「出来ると思います」と言えるだけのソースに目を通していても、
        ここに例としてあげるのは、外からよく目立つ部分だけになるのでは。

        だから、「指摘1箇所でもって(中略)豪語されたら」ではないかも。

        ・・・と考えましょうよ。

        • by Anonymous Coward

          このツリー大本のIDはなんでも煽っていくスタイルの困った方なんで、そこも吟味しなさいな。

          • by Anonymous Coward

            >このツリー大本のIDはなんでも煽っていくスタイルの困った方なんで、そこも吟味しなさいな。

            結構大きくなったこのツリーだが、
            実際にコードを読んだうえで発言したのは、
            その大本のIDだけなのだが、
            このことをどう思うか?

            • by Anonymous Coward

              × 実際にコードを読んだうえで発言したのは、その大本のIDだけ
              ○ 実際にコードを読んだと言い張っているのは、その大本のIDだけ

      • by Anonymous Coward

        同感です。
        アイデアをもとに具体的なコードを書いたのですから、
        はじめに具体化したことへの敬意があってもいいかな、と思います。

    • by Anonymous Coward

      文法の誤りなんかいちいち気にしてたら英語のOSSプロジェクトにcontributeなんかできねえよ! (血涙
      どうせ読む方だって英語ネイティブとは限らないからいいんだよ! (開き直り

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

処理中...