13
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

posted at

updated at

What's New in Xcode 11

この記事はWWDC 2019、What's New in Xcode 11 のセッションを聞いて、新しいXcodeの特徴をざっくりまとめたものです。NDAの関係でXcodeのスクショは載せてません。セッションスライドが公開されたら、補助的にスライドのスクショを貼る予定ではいます。

※Xcode 11 betaを動かすにはmacOS10.14.4以上、すべての機能を試すためにはbeta版Catalinaが必要なようです。

ツール系ボタンのリニューアル

画面右上にあるボタンが追加、再編成されました。

スクリーンショット 2019-06-23 18.40.37.png

このエリアでは

SwiftUIで組んだレイアウトのプレビューを見る

スクリーンショット 2019-06-23 19.17.41.png

コード画面を横や縦に分割して表示する(≠タブを増やす)

スクリーンショット 2019-06-24 9.35.07.png

minimapを表示する

スクリーンショット 2019-06-24 9.35.52.png

などをしたいときに触れることになります。minimapにマウスオーバーすると、メソッド名が表示されます。

リファクタ

メソッドの引数を増やした時、Add Documentationをクリックすると、ドキュメントコメントにその定義が自動で挿入される(下では引数にduratonを追加)

スクリーンショット 2019-06-24 9.39.28.png
スクリーンショット 2019-06-24 9.40.56.png

変数名をrenameすると、その変数を使っている部分はもちろん、ドキュメントコメント内の変数名もリファクタされる

スクリーンショット 2019-06-24 9.41.32.png

今までは変更が入ると左に青いバーが表示されるだけだったが、Show changeを選択することで、変更前と変更後が上下に並列して表示される

スクリーンショット 2019-06-24 9.42.31.png
スクリーンショット 2019-06-24 9.42.47.png

Swift Packageサポート

  • XcodeのPROJECTにSwift Packagesタブが登場
  • Swift Package内に限定して検索を行うことが可

その他Git関連

  • Xcode上でStashができる
  • Stashの差分もXcode上で確認可能
  • その他History系の機能もパワーアップ

Storyboard

  • (おそらくMac対応のチェックを入れていれば)Storyboard上でプレビューにMacが選べるように
  • Dark Modeのプレビューが表示できる
  • SFSymbolsの選択を右ペインで設定できる
    • weight, sizeなどもGUIで設定可能
  • ローカライズに応じたプレビュー表示が可能
  • 例えば右ペインのImage Viewのimage欄は、今まで文字列しかプルダウンされなかったが、そこにサムネイルが表示されるようになる
  • ダークモード用の画像を別で設定することができる(画像の1x, 2xのようなイメージ)
  • ダークモード用にボタンの色を変えたいという場合も設定可

デバッグ

  • Xcode上のGUIをいじって、リアルタイムにアクセシビリティの設定を変更、その動作確認が行える
  • ネットワーク状態、端末の温度状態を設定して動作確認が行える
  • シミュレータ上でMetalの動作確認が行える
  • インストルメントで把握することができる項目が増えた
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
13
Help us understand the problem. What are the problem?