From cf91f3d147ebd8819a16e2c2e7cb7e1855a15eb2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tetsuaki=20Hamano=20/=20=E6=B5=9C=E9=87=8E=20=E5=93=B2?= =?UTF-8?q?=E6=98=8E?= Date: Sat, 9 Jul 2022 12:42:03 +0000 Subject: [PATCH 1/2] translate contribute/code-refactoring.md --- core/contribute/code-refactoring.md | 40 +++++++++++++++++++++++++++-- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/core/contribute/code-refactoring.md b/core/contribute/code-refactoring.md index a2f9563..dc7a657 100644 --- a/core/contribute/code-refactoring.md +++ b/core/contribute/code-refactoring.md @@ -1,19 +1,55 @@ + +# コードリファクタリング + + + +コードのリファクタリングは、できることだからという理由で行うべきではありません。長い間使用されてきた関数の名前を変更する提案や、より最近に確立されたコーディング標準に準拠する提案など、時間の経過によって開かれた「リファクタリング」チケットは数多くあります。一方で、もっと価値のあるタスクがたくさんあります。ここでは、これらのチケットがレビューの対象となるために必要なガイドラインをいくつか提案します。 + +* **ユニットテスト**。たとえ、そのコードが以前はカバーされていなかったとしてもです。リグレッションは避けるべきであり、これによりテストのカバー率を向上させることができます。 +* 適用前と適用後の**パフォーマンスベンチマーク**。リグレッションは避けるべきです。 +* 変更についての**適切な正当性と明確な根拠**の両方が必要です。多くの場合、これらのパッチの目的、目標、またはフォーカスを決定することはできません。可読性、個人的な狭い意見、一般的な主観などを口実として、コードを書き換えるべきではありません。 + + + +これらが守られないと、レビュアーやコミッターの気が散ってしまい、費やすべき重要な注意力や集中力が削がれてしまいます。 + +またコードのリファクタリングによって、より重要な既存のパッチが不必要に古くなる可能性もあります。 + + + +Linux カーネルへの貢献に関する文書に、コーディング標準を扱う際の[落とし穴に関するセクション](https://dri.freedesktop.org/docs/drm/development-process/4.Coding.html#coding-style)があります。これは、リファクタリングという広い視野にも適用されると思います (重要)。 + + +> カーネルは長い間、Documentation/CodingStyle に記述された標準的なコーディングスタイルを持っていました。その多くの期間、このファイルに記述されたポリシーは、せいぜい勧告的なものとして扱われてきました。このようなコードの存在は、カーネル開発者にとって2つの独立した危険性をもたらします。 +> +> **これらのうち最初のものは、カーネルのコーディング規約は重要でなく、強制されるものではないと信じてしまうことです。もう一つの罠は、すでにカーネルにあるコードについて、早急にコーディングスタイルを修正する必要があると思い込んでしまうことです。** + + -That said, we want to be internally consistent and follow our own rules. Code is poetry, and our code should be beautiful. \ No newline at end of file +とはいえ、内部的には一貫性を保ち、自分たちのルールに従いたいものです。コードは詩であり、私たちのコードは美しくあるべきです。 From ccb7f5c76725c5bf1d81a4cc656d462b7118bf19 Mon Sep 17 00:00:00 2001 From: Aki Hamano <54422211+t-hamano@users.noreply.github.com> Date: Wed, 27 Jul 2022 20:49:20 +0900 Subject: [PATCH 2/2] Update core/contribute/code-refactoring.md --- core/contribute/code-refactoring.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/contribute/code-refactoring.md b/core/contribute/code-refactoring.md index dc7a657..a13b533 100644 --- a/core/contribute/code-refactoring.md +++ b/core/contribute/code-refactoring.md @@ -36,7 +36,7 @@ In addition, code refactoring can cause existing, more important patches to unne There’s a document on contributing to the Linux kernel with [a section on pitfalls](https://dri.freedesktop.org/docs/drm/development-process/4.Coding.html#coding-style) when handling coding standards. I believe this can apply to the wider picture of refactoring as well (emphasis added): --> -Linux カーネルへの貢献に関する文書に、コーディング標準を扱う際の[落とし穴に関するセクション](https://dri.freedesktop.org/docs/drm/development-process/4.Coding.html#coding-style)があります。これは、リファクタリングという広い視野にも適用されると思います (重要)。 +Linux カーネルへの貢献に関する文書に、コーディング標準を扱う際の[落とし穴に関するセクション](https://dri.freedesktop.org/docs/drm/development-process/4.Coding.html#coding-style)があります。これは、リファクタリングという広い視野にも適用されると思います (強調は引用者)。