Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
1
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

@yamori813

Styleの事

FreeBSDのカーネルソースをいじってPHABRICATORでレビューしてもらってheadにマージしてもらったのですが、Style(9)を何度か指摘されました。

私のコーディングスタイルは、ほぼ一から開発するようなケースはなく、類似のコードをコピーするところから始めます。大昔にシーナ&ロケッツの鮎川誠さんがイベントで、ホームページでJavaScriptを使っている事を聞かれて、「良さそうなページからコピーしてる。ロックの基本はコピーです。」とか言われて、私もロックな気持ちでプログラミングしています。:)

コピーから始めるときにいろいろなコードを見る事がうまくいく手助けになることがあります。SOCのネットワークコードを作ったときにTulip互換なのでdev/deのコードをベースにしようとしてうまくできませんでした。これはdeのコードはいろいろなデバイスのサポートのために、コードの見通しが悪くなっているためです。代わりにsys/mipsにあったコードをベースにしてどうにか作る事ができました。socベースのコードはそのデバイスのみのサポートになるので、比較的見通しが良いコードが多いです。

レビューの話に戻すと、PHABRICATORのツールのarcでもLINTは実行しているようなのですが、それ以上の項目がStyleでは指定されています。具体的に指摘された点は以下の通りです。

  • defineの後の空白はスペースでなくタブで
  • if,forの後には空白を入れる
  • 演算子の前後にも空白を入れる
  • //を使わない
  • 変数の宣言と初期化は別にする
  • 変数定義が無い関数は{の後一行開ける

既存コードにも違反しているものあって、それをコピーして指摘されるとちょっと凹みます。とはいえ、FreeBSDのコードの奇麗さにも貢献している事だと思うので、ちゃんと守っていきたいです。

私の場合、ロシアの方々が指摘してくれたのですが、manを見るよりも指摘された方が理解が早くありがたく思います。

Style対応のlintツールみたいなものがあったら良いのにと思ったりします。

ではでは。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
1
Help us understand the problem. What are the problem?