let url: URL
プロパティの初期化方法において、どのような原理を用いて処理を行なっているのか知りたいです。
#原理といわれても、何を聞きたいのかちょっとよくわかりませんが
let
で宣言されたものは初期化(1度の代入)を必ずしなければなりません。
定数であればそのままlet hoge = 1234
などと書くこともできますが、
今回のようにイニシャライザの引数によって値を変えたいのであれば、
イニシャライザ内でself.url = url
と初期化することもできます。
(大体この2パターンです)
また URL というのはオリジナルの型という解釈であっているのでしょうか?
URLを取り扱う標準クラスです。
https://developer.apple.com/documentation/foundation/url
guard let 文で値がnilではなかった場合に url プロパティに値が入るのは分かるのですが、 guard let 文の右側にある、 URL(string: urlString) の部分が何をしているのか分かりません。
なんと公式リファレンスに何も載っていないという始末です。
https://developer.apple.com/documentation/foundation/url/3126806-init
おそらく文字列をもとにURLクラスを初期化しています。
定義はinit?(string: String)
なので、渡された文字列がURLとして認識できなかった場合はnilが戻るのでしょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。