読者です 読者をやめる 読者になる 読者になる

なっく日報

技術やら生活やらのメモ

@authorをソースコードの冒頭に書くのはやめた方がいいかも

※ タイトルと本文の「行頭」を「冒頭」に修正

特にJavaのプロジェクトとかだとそうだと思うんですが、

ソースコード行頭冒頭に↓みたいに書くことが多いかと思います。

/**
 *  何かのクラス  
 *
 *  @author Yuki Darake <nac@example.com>
 */

だがしかし、この@authorの部分は不要なんじゃという考えに至ったので、その経緯を。

何でこれまでは書いていたの?

↓の達人プログラマーに影響を受けて。

達人プログラマー―システム開発の職人から名匠への道

達人プログラマー―システム開発の職人から名匠への道

  • 作者: アンドリューハント,デビッドトーマス,Andrew Hunt,David Thomas,村上雅章
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2000/11
  • メディア: 単行本
  • 購入: 42人 クリック: 1,099回
  • この商品を含むブログ (350件) を見る

画家とか、アーティストが自分の作品にサインするように、プログラマソースコードが自分の作品なのだから、誇りをもって、サインするべきと 書いてあったと思います。

それと、Eclipse的なIDEが勝手に@authorを入れてくれるということも理由としてあるかもしれません。

何で書かなくてよいと思ったの?

↓のTeam Geekを読んで。

Team Geek ―Googleのギークたちはいかにしてチームを作るのか

Team Geek ―Googleのギークたちはいかにしてチームを作るのか

その中の【2.8.2 ソースコードに名前を書く(別名:「Authorタグ」問題)】という項目を読んで。

  • 絵画とか映画とかの作品とは違い、ソフトウェアは変更され続ける
  • 別の人がソースコードを修正する際に@author足すの?等、ルール決めで困る(所有権を主張しているみたいで気を遣う)
  • ソースコードレベルではなく、プロジェクトレベルでクレジットをつけるべき
  • 誰が修正したかはGit等のVCSで追うべし

的なことが書いてありました。

受託開発メインの時代なら

  • 1ファイルを複数人で触ることがない
  • 一旦納品したら、ほとんど変更されない

ということで、@author入れるのもありだったかもしれないですが、 サービスを複数人で開発して、どんどん機能を改善して・・・みたいな今どきの開発には合わないなと気付きました。

まとめ

そんなこんなで、今後は@author書かないという方針でやっていこうかと思います(SIとかに行かない限りは😜)