From 09248989b870ea8c21338518cffce8a185a78059 Mon Sep 17 00:00:00 2001 From: pluis91 Date: Thu, 5 Mar 2015 22:50:27 +0900 Subject: [PATCH] Improve translation up to "Prefer let-bindings over var-bindings wherever possible" --- README_JP.md | 36 +++++++++++++++++++----------------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/README_JP.md b/README_JP.md index 25464b1..7e6e902 100644 --- a/README_JP.md +++ b/README_JP.md @@ -1,13 +1,13 @@ Swift コーディング規約 -このドキュメントは以下に挙げるゴールを達成するために必要なパターンから構成されています。(順番が大まかな優先順位となっています) +このドキュメントは、以下に挙げる目標を達成できる方法を促進するための試みとして作成されたものです。(大まかな優先度順となっています) - 1. 精密さ・厳格さの向上, プログラマの思い込みによるエラーの減少 - 1. 議論の明瞭性の向上 - 1. 冗長性の減少 - 1. 美学についての議論の削減 + 1. より厳密で、プログラマが誤解する可能性が少ないこと + 1. 意図が明確であること + 1. 冗長さが排除されていること + 1. 美学についての議論が少ないこと -もしおすすめのパターンがあれば[ガイドライン](CONTRIBUTING.md)を読み、プルリクエストを送ってください。:zap: +もし提案があれば、[ガイドライン](CONTRIBUTING.md)を読み、プルリクエストを送ってください。:zap: また、日本語版のこのドキュメントでは Swift 言語仕様翻訳において[詳解Swift](http://www.amazon.co.jp/dp/4797380497)を参考としています。 @@ -15,24 +15,26 @@ Swift コーディング規約 #### 空白 - * タブを使う、スペースではなく - * ファイル終端は改行で - * 空白改行をロジック毎にコードを分けるときは使用する - * 行の末端に空白は残さない - * 空白行のインデント調整は除く + * スペースではなく、タブを使う + * ファイル終端は改行する + * コードをロジック毎に分割するために、空白行を惜しみなく使う + * 行末に空白を残さない + * 空白行でのインデント調整もしない -#### 可能な限り`let`宣言を`var`宣言より優先する +#### 可能な限り`var`宣言よりも`let`宣言を使う -`var foo = …`より`let foo = …`を可能な限り(どちらか迷った時にも)使いましょう。本当に使わないといけない時にだけ`var`を使うようにしましょう。(具体的にはあなたがその値が変わり得ることを*知っている*ときや、`weak`プロパティ修飾子を使っている時などです) +可能な限り(どちらか迷った時にも)`var foo = …`より`let foo = …`を使いましょう。`var`は本当に使わないといけない時にだけ使うようにしましょう。(具体的には、あなたがその値が変わり得ることを*知っている*ときや、`weak`プロパティ修飾子を使っている時などです) -_理由:_ 二つのキーワードの意図と意味が明瞭だからです。*デフォルトでlet*はより安全でより明確なコードを導き出します。 +_理由:_ 二つのキーワードの意図と意味は明瞭ですが、*デフォルトでlet*を使うことは、より安全でより明確なコードになります。 -`let`宣言は、その値が続くことになっており、決して変わらないという*プログラマへの明確なサインとなります。なので、連続的なコードではそれが読む上で強力な手助けとなります。 +`let`宣言は、その変数の値が変わらないとを想定されていて、かつ実際に変わらない +ことを保証すると同時に、それをプログラマに明確に伝えます。そのため、その後に続くコードにおいて、その変数の用途を推測しやすくなります。 -[?]コードの理由付けがより簡単になります。値が決して変わらないかどうか悩んでいる時に使った`var`に対して、あなたはマニュアルでチェックしないといけません。 +コードを論理的に理解するのがより簡単になります。値が決して変わらないと考えているにもかかわらず`var`を使うと、本当に値が変わらないかどうかを手動でチェックしなければいけません。 + +この方法に従うと結果的に、`var`宣言が使われているのを発見した時は必ず、その値が変わり得ると推測したり、その理由を考えることができます。 -[?]よって、いかなる場合でも`var`宣言が使われているのを発見した時はその値が変わると仮定し、なぜなのかを考えながらコードを読むことができます。 #### オプショナル型の開示指定は避ける