マガジンのカバー画像

Swiftでいこう!

585
楽しくプログラミング!Swiftはなんだか楽しい"ことば"です。
運営しているクリエイター

2018年9月の記事一覧

Swiftでいこう!-- tuple!

tupleは配列でもない、辞書でもないデータをまとめて管理、便利に使うものです。あくまでも一時的に使うものです。 例えば let foo = ("ホットドック",10) のようにひとまとめにしてわかりやすくします。型推論しますが、型宣言しても良いです。 let foo:(String:Int) = ("ホットドック",10) そして便利な使い方。 switch文でcaseをtupleで使うことができます。 var day = (1,1)switch day {c

Swift4.2Released!--Hashable!

Hashableプロトコルは、Equatableプロトコルから継承します。4.1では Hashableに準拠するためには'=='演算子関数と'hashValue'プロパティを加えます。 Swift 4.1で導入されたコンパイラ合成EquatableおよびHashable準拠により、書かなければならない手動のHashable実装の数が多かった。 4.2ではhash(into:)実装において、combine(_:)をその提供されたHasherインスタンスを作ります。大幅に手

Swift4.2Released!-- Random!

これまでSwiftでランダム値を生成するには、arc4random_uniformなどを使ってきました。 問題として ・C のAPIを直接使っていた。 ・クロスプラットフォーム開発では使うときは自分で用意しないといけない があったみたいです。 4.2ではスタンダードライブラリに追加されました。 乱数を生成するためには、 Int.random(in: 1...1000)UInt8.random(in: .min ... .max)Double.random(in:

Swift4.2Released!-- CaseIterable!

Swift 4.1ではでenum caseのコレクションにアクセスできませんでしたが、4.2ではCaseIterableプロトコルが定義され使えるようになりました。新しくarrayを自動で作り、allCaseプロパティが使えるようになり操作が出来るようになりました。 enum Terrain: CaseIterable { case water case forest case desert case road} Terrain.allCases とする

Swift4.2Released!--Sequence method

・last(where:), lastIndex(where:), lastIndex(of:)が追加 ・ index(of:) とindex(where:) が firstIndex(of:) とfirstIndex(where:)にメソッド名が変更 ・RangeReplaceableCollection プロトコルに removeAll(where:) が追加 last(where:), lastIndex(where:), lastIndex(of:)については最

Swift4.2 Released!-- allSatisfy

Arrayなどで「全ての要素が条件を満たすかどうか」を取得するためのものです。 今まではcontains(where:)を使っていたのですがシンプルにallSatisfyを使えば実現できるようになりました。 let digits = 0...9let areAllSmallerThanTen = digits.allSatisfy { $0 < 10 }areAllSmallerThanTen // true となるのです。 $0 < 10  では10より小さい数字

Swift4.2 Released!-- Bool.toggle

ということで追加された部分を見ていきましょう。 Playgroundで説明があります。(Playground: What’s new in Swift 4.2) 上記サイトからPlaygroundsファイルがダウンロードできるので試しながらやっていきましょう。 まずは、Bool.toggleについてですが、これはBoolのextensionとして追加されました。簡単に説明するとBool値(true:真、false:偽)を簡単に反転させことができるようになりました。 s

iOSDC 2018

iOSDC JapanはiOS関連技術をコアのテーマとした技術者のためのカンファレンスです。 ということで、2018年8月30日(木)〜9月2日(日)に早稲田大学 理工学部西早稲田キャンパス63号館でおこなわれました。 まとめがでてきたのでこちらに投稿します。 すごい数のセッションですねー。いやー、行って見たい!ほんとiOS関連のお祭りですね。すごい!