New document that describes Swift 1.0, Apple’s new programming language for building iOS and OS X apps.
iOSおよびOS Xアプリ構築のためのAppleの新しいプログラミング言語、スウィフト 1.0を解説する新しい文書。
Added a new section about Initializer Requirements in protocols.
プロトコルにイニシャライザ要件についての新しい節を加えました。
Added a new section about Class-Only Protocols.
クラス専用プロトコルについての新しい節を加えました。
Assertions and Preconditions can now use string interpolation. Removed a note to the contrary.
表明と前提条件は今では文字列補間を使うことができます。これに反する注意書きを取り除きました。
Updated the Concatenating Strings and Characters section to reflect the fact that String
and Character
values can no longer be combined with the addition operator (+
) or addition assignment operator (+=
). These operators are now used only with String
values. Use the String
type’s append(_:)
method to append a single Character
value onto the end of a string.
文字列と文字の連結節をString
とCharacter
値はもはや加算演算子(+
)または加算代入演算子(+=
)を使って結合されることができないという事実を反映するために更新しました。これらの演算子は今ではString
値でのみ使用されます。String
型のappend(_:)
メソッドを単一のCharacter
値を文字列の終わりに加えるために使ってください。
Added information about the availability
attribute to the Declaration Attributes section.
availability
属性についての情報を宣言属性節に加えました。
Optionals no longer implicitly evaluate to true
when they have a value and false
when they do not, to avoid confusion when working with optional Bool
values. Instead, make an explicit check against nil
with the ==
or !=
operators to find out if an optional contains a value.
オプショナルはもはや暗黙的に、それが値を持つときtrue
に、そしてそれがそうしないときfalse
に評価されません、それによってオプショナルBool
を扱うときの混乱を防ぐためです。その代わりに、nil
に備えて、==
または!=
演算子を使ってオプショナルが値を持つかどうか確認するために明示的に調べてください。
Swift now has a Nil-Coalescing Operator (a ?? b
), which unwraps an optional’s value if it exists, or returns a default value if the optional is nil
.
スウィフトは今やnil合体演算子(a ?? b
)をもちます、それはあるオプショナルの値を、もしそれが存在するならばアンラップします、またはそのオプショナルがnil
ならばある省略時の値を返します。
Updated and expanded the Comparing Strings section to reflect and demonstrate that string and character comparison and prefix / suffix comparison are now based on Unicode canonical equivalence of extended grapheme clusters.
節文字列を比較するを更新および拡張して、文字列および文字比較と接頭辞/接尾辞比較が今では拡張書記クラスタのユニコード正準等価に基づかれることを反映し例示しました。
You can now try to set a property’s value, assign to a subscript, or call a mutating method or operator through Optional Chaining. The information about Accessing Properties Through Optional Chaining has been updated accordingly, and the examples of checking for method call success in Calling Methods Through Optional Chaining have been expanded to show how to check for property setting success.
あなたは今ではオプショナル連鎖を通して、プロパティの値を設定する、ある添え字に代入する、または可変メソッドまたは演算子を呼び出すことを試みることが出来ます。オプショナル連鎖を通してプロパティにアクセスするについての情報はそれを受けて更新されました、そしてオプショナル連鎖を通してメソッドを呼び出すの中のメソッド呼び出しがうまくいったかを確認する例は拡張されて、プロパティの設定がうまくいったかを確認する方法を示します。
Added a new section about Accessing Subscripts of Optional Type through optional chaining.
オプショナル連鎖を通してオプショナル型の添え字にアクセスすることについての新しい節を加えました。
Updated the Accessing and Modifying an Array section to note that you can no longer append a single item to an array with the +=
operator. Instead, use the append(_:)
method, or append a single-item array with the +=
operator.
節配列へのアクセスと変更を更新して、あなたがもはや単一の項目を+=
演算子を使って配列に加えることが出来ないことを注記しました。その代わりに、append(_:)
メソッドを使ってください、または単一項目の配列を+=
演算子を使って加えてください。
Added a note that the start value a
for the Range Operators a...b
and a..<b
must not be greater than the end value b
.
範囲演算子a...b
とa..<b
のための開始値a
が終了値b
より大きくてはならないことの注意を加えました。
Rewrote the Inheritance chapter to remove its introductory coverage of initializer overrides. This chapter now focuses more on the addition of new functionality in a subclass, and the modification of existing functionality with overrides. The chapter’s example of Overriding Property Getters and Setters has been rewritten to show how to override a description
property. (The examples of modifying an inherited property’s default value in a subclass initializer have been moved to the Initialization chapter.)
章継承を書き直して、それの前置きのイニシャライザのオーバーライドを扱った部分を取り除きました。この章は、今やサブクラスにおける追加された新しい機能性、そしてオーバーライドを使った既存の機能性の変更にもっと焦点を当てられます。この章のプロパティゲッターとセッターのオーバーライドの例は書き直されて、description
プロパティをオーバーライドする方法を示します。(サブクラスのイニシャライザの継承されたプロパティの省略時の値を修正する例は章初期化に移動されました。)
Updated the Initializer Inheritance and Overriding section to note that overrides of a designated initializer must now be marked with the override
modifier.
節イニシャライザの継承とオーバーライドを更新して、指定イニシャライザのオーバーライドは今やoverride
修飾子で印付けされなければならないことを注記しました。
Updated the Required Initializers section to note that the required
modifier is now written before every subclass implementation of a required initializer, and that the requirements for required initializers can now be satisfied by automatically inherited initializers.
節必須イニシャライザを更新して、required
修飾子が今やすべてのサブクラス実装の必須イニシャライザの前に書かれること、そして必須イニシャライザのための必要条件は今や自動的に継承されるイニシャライザで満たされることが出来るのを注記しました。
Infix Operator Methods no longer require the @infix
attribute.
接中辞演算子メソッドはもはや@infix
属性を必要としません。
The @prefix
and @postfix
attributes for Prefix and Postfix Operators have been replaced by prefix
and postfix
declaration modifiers.
接頭辞および接尾辞演算子のための@prefix
と@postfix
属性は、prefix
とpostfix
宣言修飾子によって置き換えられました。
Added a note about the order in which Prefix and Postfix Operators are applied when both a prefix and a postfix operator are applied to the same operand.
接頭辞および接尾辞演算子の両方が同じ演算数に適用される時に、接頭辞および接尾辞演算子が適用される順番についての注記を加えました。
Operator functions for Compound Assignment Operators no longer use the @assignment
attribute when defining the function.
複合代入演算子のための演算子関数は、もはや関数を定義する時に@assignment
属性を使いません。
The order in which modifiers are specified when defining Custom Operators has changed. You now write prefix operator
rather than operator prefix
, for example.
あつらえの演算子を定義する時に修飾子が指定される順番は変更されました。あなたは今や、例えば、operator prefix
ではなくprefix operator
と書きます。
Added information about the dynamic
declaration modifier in Declaration Modifiers.
宣言修飾子においてdynamic
宣言修飾子についての情報を加えました。
Added information about how type inference works with Literals.
型推論がリテラルで働く方法についての情報を加えました。
Added more information about curried functions.
カリー化関数についての更なる情報を加えました。
Added a new chapter about Access Control.
新しい章をアクセス制御について加えました。
Updated the Strings and Characters chapter to reflect the fact that Swift’s Character
type now represents a single Unicode extended grapheme cluster. Includes a new section on Extended Grapheme Clusters and more information about Unicode Scalars and Comparing Strings.
文字列と文字の章を、スウィフトのCharacter
型が今や単一のユニコード拡張書記素クラスタを表わすという事実を反映するために更新しました。拡張書記素クラスタに関する新しい節そしてユニコード・スカラーと文字列を比較するについての更なる情報を含めました。
Updated the String Literals section to note that Unicode scalars inside string literals are now written as \u{n}
, where n
is a hexadecimal number between 0 and 10FFFF, the range of Unicode’s codespace.
文字列リテラルの節を更新して文字列内部のユニコード・スカラーが今や\u{n}
のように書かれることを記しました、ここでn
は0から10FFFまでの16進数、ユニコードの符号空間です。
The NSString
length
property is now mapped onto Swift’s native String
type as utf16Count
, not utf16count
.
NSString
のlength
プロパティは現在ではスウィフトの生粋のString
型とutf16Count
として対応づけられます、utf16count
ではなく。
Swift’s native String
type no longer has an uppercaseString
or lowercaseString
property. The corresponding section in Strings and Characters has been removed, and various code examples have been updated.
スウィフトの生粋のString
型はもはやuppercaseString
またはlowercaseString
プロパティを持ちません。文字列と文字の中の関連する節は削除されました、そしてさまざまなコード例が更新されました。
Added a new section about Initializer Parameters Without Argument Labels.
引数ラベルなしのイニシャライザ・パラメーターについての新しい節を加えました。
Added a new section about Required Initializers.
必須イニシャライザについての新しい節を加えました。
Added a new section about Optional Tuple Return Types.
オプショナルタプルの戻り型についての新しい節を加えました。
Updated the Type Annotations section to note that multiple related variables can be defined on a single line with one type annotation.
型注釈の節を更新して複数の関連する変数が1行だけで1つの型注釈で定義されることが出来ることを記しました。
The @optional
, @lazy
, @final
, and @required
attributes are now the optional
, lazy
, final
, and required
Declaration Modifiers.
@optional
、@lazy
、@final
、そして@required
属性は今やoptional
、lazy
、final
、そしてrequired
宣言修飾子です。
Updated the entire book to refer to ..<
as the Half-Open Range Operator (rather than the “half-closed range operator”).
..<
を半開範囲演算子と言うように本全体を更新しました(「半完結範囲演算子」ではなしに)。
Updated the Accessing and Modifying a Dictionary section to note that Dictionary
now has a Boolean isEmpty
property.
辞書へのアクセスと修正の節を更新してDictionary
が今やブールのisEmpty
プロパティを持つことを記しました。
Clarified the full list of characters that can be used when defining Custom Operators.
あつらえの演算子を定義するとき使われることが出来る文字の完全なリストをわかりやすくしました。
nil
and the Booleans true
and false
are now Literals.
nil
とブールのtrue
およびfalse
は現在リテラルです。
Swift’s Array
type now has full value semantics. Updated the information about Mutability of Collections and Arrays to reflect the new approach. Also clarified the Assignment and Copy Behavior for Strings, Arrays, and Dictionaries.
スウィフトのArray
型は現在は完全な値意味論を持ちます。新しい取り組み方を反映するために、コレクションの可変性および配列についての情報が更新されます。また文字列、配列、および辞書のための代入およびコピーの挙動がわかりやすくされました。
Array Type Shorthand Syntax is now written as [SomeType]
rather than SomeType[]
.
配列型の短縮形構文は、現在は[SomeType]
のように書かれます、SomeType[]
ではなく。
Added a new section about Dictionary Type Shorthand Syntax, which is written as [KeyType: ValueType]
.
辞書型の略記構文についての新しい節を加えました、それは[KeyType: ValueType]
のように書かれます。
Added a new section about Hash Values for Set Types.
Set型のためのハッシュ値についての新しい節を加えました。
Examples of Closure Expressions now use the global sorted(_:_:)
function rather than the global sort(_:_:)
function, to reflect the new array value semantics.
クロージャ式の例は、現在はグローバルなsorted(_:_:)
関数を、グローバルなsort(_:_:)
関数のかわりに使用します、それによって新しい配列値意味論を反映します。
Updated the information about Memberwise Initializers for Structure Types to clarify that the memberwise structure initializer is made available even if a structure’s stored properties do not have default values.
構造体型のためのメンバー関連イニシャライザについての情報が更新されて、メンバー関連の構造体初期化子が、ある構造体の持つ格納プロパティが省略時の値を持たなくてさえも、利用可能にされることをわかりやすくされました。
Updated to ..<
rather than ..
for the Half-Open Range Operator.
半開範囲演算子に対して..
ではなく..<
に更新しました。
Added an example of Extending a Generic Type.
総称体型を拡張するの例を加えました。