サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
世界禁煙デー
qiita.com/ezura
ドキュメントから漏れている予約語もあるため、下記情報を統合してカウントしています。 The Swift Programming Language (Swift 5) Lexical Structure The Swift Programming Language (Swift 5) Summary of the Grammar https://github.com/apple/swift/blob/main/utils/gyb_syntax_support/Token.py https://github.com/apple/swift/tree/main/lib/Parse 宣言 (declarations) 型、変数、定数、メソッド、関数などの宣言部分で使用する予約語 actor [Swift 5.5~] Swift の型の種類の一つである Actor 型を宣言します。 actor Sa
iOS13 からシェアシートが変わりましたね。変化の一つとして、シェアするアイテムのプレビューが追加されています。素晴らしい機能です。 その一方で、アプリ開発者にとっては新たな刺客ともいえるでしょう。 このプレビューは開発者が望む望まないに関わらず表示されます。しかも、何も対策をしないとユーザにとって違和感のある表示になってしまうことがあります。 この記事では、UIActivityViewController を用いたシェア画面上のプレビューを操作・カスタマイズする方法を紹介します1。プレビューは一見奇妙な動きをしますし実装に関する情報も少ないのですが、ここで紹介する 2 つのポイントを把握しておけば簡単に扱えるようになります。 プレビューの動作 まず、基本的な挙動を確認してみましょう。 web 上の URL をシェアする場合やファイルパスを指定してデータをシェアする場合などは、特に対応し
この記事は Swift Advent Calendar 2017 の 3 日目の記事です。 本記事では、よく提案されるけれど採用されなかった仕様とその理由、そして、そこから読み取れる Swift の設計方針を紹介します。 主なソースはapple/swift-evolution 内の Commonly Rejected Changes とswift-evolution のメーリングリストのログです。 リジェクトされた提案 Array の範囲外にアクセスした際に nil を返す 前提 Swift では配列(Array)の範囲外に添え字でアクセスすると実行時エラーになります。 リジェクト理由 理由は 2 点挙げられています。 1. 範囲外アクセスはロジックエラーである 「subscript は入力に前提条件があり、それが満たされていない場合の回復処理を動的にさせるべきではない」という考えのようで
他バージョン Swift5 全予約語 (109語) の解説 参考 ドキュメントから漏れている予約語もあるため、下記情報を統合してカウントしています。 The Swift Programming Language (Swift 4) Lexical Structure The Swift Programming Language (Swift 4) Summary of the Grammar https://github.com/apple/swift/include/swift/Syntax/SyntaxKinds.def 宣言 (declarations) クラス、変数、定数、メソッド、関数などの宣言部分で使用する予約語 class 場所によって意味が異なります。 クラスの宣言や、メソッドやプロパティの前に指定することでクラスメソッド、クラスプロパティの宣言をします。 class Sa
今、Swift2 で書いている同胞達へ。最低限やっておきたい、Swift2 のままで始める Swift3 対策Objective-CiOSSwift Xcode8.2 を最後に Swift2 のサポートが終わりますね。Swift3 に移行祭りの季節が近づいてまいりました。 実は、Swift2 のコードを Swift3 に書き換え始めて 1 週間。まだお祭りしてます。 Xcode のマイグレーションツールは暴君です。 標準ライブラリだけでなく、自分たちで定義した変数名や列挙子などなど、問答無用で API デザインガイドラインに則った形に変換します。 完全に置き換えしてくれるならまだしも、修正箇所が多いと変換が中途半端になります。 また、当然、RxSwift などのライブラリの変更部分の修正は自分でやらなくてはなりません。 でも、大丈夫です。今から戦う準備をしておけます。 Swift2 のうち
Swift3 に合わせて Swift2 全予約語 (82語) の解説 をまとめ直しました。 Swift4 はこちら Swift4 全予約語 (98語) の解説 宣言 (declarations) クラス、変数、定数、メソッド、関数などの宣言部分で使用する予約語 class クラスの宣言や、メソッドやプロパティの前に指定することでクラスメソッド、クラスプロパティの宣言をします。 class Sample { var member = 1 } let a = Sample() let b = a a === b // -> true (指すものは同じ) a.member = 2 b.member // -> 2
let quiz = Quiz() quiz.chameleon // ❗️error: ambiguous use of 'chameleon' quiz.chameleon as Int // 1 quiz.chameleon as String // "string" quiz.chameleon as UIColor // UIDeviceRGBColorSpace 0 1 0 1 (UIColor.greenColor())
今回は、「使うまでに初期化されていることが保証できる + defer = 最後までに絶対に値が指定される」を用いて、処理の意図をコンパイラ(処理系)に保証させたリファクタリング例です。 この記事のおすすめの読み方 1. before の例を見て、その処理が何をしたいのか概要を読み取る 2. after を見て before との印象の違いをみてみる 例 var state: State = .Normal func reload() { state = .Loading guard /* condition */ else { state = .Normal return } // do somethig guard /* condition */ else { state = .Error return } // do somethig state = .Normal } var sta
label.text = { if /* condition */ { return "a" } else if /* condition */ { return "b" } else { return nil } }() この処理の意味するところは「label.text の値を条件に応じて設定している」なのですが、before の場合、「何か条件分岐してるな」などの伝えたいことの本質とは少し外れたステップを読み手に"最初"に考えさせてしまいがちです。 「ぞれぞれの条件のとき、何がおきるのかな」→「なるほど。label.text の値を設定しているのだろう。いや、もしかして、label.text ではないものに対しての処理も紛れてないか?」→「紛れもなく、label.text の値を設定しているのだ」と、心配させてしまうかもしれません。 一方、after のようにすると、その処理群が何をし
Swift3 はこちら Objective-C にはないもの、break や case などの Objective-C にはなかった機能を持つものなど、予約語を追ってみると面白い知識にたくさん巡り逢えます! (個人的には indirect が一番好きです!) 文脈による違いなど、調べきれなかった部分もあると思います。もれ、誤り等ございましたら、ご指摘いただけると大変助かります。 また、「こんな機能もある」「こう使うと便利」などもコメントいただけると嬉しいです! swift tutorial に書いてあるような基礎的なことは簡潔に済ませますのでご了承ください。 よろしくお願いいたします。 class, deinit, enum, extension, func, import, init, inout, internal, let, operator, private, protocol,
playground 内に Resources というディレクトリがあるので、そこにファイルを置いてあげればアクセスできます! ディレクトリがない場合 Resources ディレクトリがない場合は作りましょう。
NSURLConnection.sendAsynchronousRequest(request, queue: NSOperationQueue.mainQueue()) { (response, data, error) -> Void in 何か処理 }
関東で定期的に開催されるもくもく会を言語ごとに紹介します。(2014/12/1 現在) 多数存在するとは思いますが、まずは参加したことのある会と参加を目論んでいる会を中心に書きます。 間違い等ございましたらご指摘いただけると助かります。 開催頻度や時間などは現在(2014/12/1)見た感じで記入しています。また、場所が変更になることもあります。正確な情報はリンク先でご確認ください。 他にも良いもくもく会情報がありましたら教えていただけると幸いです。 よいもくもくライフを! 全般 (複数言語) まったりもくもく会 場所: 渋谷 (or 国分寺) 日時: 不定期 開催頻度: 1 回/月 が目標 設備: Wi-Fi, 電源 備考: 主催してます。居心地良い雰囲気を目指してます。ところどころPHPで何か作ろう会をパクります。 もくもく会@ギークハウス国分寺 場所: 国分寺 日時: 第 2 日曜日
このページを最初にブックマークしてみませんか?
『@ezuraのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く