2018-12-31

Swift の Protocol Extension で save(_ models: Sequence<Model>) みたいなことをやる

前提あるいは Array 版

Swift でシンプルな Protocol を用意して...

protocol ModelType: Hashable {}
protocol Repository {
    associatedtype Model: ModelType
    func save(_ models: [Model])
}

これらのプロトコルに適合するモデルとリポジトリーを作ってみる。

// MARK: - モデル  
struct Book: ModelType {
    let title: String
}

// MARK: - リポジトリー
extension Repository {
    func save(_ models: [Model]) {
        models.forEach { model in
            print(model)
        }
    }
}

struct BookRepository: Repository {
    typealias Model = Book
}

今回は Book モデルと BookRepository を作ってみた。Repository Protocol の save メソッドは Protocol Extension で実装した。中身はダミー。ちゃんとやるなら、Dictionary を使ったメモリー・キャッシュか Realm 等を使ったディスク・キャッシュの実装を書くことになると思う。

これらのメソッドの使い方は次の通り:

let array = [ Book(title: "book 1"), Book(title: "book 2"), ]
let repository = BookRepository()
repository.save(array)

Set でも使いたい

さて、時には Array ではなく Set を使いたいケースがある。その場合の使い方は次の通り:

let set: Set = [ Book(title: "book 3"), Book(title: "book 4"), ]
let repository = BookRepository()
repository.save(Array(set))

Repository の save メソッドは Array しか受け付けないので、Set から Array に変換する手間がかかる。

この変換をなくしたい。Array とか Set とか気にせず使いたい。そんなことは可能だろうか?

Set 用のメソッドを用意する

Swift は型を厳密に区別するので、Set 用のメソッドを用意してみる。

protocol Repository {
    associatedtype Model: ModelType
    func save(_ models: [Model])
    func save(_ models: Set<Model>)
}
extension Repository {
    func save(_ models: [Model]) {
        models.forEach { model in
            print(model)
        }
    }
    func save(_ models: Set<Model>) {
        models.forEach { model in
            print(model)
        }
    }
}

こうすると、さっきのコードは Array への変換が不要になる:

let set: Set = [ Book(title: "book 3"), Book(title: "book 4"), ]
let repository = BookRepository()
repository.save(set)

目的達成。ただ、力業で凌いだきらいが強い。もう少しスマートにできないものか?

Sequence を使いたい

Protocol Extension のコードを見てみると、中のコードは全く同じ。forEach を使っている。forEach メソッドは Sequence Protocol にある。そして Sequence Protocol は Array にも Set にも適合されている。

すると、Array や Set のメソッドを用意しなくても、Sequence Protocol に対して save メソッドを用意すれば良さそう。そう、こんな感じに...

protocol Repository {
    associatedtype Model: ModelType
    func save(_ models: Sequence<Model>)
}

残念ながら上のコードは動かない。やりたいことは分かったけど、実現方法が分からない。

というわけで、本記事のタイトルに書いたスタート地点に立った。

Set.union を参考に

そういえば、Set の union メソッドは引数に Set でも Array でも渡すことができた。あの実装はどうなっているんだろう?

コード・ジャンプを使って実装を見てみよう:

extension Set : SetAlgebra where Element : Hashable {
    public func union<S>(_ other: S) -> Set<Set<Element>.Element>
        where Element == S.Element, S : Sequence

なるほど、Sequence.Element で型を指定している。この方法を真似ればよさそう:

protocol Repository {
    associatedtype Model: ModelType
    func save<S>(_ models: S) where S: Sequence, S.Element == Model
}
extension Repository {
    func save<S>(_ models: S) where S: Sequence, S.Element == Model {
        models.forEach { model in
            print(model)
        }
    }
}

これでコードを書いてみると...

let array = [ Book(title: "book 1"), Book(title: "book 2"), ]
let set: Set = [ Book(title: "book 3"), Book(title: "book 4"), ]
let repository = BookRepository()

repository.save(array)
repository.save(set)

Array でも Set でも問題なく使うことができた。

あとがき

Sequence Protocol を意識することで、Array でも Set でも使えるメソッドを用意することができた。やったことはプロトコルへ興味を開げただけ。実装に手詰まっても、Apple のソースコードからヒントを得ることができる。時間があったら Swift の標準プロトコルを見て回るのも面白いかもしれない。

2018-11-14

YouTube Premium のファミリー・プランについて

2018-11-14 (水)、日本で YouTube Premium が開放された。
YouTube Premium に登録すると、YouTube の広告が表示されなくなり、オフライン再生やバックグラウンド再生などがサポートされる。また同時にリリースされた音楽特化の YouTube サービス YouTube Music Premium も利用可能になる。月額 1,180 円、ファミリー・プランは 1,780 円から。
さて、ファミリー・プランにおけるファミリー・メンバーの要件なのだけど Google Play Music と YouTube Premium では小さな違いがあった。
まずは Google Play Music のファミリー・メンバーの要件。

ファミリー グループの管理者と同じ国に居住している

引き続いて YouTube Premium のファミリー・メンバーの要件。


ファミリー グループの管理者と同世帯 (同住所) に住んでいる
Google Play Music では管理者と同じ国に住んでいれば良かったものが、YouTube Premium では同世帯 (同住所) へと制限が厳しくなった。

あとがき

ぼくは実家の親も Google Play Music を使えるようにとファミリー・プランに入っていた。けれど、YouTube Premium の要件に従うともうファミリー・プランは使えない。YouTube Premium の 2 アカウント分のお金を払うのは財布に厳しいし、クレジット・カードの管理とか面倒臭そう。ぼく個人では YouTube Premium の広告なしやバックグララウンド再生には心引かれるものがあるのだけど、親はそこまで望んでいないだろうから、もう少し Google Play Music のファミリー・プランを使い続けることになると思う。

2018-10-31

新 iPad Pro が発表された

2018-10-30 (火) 23:00、Apple が Apple Special Event を開催して、新 iPad Pro を発表した。

サイズは 11 インチと 12.9 インチの 2 ラインナップ。OLED は搭載しないものの、ノッチなしの FaceID をサポートしてホームボタンを廃止している。iPad Pro としてはフルモデル・チェンジに近い。色はシルバーとスペースグレイの 2 色展開。ストレージは 64, 256, 512 GB, 1 TB。価格は 11 インチが 89,800 円 (税別) から、12.9 インチが 111,800 円 (税別) から。2018-10-31 (水) から予約開始。2018-11-07 (水) から発売開始。

ディスプレイ

ディスプレイは Liquid Retina LCD ディスプレイ。iPhone X で採用された OLED はまだ iPad にはやって来ない。

過去のモデルに比べて、ディスプレイの四隅が丸っこくカットされている。また、iPhone X などと同じようにベゼルレス化が押し進められている。

FaceID とホームボタンの廃止

ノッチなしの FaceID が付いた。顔認証ための TrueDepth カメラは上側のベゼルの中に入っている。iPhone X では縦向きでしか顔認証が働かないけれど、iPad Pro では横向きでも顔認証が働く。

FaceID が採用されたことで、ホームボタンがなくなり TouchID も消え去った。認証は顔認証だけになる。タブレットは家族で使い回すことが多いので、複数の顔を登録できるとありがたいのだけど、そのあたりのサポートがどうなっているのかは不明。

また、ホームボタンがなくなったことで、iPhone X 流のジェスチャーへと移行することになった。といっても iOS 12 で iPad を使っていたら、iPhone X 流のジェスチャーがもう使えるようになっているので特に気にすることはない。下からスワイプ・アップしてドック、下からスワイプ・アップしたあと少し止めてアップ・スイッチャー、右上からスワイプ・ダウンしてコントロール・センター、左上からスワイプ・ダウンして通知センター。ここらへんはホームボタン付きの iPad と変わらない。画面下を横にスワイプしてアプリ切替ができるようになったのが新しいくらいか。

A12X Bionic

iPad Pro は A12X Bionic チップを採用。8 コアの CPU は 4 コアの性能コア (Performance Core) と 4 つの効率コア (Efficiency Core) から構成されている。シングル・コアで 35% の高速化を果たしているとのこと。また 7 コアの GPU は約 2 倍の高速になっている。A12 Bionic にあった機械学習用 Neural Engine も健在。

ストレージ

iPad シリーズで初となる 1TB モデルが用意された。ストレージは 64 GB, 256 GB, 512 GB そして 1 TB の 4 つから選ぶことになる。

カメラ

カメラは特に大きく変わっていないもよう。一つだけ挙げるなら、iPhone XS で導入された Smart HDR に対応するようになった。

USB-C

ライトニング・コネクターが廃止された。USB-C コネクターへとその座を譲る。

iPad Pro は USB-C を使って、今までより多くのデバイスと繋がれるようになる。例えば外付けディスプレイやカメラとの接続が可能になる。iPhone への充電も可能になるとのこと (USB-C / ライトニングの変換ケーブルは買わないといけないだけろうけど)

Apple Pencil (第 2 世代)

新しい Apple Pencil が発表された。価格は 14,500 円 (税別)。2018-10-31 (水) から予約開始。2018-11-07 (水) から発売開始。注文時に刻印が可能となっている。

iPad Pro とのペアリングは、Apple Pencil を磁石で iPad にくっつけるだけ。具体的には Apple Pencil の平らな面を iPad Pro の右側にくっつける。すると磁石で Apple Pencil と iPad Pro が繋がって同時にペアリングとワイヤレス充電が行なわれる。当然、第 1 世代にあったライトニング・コネクターは廃止され、旧 iPad Pro と一緒には使えなくなっている (そして、第 1 世代 Apple Pencil も新しい iPad Pro とは使えない)。

Apple Pencil にはタッチセンサーが新しく追加されている。Apple Pencil をダブル・タップすると、対応するアプリでツールの切り替えなどが行なえる。

Smart Keyboard Folio

新しい Smart Keyboard が発表された。価格は 11 インチ・モデル用が 19,800 円 (税別)、12.9 インチ・モデル用が 22,800 円 (税別)。2018-10-31 (水) から予約開始。2018-11-07 (水) から発売開始。

旧 Smart Keyboard は iPad の前面だけをカバーで守る形だったけど、Smart Keyboard Folio は形を変えて iPad を前後から挾みこむようになった。旧 Smart keyboard にあったスタンド専用のような形状にはならなくなったけど、キーボードを出したままで 2 種類の角度を選べるようになっている。

スマート・コネクターの位置は iPad の側面から下方・裏面へと移った。旧 Smart Keyboard は 12.9 インチ用の Smart Keyboard を 9.7 イ川四 iPad Pro につなげてキー入力することも可能だったけど、スマート・コネクターの位置が変わったから、そういうことはもう出来ない (気がする)。

あとがき

iPad Pro は 9.7 インチと 12.9 インチの第 1 世代及び第 2 世代を持っている。今回、iPad Pro の 11 インチを買おうか 12.9 インチの第 3 世代を買おうか、とても悩む。9.7 インチ・サイズの iPad は軽くウェブを閲覧したり、電車の中で開いたり、という用途で重宝している。そろそろ新しいものを買っても良い。一方、12.9 インチ・サイズは Kindle で技術書やマンガが読んだり、映画を見たり、YouTube を楽しんだり、会議やカンファレンスでメモを取るのに使っていて利用頻度が高い。両方買えたら言うことなしなんだけど、財布に余裕はない。次のモデルあたりで OLED 化も進むだろうし、それを考えるとどうすべきか。難しい。

新 Mac Mini が発表された

2018-10-30 (火) 23:00、Apple が Apple Special Event を開催して、Mac Mini の刷新を発表した。

価格は 89,800 円 (税別) から。2018-10-31 (水) から予約開始。2018-11-07 (水) 発売開始。

スペック

刷新されたスペックを中心に列挙する:

  • CPU: 最大 6 Core のチップ
  • メモリー: 最大 64 GB
  • ストレージ: 最大 2 TB
  • Thunderbolt 3 (USB-C) x4
  • HDMI 2.0 x1
  • 10 Gb Ethernet x1
  • USB 3.0 x2
  • 3.5 mm ヘッドホン・ジャック

CPU はデフォルトが 4 Core チップで、6 Core チップに変更可能。パフォーマンスは最大 5 倍向上したとされる。メモリーは 2,666 MHz DDR4 メモリーを採用。ストレージは全てフラッシュ・ストレージで読み込み速度は最大 4 倍高速化された。

新しい MacBook Air と同様、Apple の T2 セキュリティ・チップを搭載。暗号化ストレージなどでの高速化が期待される。

Thunderbolt 3 (USB-C) ポートは 4 つ。4K ディスプレイなら 2 つ、5K ディスプレイなら 1 つと接続が可能。グラフィック性能が必要なら、eGPU との接続もできるようになっている。なお、Thunderbolt 3 ポートとは別に、HDMI 2.0 ポートもあるので、そちらでディスプレイを 1 つ追加 (最大 3 画面) にすることも可能。

あとがき

Mac Mini ってこんなにスペック高くできたっけ? というくらい進化してきた。少しベース・プライスも高くなったようだけど、より実戦向きのスペックになったように思う。

新 Macbook Air が発表された

2018-10-30 (火) 23:00、Apple が Apple Special Event を開催して、MacBook Air の刷新を発表した。

色は ゴールド・シルバー・スペースグレイの 3 色展開。価格は 134,800 円 (税別) から。2018-10-31 (水) から予約開始。2018-11-07 (水) 発売開始。

スペック

MacBook Air で新しくなったスペックを中心に列挙する。

  • CPU: Intel Core i5 第 8 世代
  • メモリー: 最大 16 GB
  • ストレージ: 最大 1.5 TB
  • ディスプレイ: ベゼルレス Retina LCD 13.3 インチ
  • キーボード: 第 3 世代バタフライ・キーボード
  • タッチパッド: 感圧タッチトラックパッド (前世代より 20% 広い)
  • スピーカー: 前世代より 25% 音量アップ、2 倍低音アップ
  • マイク: 3 アレイ・マイク
  • TouchID サポート (TouchBar はつかない)
  • 端子: 2 つの Thunderbolt 3 ポート
  • 重さ: 1.25 kg

ディスプレイがついに Retina ディスプレイに対応。ベゼルレスで本体のサイズも小さくなった。重さは 1.25 kg。

メモリーは最大 16 GB をサポート。そしてストレージは最大 1.5 TB に。

TouchBar は付かないものの TouchID をサポート。専用の T2 セキュリティー・チップを搭載する。

コネクターとして Thunderbolt 3 ポートが 2 つ。Thunderbolt 3 ポートは 5K のディスプレイ出力が可能。オーディオは音量が 25% アップ。マイクは 3 アレイ式を採用。前面に FaceTime HD カメラ (720p) を搭載している。

あとがき

一部では廃番になるのでは? と噂もあった Macbook Air が刷新された。今までかたくなに Retina ディスプレイ化されていなかったものが、ついに Retina ディスプイをサポート。ベゼルレスで重量も 100g 軽くなり持ち運びしやすくなった一方、メモリー上限とストレージ上限が引き上げられて、今まで以上に重い作業をこなせるようになった。

今、メインで使っている MacBook Air もくたびれてきたので、そろそろ買い替えしても良いかな〜などと心がうずく。

2018-10-10

Google Pixel Slate が発表された

2018-10-10 (水) 00:00、Google が Made by Google イベントを開催して、Google Pixel Slate を発表した。Google Pixel Slate は Google Chrome OS を搭載するタブレット。商品カテゴリーは Apple の iPad Pro 12.9 や Microsoft の Surface と同じ。

発売国はアメリカ、イギリス、カナダ。ストレージ・サイズは 32、64、128、256 GB。価格は $599 から。Google Pixel Slate Keyboard は $199、Google Pixelbook Pen は $99。今日から予約開始で、リリースは今秋。

ディスプレイ

ディスプレイ・サイズは 12.3 インチ (293ppi)。ベゼルレスではない。

タッチ・スクリーンで、Pixelbook Pen にも対応している。

スピーカー

Dual front-firing スピーカーを搭載。

カメラ

8 MP のリア・カメラとフロント・カメラを搭載。ポートレイト・モードにも対応。

セキュリティ

電源ボタンは電指絞認証センサーとしても働くようになっている。またアンチ・ウィールスを標準装備。OS のアップデートは自動で走る。

Google Pixel Slate Keyboard

本体とは別売のこのキーボードはブックカバーのような形をしていて、中央に Pixel Slate を差し込みんで接続する。キーボードは Pixel Slate から電源供給を受けるため、バッテリーなどは不要。タッチパネルも搭載している。

キーボードと反対側の面は無段階傾き調整のタブレット・スタンドになる。

あとがき

12.3 インチのタブレットは iPad Pro 12.9 の利用から想像できるのだけど、実用レベルでオフィスが使えてしまう。簡単なドキュメントの作成やメモ書き、メールの作成が可能になるレベル。

それが最低価格 $599 から発売というのだからすごい。

とても残念なことに日本での発売はない。少なくとも今回のイベントでは、初回発売国に日本は含まれなかった。Google Pixel 3 のように日本発売が 3 年以上待たされることがないことを祈りたい。

Google Pixel 3 が発表された

2018-10-10 (水) 00:00、Google が Made by Google イベントを開催して、Google Pixel 3 を発表した。Google Pixel シリーズとしては初の日本発売!

サイズは Pixel 3 (5.5 インチ) モデルと Pixel 3 XL (6.3 インチ) モデルの 2 モデル。iPhone XS と同じくベゼルレスの OLED ディスプレイで。Pixel 3 はノッチなし、Pixel 3 XL はノッチあり。

色はクリアリー・ホワイト、ジャスト・ブラック、ノット・ピンクの 3 色展開。ストレージは 64 もしくは 128 GB。アメリカでの価格は Pixel 3 が $799 から、Pixel 3 XL が $899 から。国内価格・発売日は不明。

OS

Android 最新の Android 9 Pie を搭載する。Pixel シリーズは、Android の最新 OS のアップデートを 3 年間提供されることが保証されている。

カメラ

背面カメラは 12 MP のシングル・カメラ (f/1.8)。前面カメラは 8 MP の広角 (f/2.2) と標準 (f/1.8) のデュアル・カメラ。光学および電子式手ぶれ補正は背面カメラのみ。

動画の撮影は、背面カメラが 4K@30fps、前面カメラが 1080p@30fps まで対応している。

トップショット

ベストショットを提案してくれる機能。撮影した写真の前後を動画 (?) で保存しておいて、よりよいショットのおすすめを提案したり、自分で選ぶことができる。

Group Selfie Cam

前面カメラではセルフィーの撮影に広角なカメラを利用できる。これにより、大勢のグループでセルフィーを撮ったり、大きな背景を含めてセルフィーを撮ったりすることが可能になる。

Playground

写真や動画にキャラクターを AR で融合させることができる。イベントではアイアンマンの CG と一緒にセルフィーを撮るシーンが紹介された。

Google Photos

Pixel 3 から Google Photos にアップロードされた写真は元の画質で無制限に保存される (通常の利用では画像サイズが縮小されて保存される)。この無制限アップロードは 2022 年 1 月 31 日まで利用可能で、それ以前にアップロードされた画像・動画は 2022-01-31 以降も追加料金なしで保存はされる。

認証

端末裏側に認絞認証センサーを搭載する。

iPhone XS などで流行りの顔認証はあるのかないのか分からなかった。少なくとも顔認証があるという説明は見かけなかった。

防水

Pixel 3 の防水は IEC60529 の IPX8。IPX8 は「IPX7 (最大 1m の水深で、最大 30 分間) より厳しい条件を満たす」という規定。厳しい条件の具体的な内容はメーカーが設定する。例えば Apple の iPhone XS (IPX8) は「最大 2m の水深で、最大 30 分間」と定めている。Google Pixel 3 の具体的な内容はウェブサイトで見つけられなかったので分からない。

充電

USB-Type C コネクターから 18W の急速充電に対応する。

また、Qi によるワイヤレス充電にも対応。Qi 充電端末は付属しない。

Google Pixel Stand

Google Pixel 専用の Qi 充電スタンドも発表された。価格は 9,504 円。Pixel 3 に対して 10W でのワイヤレス充電を可能にする。

Google Pixel 3 と同時に使うと、Pixel 3 に特別な (Google Home っぽい) 機能を提供する。朝は画面が徐々に明るくなり、スケジュールや最新ニュースを提供する。Pixel Stand の上に置くと自動でマナーモードがオンになる等々。

SIM

シングルナノ SIM に対応。ディアル SIM には対応していない。

あとがき

Android のリファレンス端末である Pixel スマートフォンがようやく日本でも手に入るようになる。スペックも各社フラッグシップ端末に匹敵する。Android アプリの開発者と Android を好きな人達にはたまらないスマートフォントになりそう。

iPhone XS Max が財布にもう少し優しければ、もしくは iPad の最新端末が来年まで出ない保証があるのなら、Pixel 3 も買っていたかもしれない。それだけ魅力のある Android スマホだと思う。

2018-09-20

iPhone XS Max を予約した

iPhone XS Max / ゴールド / 256 GB をソフトバンクで予約した。店舗受け取り。

流れ

iPhone の予約開始と同時にソフトバンクの予約サイトにアクセスして予約をした。自宅受け取りを選択。

  • 2018-09-14 (金) 16:01 予約開始
  • 2018-09-14 (金) 16:20 事前受付確認 SMS 到着
  • 2018-09-18 (火) 15:31 本申し込み SMS 到着

上に書いてある通り、2018-09-18 には本申し込みの SMS が届いた。

すぐに本申し込みを行なったのだけど、プランを間違えた。本当は、現在のプランを引き継ぎたかったのだけど「ミニ・モンスター」とかいうプランを選んでしまった。

157 とかコール・センターに電話して分かったのは、月額料金が今より 1,000 円近く高くなること。プランの引き継ぎに変更することは出来ない、ということ。

コール・センターから提案されたのは、予約をキャンセルして申し込み直す方法。他に方法がないそうなので泣く泣く予約をキャンセルした (キャンセルはコール・センターにお願いすると出来た)。

あと、自宅受け取りでは一括支払にクレジット・カードが使えない。代金引替一択。10 万を越えるお金を現金で家に用意するのも面倒なので、店舗受け取りで予約し直した。

  • 2018-09-18 (火) 21:48 事前受付確認 SMS (2 度目) 到着

今年は出遅れた。くやしい。

2018-09-13

iPhone XR, Xs, Xs Max が発表された

2018-09-13 (水) 02:00、Apple がイベントを開催して、新 iPhone を 3 機種発表した。

全てのモデルは iPhone X を踏襲して全画面ディスプレイ・Face ID・ホームボタン廃止となる。iPhone X と同じ OLED ディスプレイを搭載する iPhone Xs (5.8 インチ) と Xs Max (6.5 インチ)、そして iPhone 8 と同じ LCD ディスプレイを搭載する XR (6.1 インチ) の 3 ラインナップ体制。XR の「r」が何を意味するのかは説明がなかった。

色は Xs と Xs Max がゴールド、シルバー、スペース・グレイの 3 色展開; XR はホワイト、ブラック、ブルー、コーラル、イエロー、プロダクト・レッドの 6 色展開。ストレージは Xs と Xs Max が 64, 256, 512 GB; XR は 64, 128, 256 GB。価格は Xs が XR が 84,800 円 (税別) から、Xs は 112,800 円 (税別) から、Xs Max は 124,800 円 (税別) から。iPhone Xs と Xs Max は 2018-09-14 (金) 16:01 から予約開始。2018-09-21 (金) 発売開始。iPhone XR は少し遅れて 2018-10-19 (金) 16:01 から予約開始; 発売日は 2018-10-26 (金)。

まずは iPhone Xs と Xs Max のまとめを書いて、その後 iPhone XR のまとめを軽く書いていきたい。

防水と防塵

iPhone の防水・防塵が IEC60529 の IP68 等級に向上した。

iPhone の防水・防塵は iPhone 7 で初めて導入された。この時の等級は IP67 だった。防塵の等級は変わらず IP6X。「有害な影響が発生するほどの粉塵が中に入らない」という内容。

防水は IPX7 から IPX8 へと変化した。ただ、IPX7 は「一時的に一定水圧の失件に水没しても内部に浸水することがない」(最大 1m の水深で、最大 30 分間) とするのに対して、IPX8 は「IP7 より厳しい条件を満たす」としか規定がない。どれくらいの深さ・時間、水没させても OK かという基準はメーカーが設定する。Apple はこれを「最大 2m の水深で、最大 30 分間」と設定している。

ディスプレイ

iPhone Xs のディスプレイは Phone X と同じ 5.8 インチ、解像度 2,436 x 1,125 (458 ppi)。iPhone Xs Max は iPhone 史上最大の 6.5 インチ、解像度 2,688 x 1,242 (458 ppi)。

HDR 10 と Dolby Vision に対応しているので、映画も楽しく見れるとしている。

また、120 Hz の Touch-Sensing に対応。よりスムーズなスクロールが可能になる。

スピーカー

よりワイドなステレオ・サウンドを提供できるようになった。

FaceID

Neural Engine に対応して、より高速な認識が可能になった。

A12 Bionic チップ

業界初の 7 nm チップ。6 コアの CPU と 4 コアの GPU、そして Neural Engine を搭載。

6 コアの CPU は、2 つの性能コア (Performance Core) と 4 つの効率コア (Efficiency Core) から成る。性能コアは 15% 高速化、効率コアは 50% の少消費電力を達成した (A11 Bionic と比べて)。

4 コアの GPU は A11 Bionic と比べて 50% の高速化を達成。

Neural Engine は A12 から新しく追加されたエンジン。8 コア・アーキテクチャーで、機械学習の演算を高速化する目的で設計されている。CoreML に至っては 9 倍の高速化が期待されるとのこと。

カメラ

12 MP のデュアル・カメラ・システム; 広角カメラ (f/1.8) と望遠カメラ (f/2.4) を搭載。

Neural Engine と連携して、写真撮影時のプロセッシングを高速に行なうようになっている。

Smart HDR

進化した HDR。ぶっちゃけ良く分からなかった。

カメラ・アプリを開いたら、4 フレームのバッファーを常にチェックしてシャッターが押されたタイミングの写真を取って (Zero Shutter Lag)、各フレームに対して Highlight detail, Shadow detail を作成してその中から良いものをマッチアップして 1 枚の写真を作る、らしい。

ボケ

撮影後に被写体深度を調整できるようになった。写真の編集画面に Depth スライダーがある。f1.4 から f16 まで変更可能。

バッテリー

バッテリー時間が伸びた。iPhone Xs は iPhone X と比べて 30 分、iPhone Xs Max は iPhone X と比べて 1.5 時間、利用時間が伸びた。

Gigabit-class LTE

高速な LTE。

Dual SIM

Dual SIM が採用された。DSDS (Dual SIM Dual Standby) をサポートする。つまり、2 つの SIM を同時にスタンバイ状態にすることができる。

2 枚目の SIM は eSIM として iPhone にビルトインされている。eSIM 対応の携帯業者と契約して使う形を取る。日本での eSIM 提供がどうなるかはまだ不明。

2 つの SIM には自分で名前を付けられる。

なお、中国向けには eSIM ではなく、2 つの SIM を挿入できるモデルが特別に提供されるとのこと。

iPhone XR

旧 iPhone 8 の後継的な存在。iPhone Xs との比較という形で軽くまとめてみた:

  • 防水・防塵: IP67
  • Liquid Retina ディスプレイ
    • 6.1 インチ・ディスプレイ (1,792 x 828; 326ppi)
    • LCD ディスプレイ
    • 3D Touch 非対応 (代わりに Haptic Touch)
  • 12 MP シングル・カメラ
  • バッテリーは iPhone 8 Plus と比べて 1.5 時間長くもつ
  • 4G LTE-Advanced (ギガビット級 LTE は対応せず)

あとがき

iPhone Xs Max の大ディスプレイが出たのは嬉しい。iPhone Xs は少し小さいと感じていたので。

それ以外でデバイスとしての大きな変更があったように思えない。Dual-SIM くらいかな? 毎年 iPhone には大きな変更が入っていたものだけど、今年は小粒の変更だったように感じた。

Apple Watch series 4 が発表された

2018-09-13 (水) 02:00、Apple がイベントを開催して、Apple Watch series 4 を発表した。

Apple Watch series 4 は Apple Watch シリーズ初めて外見の変更が行なわれた。ディスプレイが大型化し、iPhone X のようにエッジまで画面が表示されるようになった。今までの 38mm モデルと 42 mm モデルは廃止され、40 mm モデルと 44 mm モデルに変更される。なお、ディスプレイ・サイズが大きくなってもバンドの規格は変わらない。series 1 で買ったものも利用可能。

Apple Watch series 4 は 2017-09-14 (金) 予約開始。2017-09-21 (金) に発売開始。GPS モデルはアルミケースのみで 45,800 円 (税別) から、GPS + Cellular モデルはアルミ、ステンレスの 2 種で 56,800 円 (税別) から。色はゴールド、シルバー、スペースグレイの 3 色展開。

なお、Apple Watch series 1 の発売は終了したもよう。旧モデルは Apple Watch series 3 が残る。価格は 31,800 円 (税別) から。

毎度のことながら、Apple および Nike、Hermès の新バンドも発売される。

新しいウォッチ・フェイス

series 4 には 4 つの新しいウォッチ・フェイス (文字盤) が追加される。

インフォグラフ文字盤

新しく追加されたインフォグラフ文字盤は最大 8 つのコンプリケーションを表示できる。これはユーティリティ文字盤を改良したもので、ユーティリティが 4 つ (左上・右上・中右・下) しかコンプリケーションを表示できなかったのに対し、左上・右上・右下・左下・中上・中右・中下・中左の 8 箇所にコンプシケーションを表示できる。

今まで、コンプリケーションを一番多く表示できるウォッチ・フェイスはモジュラー文字盤だったけど、これからはインフォグラフ文字盤がその座を奪う。

インフォグラフ・モジュラー文字盤

モジュラー文字盤もアップデートされる。こちらはよりグラフィカルな情報を表示できるようになった。

深呼吸文字盤

深呼吸アプリがウォッチ・フェイスとして登場する。アプリを開かずとも、文字盤からすぐに深呼吸できる。深呼吸のアニメーションは 3 種類用意されている。

新モーション文字盤 ?

新しい 3 つのモーション文字盤が追加される。1 つ目はファイヤー文字盤。炎が広がるアニメーションが表示される。2 つ目はウォーター文字盤。泡が画面一杯にアニメーションする。3 つ目はヴェイパー文字盤。煙? の動くアニメーション。

1 つ 1 つが新しい文字盤なのか、モーション文字盤のカスタマイズ盤として登場するのか、よく分からない。

デジタル・クラウン

デジタル・クラウンは再設計されて、Haptic フィードバックをサポートする。Haptic フィードバックにより、デジタル・クラウンをくるくる回した時にカリカリというフィードバックが得られるんじゃないかと思う。

スピーカーとマイク

50% 大きな音を出せるよう改良された。

マイクはスピーカーとは逆側に配置されるようになった。これで、電話でスピーカーの音をマイクがひろうことが少なくなり聞きとりやすい通話が可能になる。

SiP

チップセットは Apple S4 にアップデートされる。Apple Watch series 初の 64 bit CPU で、かつ Dual-Core! Apple S3 と比べて、最大 2 倍の高速化を果たした。

転倒検出 (Fall Detect)

加速度センサー、ジャイロスコープが新しくなって、2 倍のダイナミック・レンジ、8 倍のサンプリング・スピードに対応した。この変更に伴って、Fall (転倒) の検出機能が追加された!

転倒を検出すると、Apple Watch は画面にアラートを表示する。その画面から緊急通報サービス (緊急 SOS / Emergency Call) に電話をかけることができる。さらに、60 秒経っても何も反応がなければ緊急通報サービスに自動的に発信が行なわれる。

心拍センサー

心臓 (Heart) に関する機能が 3 つ追加された。

Too Low

低すぎる心拍数を検出したら Apple Watch は通知を送る。心拍数が低いのは良いことだけど、低すぎる状態が続くのは良くないので、この状態を検出したら通知を飛ばしてくれる。

Rhythm

心拍数のリズムが正常でないことを検出したら、Apple Watch は通知を送る。これは、心房細動 (AFib: Atrial Fibrillation) の可能性があるため。

心電図 (ECG: Electro-cardiogram)

Apple Watch では心電図機能が追加される。デジタル・クラウンを 30 秒間押さえることで心電図データを取ることができる。結果は PDF 出力して、医師に見せることが可能。FDA 認可 (FDA Clearance; FDA はアメリカ食品医薬品局 Food and Drug Administration) も受けている。

心電図アプリは今年の秋にリリース予定。ただ、日本の Apple のサイトに心電図の紹介がないので、もしかしたら日本ではすぐに使えないのかもしれない。(医療の法津的なからみとかあるのかも?)

バッテリー

バッテリーは 18 時間持つ。

あとがき

Apple Watch series 4 はディスプレイの大型化が大きく目を引く。でも、転倒検出や心拍・心電図機能のようにユーザーに常に寄り添う機能が強化されていることに面白みを感じた。