xcode9新特性介紹

背景:

Xcode 9 新特性介紹:

1、官方原文介紹鏈接

2、Xcode9 be ta 2 官方下載鏈接

本文為官方介紹翻譯而來,布局排版等都是按照官方布局來的。

與原文相比,排版上基本還是熟悉的配方,還是熟悉的味道~~

最后,有些翻譯網上拿下來的不夠通順的,敬請諒解。

PS:本文沒有新特性的詳細介紹,知識單純的搬運官方介紹,所以如果對一些功能點有興趣,比如無線調試,集合Github等,可以看文章片尾。

文章片尾會放幾篇關于新特性功能點的詳細介紹的文章鏈接。

正文:

What's New in Xcode 9

Xcode是用于為Apple TV,Apple Watch,iPad,iPhone和Mac創建應用程序的完整開發人員工具集。Xcode開發環境采用tvOS SDK,watchOS SDK,iOSSDK和macOS SDK的形式捆綁Instruments分析工具,Simulator和OS框架。

Highlights of Xcode 9(Xcode 9的亮點)

Xcode 9包括整體質量改進以及廣泛的新功能。

1、全新編輯。快速,基于結構的編輯器,可讓您智能地突出顯示和瀏覽代碼。包括偉大的Markdown支持。

2、重構。重構內置于編輯體驗之中,并可跨SwiftObjective-C,Interface Builder和許多其他文件類型。

3、超快速搜索。“查找”導航器會立即返回結果。

4、調試。通過網絡無線調試iOS和tvOS設備,Metal的新調試器以及Xcode中的更多功能。

5、源控制。所有新的源代碼管理導航器和集成的支持GitHub帳戶可以快速瀏覽資源庫并將您的存儲庫推向云端。

6、Xcode服務器內置。連續集成機器人可以在任何具有Xcode 9的Mac上運行,無需安裝macOS Server。

7、新游樂場模板。包括iOS模板,旨在在iPad中的Xcode和Swift Playground中運行良好。

8、新建系統。Xcode新的構建系統的選擇性預覽提供了更高的可靠性和性能。

General(其他功能)

1、更新了使用plist文件定義文本宏的方式。

為項目中的用戶,項目或特定用戶定義文本宏。

自定義新的文件頭。

有關更多信息。

2、更新了索引引擎,包括在編譯文件時編制索引的能力。

3、設備窗口被分成用于設備和模擬器的單獨窗格。

Asset Catalogs

1、命名顏色支持。

2、添加了廣泛的應用程序圖標。

3、為App圖標集添加了更大的iOS營銷。

4、添加了保留圖像矢量數據以選擇動態類型縮放的選項。

5、增加了HEIF圖像的支持。

Building and Linking

1、添加了一個在Swift中編寫的新構建系統的預覽。

2、提供更高的可靠性。

3、捕獲許多項目配置問題。

4、提高整體構建系統性能。

5、注意,構建系統性能不包括構建系統使用的編譯器,鏈接器和其他工具。

6、目前可選,并將成為未來版本的Xcode的默認值。

7、要選擇項目或工作區的新構建系統,請選擇“文件”>“項目設置”或“文件”>“工作區設置”,然后選擇“構建系統”類型的“新建構建系統(預覽)”。

8、有關與現有項目兼容性的說明,請參閱Xcode版本說明。

Capabilities

1、iOS熱點和多路徑TCP的新配置。

2、新的網絡配置,包括內容過濾,代理DNS查詢以及代理TCP和UDP連接。

3、用于watchOS的新背景模式用于錄音和轉彎方向。

4、tvOS背景提取的新模式。

Core ML( 核心ML編輯器)

1、為模型生成強類型接口。

2、用于設備使用的模型編譯。

Debugging

1、 iOS和tvOS設備的網絡調試。

通過WiFi或有線網絡調試iOS和tvOS設備。

通過Bonjour連接或輸入IP地址。

需要插入iOS設備才能啟用網絡調試。

具體步驟:點擊查看真機無線調試步驟

2、 GPU幀捕獲和GPU覆蓋。

查看命令緩沖區,附件,資源和調用堆棧。

修改著色器并將更改保存到您的應用程序。

移動序列的時間軸。

檢查和修改附件中各個像素的值,包括顏色值,alpha,深度等。

通過最小化紋理帶寬,最小化渲染像素的數量,禁用混合階段,僅顯示線框,以及縮放鑲嵌的數量,來實現渲染狀態而不修改代碼。

3、 未定義的行為消毒劑。

使用未定義的行為消毒劑來查找程序崩潰的源,意外的行為以及與未來版本的Xcode的不兼容性。

檢測C語言中的幾種類型的未定義的行為,如整數溢出,無效的轉換和對齊違規。

在方案編輯器的“診斷”窗格中啟用未定義的行為消毒劑。

4、主線程檢查器。

檢測未在主線程上進行的AppKit,UIKit和WebKit方法調用。

在調試期間自動啟用,并且可以在方案編輯器的“診斷”選項卡中禁用。

主線程檢查器與Swift和C語言一起使用。

通過深度過濾來增強Breakpoint導航器。

添加了修改斷點的可視指示符。

擴展視圖調試器以顯示視圖控制器,并使用SceneKit和SpriteKit視圖。

增強iOS電能表。

Documentation

新的統一瀏覽器,集成了參考,示例代碼和文章。

改進文檔搜索。

用于在頁面之間導航的新跳轉欄。

集成示例代碼下載。

Instruments

用于在跟蹤文檔的圖形區域中固定圖形的新拆分視圖。

添加了所有策略,并將策略選擇器移動到跟蹤文檔頂部的新工具欄。

增強型金屬調試儀。

金屬系統跟蹤VR支持查看事件,如合成器活動,姿勢查詢等

Interface Builder

增加了對資產目錄使用命名顏色的支持。

增加了對新邊距和基線視圖約束的支持。

添加了對自動布局安全區域指南的支持。

增加了對全屏WatchOS應用程序的支持。

Metal 2 Support

1、 Capture API。

在你的代碼中定義明確的捕獲邊界。

使用新MTLCaptureManager類和新MTLCaptureScope協議來編程設置,管理和觸發捕獲邊界。

使用擴展的Xcode GPU Capture UI手動啟動和停止捕獲。您還可以使用Xcode來捕獲應用程序中定義的API邊界。

2、 GPU計數器。

分析有關特定GPU捕獲的詳細分析指標。在iOS和tvOS中,GPU計數器顯示為命令編碼器的時間線;在macOS中,GPU計數器顯示為繪制或調度調用的時間線。

檢查渲染或計算流水線階段的運行時性能,例如頂點著色器,片段著色器,計算內核等。

比較每個流水線階段花費的GPU時間量,以查找您的性能瓶頸。

3、 GPU備注。

在金屬著色語言代碼中查找優化機會。

在著色器編輯器中調試特定于設備的運行時問題。

遵循直接的解決方案和指示來改善您的代碼。

4、 智能過濾。

通過鍵入到調試導航器來查找特定的調試信息。當您鍵入和突出顯示匹配的文本(例如資源,像素格式,功能名稱,對象標簽等)時,Xcode會動態顯示建議。

通過從預定義的Metal對象菜單中選擇選項來過濾搜索結果。

使用多個匹配條件的多個過濾器。

5、 VR支持。

查看VR提交和左眼/右眼提交的表面。

添加了紋理檢查,用于檢查渲染目標中各個像素的值,如顏色,alpha,深度等。

添加檢查輸出頂點屬性到緩沖區編輯器。

添加數據提示支持金屬對象,如紋理,緩沖區和采樣器。

Refactoring

跨Swift,C,Objective-C和C ++文件的全局重命名。

查看所有更改在一個地方。

轉換Swift和Objective-C格式之間的方法簽名。

根據需要更新屬性,getter,setter和合成的iVars。

一個按鈕更改。

修復 - 它會自動填充switch語句中的缺失情況,并且一鍵單擊協議一致的強制性方法。

提取所有支持的語言的方法功能,以及其他語言特定的本地重構。

Simulator-模擬器

1、 多個并發模擬器。

同時運行多個模擬器。

并行運行更多測試項目。

測試同步和其他多設備工作流程。

適用于iOS和watchOS模擬器的新Chrome包括硬件控件,并允許輕松拖動和調整模擬設備的大小。

從地圖,照片和Safari與模擬器共享信息。

添加了關閉窗口或退出模擬器后運行模擬器的選項,以便與命令行工具的simctl命令更好地集成xcrun。

錄制模擬器的視頻。

通過選擇幫助>模擬器幫助獲取幫助。

Source Control

新的源代碼管理導航器,用于查看當前工作空間的分支,標簽和遠程存儲庫。

新的源代碼管理檢查器顯示所選導航器項目的詳細信息。

分支歷史的新編輯器,包括一個方便導航的跳轉桿。

文件差異的新的并行編輯器。

更容易和更快地訪問常見任務。

GitHub帳戶集成,輕松瀏覽和一鍵創建項目及相關的GitHub資源庫。

Source Editing ( 源代碼編輯器)

更快,更多功能查找和更換。

快速滾動任何大小的文件。

直接操縱代碼結構,如令牌和塊。

重新設計源代碼管理的集成。

重新設計錯誤和警告消息的介紹。

支持Markdown。

Swift (新的Xcode 9 -Swift 4)

Swift 4和Swift 3,Swift 4和Swift 3目標的一個編譯器可以在同一個項目中編譯。

改進的遷移者體驗,僅支持將選定目標遷移到Swift 4。

更快的通用代碼和減少的代碼大小。

Testing

并行測試裝置

對XCTest添加了新的APIs

控制和捕捉截圖。

團體測試活動。

測試附件。

在特有界面清理測試狀態。

在一個UI測試中應用多個應用程序。使用指定的語言和區域運行測試。

Xcode Server

新建在Xcode服務器。

在偏好配置中,配置Xcode服務器和BOT權限設置。

增加了雙因素身份驗證支持。更新的機器人功能

支持自動和手動配置工作流。

傳遞額外的參數xcodebuild。

在設備和模擬器上并行運行測試。

為測試配置語言和區域。

發送“全部清除”電子郵件通知。

Compatibility-兼容性

Xcode 9.0需要運行MacOS Sierra 10.12.4或更高版本的Mac。

Installation-安裝

Xcode 9 beta可以與以前版本的Xcode共存。

Xcode的預發行版本可從developer.apple.com提供給授權的種子開發人員,打包在壓縮的XIP文件中。要在beta期間安裝Xcode,請下載XIP文件,將其拖到“應用程序”文件夾中,然后雙擊該文件。XIP文件擴展到位。

注意:如果您在Safari首選項中啟用了“打開”安全“文件下載”,則XIP文件將下載并自動擴展到您的下載文件夾中。在啟動它之前將Xcode-beta拖到“應用程序”文件夾中。

在最終版本中,Xcode通過Mac App Store進行安裝。

Developer Resources-開發人員資源

Apple開發人員計劃提供對Apple Store,Apple App,iPad,iPhone和iPod touch設備的訪問App Store,Mac App Store和Apple TV App Store,附加支持和文檔以及用于測試和部署的資源。有關更多信息,請訪問Apple開發人員計劃網站

訪問Apple開發人員論壇,討論任何蘋果開發者軟件,包括預發布產品。

有關最新的安全信息,請訪問https://support.apple.com/kb/HT1222

About SDKs and Simulator(關于SDK和模擬器)

軟件開發工具包(SDK)是代表特定watchOS,iOS或macOS版本的API的框架(庫,標頭和資源)的集合。您的應用程序從SDK獲取的大多數功能實際上由主機操作系統提供,這使得正確的基本SDK和操作系統部署目標設置對應用程序兼容性至關重要。Xcode自動構建最新的SDK并針對最新的操作系統。

如果您的應用程序不需要最新的操作系統功能,則可以使用Xcode項目設置中的“操作系統部署目標”選項將其配置為在先前版本的平臺操作系統上運行。如果您的項目是在舊版本的Xcode中創建的,您可以讓Xcode更新您的項目。有關此功能的詳細信息,請參閱項目現代化

重要提示:在將應用程序提交到App Store之前,您必須在運行受支持的目標操作系統版本或版本的設備上進行測試。

Automatic Signing(自動簽名)

如果您正在處理尚未更新到當前簽名過程的舊項目,則對簽名過程的更改可能會阻礙您的開發。

企業和App Store開發人員帳戶的推薦方法是在開發和分發期間使用Xcode自動簽名代碼簽名應用程序。有關自動簽名的文檔,請參閱Xcode幫助。如果您的舊項目未配置為使用自動簽名,請閱讀技術問答(QA1814)“設置自動配置的Xcode”,以了解可以重新配置Xcode項目的過程。

在使用其他技術之前,應考慮自動簽名,但如果您的項目需要手動簽名,請在Xcode幫助中搜索“手動簽名”以查看當前的手動簽名實踐。

Project Modernization(項目現代化)

當您打開一個項目時,Xcode對其進行評估,以查看是否應更新任何設置。此功能提供了一個簡單的方法來確保您的項目符合最新的SDK和最佳做法。

打開問題導航器以查看是否需要更新項目中的任何內容。您也可以在項目導航器中選擇項目,然后選擇編輯器>驗證設置。

如果問題導航器列出了現代化問題,請單擊該問題以查看一個對話框,以解釋應該進行的更新,并允許您執行任何或所有更新。

單擊執行更改后,無論是否選擇進行所有更改,Xcode都不會再次顯示警告。要重新運行檢查,請在項目導航器中選擇項目,然后選擇編輯器>驗證設置。

See Also

想要學習更多關于Xcode的知識,請打開Xcode,選擇 Help > Xcode help。

本篇文章只對官方進行了中文轉換,對于其中的一些功能點,有些文章對此進行了詳情描述。

我這里簡單收集了幾篇:

1、Xcode9 新特性

2、帶你快速瀏覽Xcode 9新特性

3、Xcode 9 倆個你必須知道的新功能

Enjoy ~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容