WWDC2018新功能及特性

WWDC2018發(fā)布會(huì)

本次WWDC發(fā)布了iOS12、macOS Mojave档桃、watchOS 5以及tvOS 12在內(nèi)的新版操作系統(tǒng)瞬哼。

iOS12 -性能與新特性齊頭并進(jìn)

1潜圃、專注于性能優(yōu)化贩据。所有兼容iOS11的機(jī)型都將能使用iOS12.得益于CPU響應(yīng)機(jī)制的優(yōu)化,iOS12在新舊機(jī)型上都有良好的表現(xiàn)码撰。據(jù)蘋果介紹渗柿,iOS 12 將使得 iPhone 或 iPad 的操作更加快速和靈敏,比如應(yīng)用啟動(dòng)速度最高提升 40%脖岛;鍵盤顯示速度最高提升 50%朵栖,鍵盤調(diào)出的速度比以往更快,輸入也更加靈敏柴梆;從鎖屏界面中啟動(dòng)相機(jī)的速度最高提升 70%陨溅;高負(fù)載下 app 啟動(dòng)速度最高提升 2 倍。

2绍在、AR:蘋果聯(lián)合皮克斯在內(nèi)的3D巨頭創(chuàng)造了一種新的AR格式门扇,USDZ雹有,同時(shí)對(duì)ARKit進(jìn)行了多項(xiàng)升級(jí)使其更好的融入生活。

3臼寄、Siri Shortcuts(快捷短語)霸奕。Siri支持在App中創(chuàng)建或定制命令,以便快捷的執(zhí)行操作吉拳。

4铅祸、防沉迷。iOS新增了屏幕使用時(shí)間功能合武。具體來說,這項(xiàng)功能通過統(tǒng)計(jì)你花在各個(gè)app涡扼、網(wǎng)頁瀏覽上的時(shí)間稼跳,以及接收通知和拿起手機(jī)的頻率,讓你能夠系統(tǒng)的了解自己使用手機(jī)的習(xí)慣吃沪,從而幫助你合理安排花在設(shè)備上的時(shí)間汤善。

5、動(dòng)畫表情(Animoji)和擬我表情(Memoji)票彪。在iPhone X及以上機(jī)型支持創(chuàng)建擬我表情红淡,可以通過選擇皮膚、發(fā)型降铸、頭型在旱、眼睛、眉毛等特征來創(chuàng)建自己的卡通形象推掸,然后用在信息 app 或者 FaceTime 通話中桶蝎。

image

6、FaceTime通話谅畅。在iOS12中新增了群聊功能登渣,最多可支持32人同時(shí)進(jìn)行通話。其次毡泻,還新增支持動(dòng)畫表情和擬我表情胜茧。

watchOS 5 - 成為更好的智能助手

watchOS立志成為人類更好的智能助手,此次也在人工智能方面做出了改進(jìn)仇味。

1呻顽、更好的健身助手:通過大數(shù)據(jù)分析,watchOS能更準(zhǔn)確的估計(jì)運(yùn)動(dòng)消耗丹墨,并支持好友間的競(jìng)賽芬位。

2、更智能的Siri:和iOS12同步支持快捷語句带到、提供更準(zhǔn)確的預(yù)測(cè)功能昧碉。

3英染、對(duì)講機(jī)功能:支持一對(duì)一的對(duì)講。

tvOS 12 - 視覺和聽覺的盛宴

最新發(fā)布的tvOS 12為Apple TV 4K加入了杜比全景聲支持被饿,使用戶在4K和HDR畫質(zhì)的基礎(chǔ)上得到更好的觀影體驗(yàn)四康。

macOS Mojave - 更專業(yè),也更親民

1狭握、夜間模式:暗色的背景為專業(yè)的圖像處理人員闪金、視頻編輯人員和開發(fā)者帶來了更舒適的體驗(yàn);

2论颅、桌面文件智能分組哎垦,讓用戶從雜亂的桌面中解脫出來。

3恃疯、全心的Mac App Store漏设。

4、iOS app的移植 - 包括股市今妄、語音備忘錄和家庭:macOS Mojave發(fā)力了一項(xiàng)令開發(fā)者期待已久的實(shí)驗(yàn)郑口,通過與iOS共享Foundation等底層框架,讓iOS app在僅需少部分代碼改動(dòng)的情況下被移植到Mac OS上盾鳞。這項(xiàng)矚目的功能目前在蘋果原生app上得到了實(shí)踐犬性,并預(yù)計(jì)在2019年開放給廣大第三方開發(fā)者們。

針對(duì)開發(fā)者的教程

對(duì)于iOS開發(fā)者而言腾仅,蘋果在WWDC上為開發(fā)者帶來的一系列課程則更有實(shí)踐意義乒裆。通過這些課程,開發(fā)者可以更細(xì)致的了解iOS12的新特性以及其在開發(fā)上的應(yīng)用推励;而課程中對(duì)原理和最佳實(shí)踐的講解也對(duì)開發(fā)者提供了豐富的指導(dǎo)缸兔。下面我們將以iOS開發(fā)者的角度窺探WWDC 2018帶來的革新。

正如蘋果的高級(jí)副總裁Craig Federighi在發(fā)布現(xiàn)場(chǎng)所說的吹艇,iOS12在專注于性能和穩(wěn)定性的同時(shí)惰蜜,對(duì)ARKit、Siri受神、通知中心進(jìn)行了改進(jìn)抛猖。想要了解iOS12具體帶來了哪些新特性,Cocoa Touch革新 一文是一個(gè)精準(zhǔn)的切入點(diǎn)鼻听。從這篇文章中财著,我們能了解iOS12在以下幾個(gè)方面做出了重大更新:

性能提升

iOS12對(duì)性能和穩(wěn)定性的專注,使得它成為支持設(shè)備最多的iOS系統(tǒng)

1撑碴、scrolling撑教。在iOS12中首先對(duì)scrollview的滑動(dòng)做了預(yù)加載數(shù)據(jù)和CPU計(jì)算優(yōu)化。在iOS12中有了prefetch API醉拓,這個(gè)API可以提前異步的去進(jìn)行數(shù)據(jù)的獲取伟姐,所以在滑動(dòng)的時(shí)候繪制Cell那一幀時(shí)間里就省去了數(shù)據(jù)獲取的步驟收苏,只負(fù)責(zé)cell的繪制就夠了,這樣就大大節(jié)省了CPU的開銷愤兵。

在UITableViewDataSourcePrefetching這個(gè)protocol中鹿霸,也就兩個(gè)方法:

protocol UITableViewDataSourcePrefetching {

func tableView(_ tableView: UITableView, prefetchRowsAtindexPaths: [IndexPath])

func tableView(_ tableView: UITableView, cancelPrefetchingForRowsAt: indexPaths [IndexPath])

}

這兩個(gè)方法中必須實(shí)現(xiàn)的就是prefetchRowAt這個(gè)方法,你可以把一些耗時(shí)的數(shù)據(jù)獲取工作放在這個(gè)方法中秆乳。這樣就可以在cell顯示之前提前獲取數(shù)據(jù)而不用等到cell繪制的時(shí)候另外占用CPU開銷懦鼠。

2、iOS對(duì)圖片的內(nèi)存優(yōu)化屹堰。Automatic Backing Store肛冶。在iOS12的SDK中默認(rèn)會(huì)在下面這三個(gè)方法中進(jìn)行。

  • UIView.draw()

  • UIGraphicsImageRenderer

  • UIGraphicsImageRenderFormat.Range

所有與圖片渲染相關(guān)的API都可以使用Automatic Backing Store扯键,如果想要了解詳細(xì)使用情況的話睦袖,可以看這個(gè)sessionImage and Graphics Best Practices

3、高性能 AutoLayout High Performance Auto Layout

iOS12對(duì)AutoLayout做出了革命性的性能優(yōu)化忧陪。此前,AutoLayout一直是業(yè)務(wù)開發(fā)中一大性能瓶頸近范,以至于部分app不得不忍痛舍棄對(duì)AutoLayout的使用來緩解掉幀等性能問題嘶摊。而這些問題在iOS12之后很可能成為歷史。

文章通過對(duì)AutoLayout底層原理的講解评矩,向讀者展示了AutoLayout的運(yùn)作方式叶堆。同時(shí)給出了AutoLayout使用上的最佳實(shí)踐,幫助開發(fā)者編寫一個(gè)高性能的布局斥杜。

4虱颗、優(yōu)化 App Assets Optimizing App Assets

在一個(gè)iOS app中,資源文件也是及其重要的一部分蔗喂。如何在應(yīng)用中通過使用assets達(dá)到最好的視覺效果和最高效的使用視圖資源忘渔,也是每個(gè)開發(fā)者應(yīng)該關(guān)注的部分。

文章概述了iOS12針對(duì)資源文件產(chǎn)出的新特性缰儿。介紹了如何使用asset catalog來最優(yōu)化的組織畦粮、優(yōu)化、制作視圖資源乖阵,如何更好的簡化設(shè)計(jì)和開發(fā)人員之間工作流程。通過使用視圖asset,可以提高應(yīng)用的交付質(zhì)量夜郁,占用更小的空間沉噩,受益到更多的用戶。

5对蒲、使用Xcode做更快的構(gòu)建 Building Faster in Xcode

除了iOS12運(yùn)行上的性能提升钩蚊,蘋果還在最新發(fā)布的Xcode10上對(duì)構(gòu)建速度與開發(fā)效率進(jìn)行了優(yōu)化贡翘。

文章講述了Xcode 10與提高構(gòu)建速度和開發(fā)效率相關(guān)的新特性,從工具两疚、環(huán)境床估、代碼以及語言語法等多個(gè)方面介紹了加快構(gòu)建速度的細(xì)節(jié)。通過了解Xcode在構(gòu)建速度上的優(yōu)化原理诱渤,開發(fā)者可以更好更高效地進(jìn)行日常開發(fā)工作丐巫。

Swift

Swift從誕生以來就是每年WWDC備受關(guān)注的焦點(diǎn)之一。越來越多的開發(fā)者和企業(yè)開始轉(zhuǎn)向于使用Swift進(jìn)行開發(fā)勺美,Swift相關(guān)的課程也越來越受到包括字節(jié)跳動(dòng)的工程師們?cè)趦?nèi)的開發(fā)者的重視递胧。

Swift 4.2革新 What's new in Swift

WWDC2018發(fā)布了Swift 4.2版本。主打兩方面的更新:一是關(guān)注提升開發(fā)人員生產(chǎn)力赡茸,開發(fā)者可以看到項(xiàng)目構(gòu)建速度的提升和利于開發(fā)的語言改進(jìn)缎脾;二是在二進(jìn)制兼容性方面進(jìn)行了大量的努力。

文章介紹了Swift 4.2在這兩方面的革新占卧,同時(shí)對(duì)部分改進(jìn)細(xì)節(jié)進(jìn)行了原理剖析遗菠。

Swift 泛型 Swift Generics

泛型設(shè)計(jì)對(duì)于Swift語言來說是一個(gè)很重要的特性,能夠既保持靜態(tài)類型的特點(diǎn)又能夠達(dá)到代碼重用的目的华蜒。

文章主要探討了Swift泛型特性設(shè)計(jì)上的思考和新特性的應(yīng)用方法辙纬,幫助開發(fā)者更好的理解和使用泛型這一特性。

了解Swift Package Manager Getting to Know Swift Package Manager

包管理一直軟件開發(fā)和管理中重要的一環(huán)叭喜。Swift Package Manager是Apple官方提供的軟件包管理器贺拣。

文章深入介紹了Swift Package Manager的優(yōu)勢(shì)、基本概念和常用用法捂蕴,記憶它的架構(gòu)和設(shè)計(jì)思想譬涡。同時(shí)闡述了為什么Swift Package Manager是一個(gè)安全、高效而且使用簡單的軟件包管理器啥辨。

創(chuàng)建屬于你自己的 Swift Playgrounds 訂閱 Create Your Own Swift Playgrounds Subscriptio

蘋果推崇人人都能使用Swift編程涡匀,在Swift的教育方向上做出了持續(xù)的努力。Swift Playgrouds就是為此誕生的一款革命性的iPad應(yīng)用溉知。

文章介紹了如何利用WWDC2018中新推出的模板工具制作出屬于自己的 Playground Book 以及如何托管自己的訂閱源并分享給他人渊跋。

AR

今年的WWDC發(fā)布會(huì)上,ARKit的更新作為iOS12的一大亮點(diǎn)被隆重介紹着倾。

ARKit2 革新 What’s New in ARKit 2

ARKit 2是本次WWDC重點(diǎn)推出的更新拾酝,它使得開發(fā)生動(dòng)的AR體驗(yàn)的程序變得更容易,并提供了全新的方式與真實(shí)世界進(jìn)行交互卡者。

文章主要講述了ARKit 2的新特性蒿囤。ARKit 2開始支持多臺(tái)iOS設(shè)備同時(shí)查看同一AR場(chǎng)景或享受多人AR游戲,及提供2D圖像和3D物體的檢測(cè)與跟蹤等新能力崇决。

AR Quick Look 概覽 AR Quick Look

AR Quick Look 是iOS12推出的在AR場(chǎng)景中快速展示3D模型的新技術(shù)材诽,使用便捷底挫。

文章主要介紹了預(yù)覽頁QLPreviewController的使用以及新型的3D模型文件格式.usdz,并且介紹了官方對(duì)于創(chuàng)建并優(yōu)化3D模型的建議脸侥。開發(fā)者可以使用Xcode10自帶的usdz Converter工具建邓,輕易地將現(xiàn)有的3D模型資源打包成.usdz文件,集成到App或者Html中睁枕,快速預(yù)覽AR場(chǎng)景中的3D效果官边。

最佳實(shí)踐

WWDC中,除了對(duì)iOS12新特性的介紹外遇,還有不少課程為開發(fā)者提供各iOS版本通用的原理和最佳實(shí)踐的講解注簿,指導(dǎo)開發(fā)者提升代碼穩(wěn)定性、優(yōu)化性能跳仿。

高效使用集合 Using Collections Effectively

集合是日常開發(fā)中頻繁接觸的對(duì)象诡渴,理解集合、使用好集合也是每個(gè)iOS開發(fā)工程師必備的技能菲语。

文章介紹了和集合相關(guān)的概念, 用法, 以及一些性能上的注意點(diǎn), 從而指導(dǎo)開發(fā)者高效, 安全, 優(yōu)雅的使用集合妄辩。

深入解析iOS內(nèi)存 iOS Memory Deep Dive

內(nèi)存是有限且系統(tǒng)共享的資源。對(duì)內(nèi)存不合理的使用很有可能會(huì)引發(fā)OOM等嚴(yán)重問題山上。

文章介紹了虛擬內(nèi)存分配機(jī)制以及開發(fā)者需要控制的內(nèi)存占用部分眼耀,并推薦了通過命令行工具分析記錄內(nèi)存信息memgraph文件的調(diào)試方式。此外胶哲,蘋果工程師也在此給出了一些不同場(chǎng)景下如何合理使用內(nèi)存的建議畔塔。

圖像最佳實(shí)踐 Image and Graphics Best Practices

在日常app開發(fā)中潭辈,圖片處理是開發(fā)者們經(jīng)常遇到的挑戰(zhàn)鸯屿。如何讓圖片展示更快、占用內(nèi)存更少把敢?

文章重點(diǎn)關(guān)注iOS系統(tǒng)如何處理圖片寄摆,包括UIImage,UIImageView修赞,custom drawing in UIKit婶恼,advanced CPU and GPU techniques四部分,旨在幫助app提高性能柏副,減少內(nèi)存占用勾邦。

測(cè)量和優(yōu)化HLS性能 Measuring and Optimizing HLS Performance

HTTP Live Streaming是蘋果推出的流媒體網(wǎng)絡(luò)傳輸協(xié)議。

文章通過對(duì)流媒體直播回放過程的解刨割择,講述如何準(zhǔn)確測(cè)量HLS流媒體性能眷篇,定位和優(yōu)化HLS性能瓶頸以及如何正確使用Master Playlists來提升用戶觀看體驗(yàn)。

Web安全策略 Strategies for Securing Web Content

帳號(hào)登錄

web是app中經(jīng)常使用的荔泳,也是很容易受到安全攻擊部分蕉饼,它遠(yuǎn)遠(yuǎn)沒有大家想象的安全虐杯。本文列出了常見的三種攻擊手段:跨域攻擊、預(yù)測(cè)執(zhí)行攻擊昧港、窗口控制攻擊擎椰,尤其是預(yù)測(cè)執(zhí)行攻擊,對(duì)于大家常用的UIWebView來說是根本無法防御的创肥。本文總結(jié)了以往的安全防御手段达舒,并介紹了新推出的Cross-Origin-Resource-Policy 和 Cross-Origin-Window-Policy,針對(duì)這三種攻擊手段瓤的,給出了全面的防御手段休弃。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市圈膏,隨后出現(xiàn)的幾起案子塔猾,更是在濱河造成了極大的恐慌,老刑警劉巖稽坤,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丈甸,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡尿褪,警方通過查閱死者的電腦和手機(jī)睦擂,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杖玲,“玉大人顿仇,你說我怎么就攤上這事“诼恚” “怎么了臼闻?”我有些...
    開封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長囤采。 經(jīng)常有香客問我述呐,道長,這世上最難降的妖魔是什么蕉毯? 我笑而不...
    開封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任乓搬,我火速辦了婚禮,結(jié)果婚禮上代虾,老公的妹妹穿的比我還像新娘进肯。我一直安慰自己,他們只是感情好棉磨,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開白布江掩。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪频敛。 梳的紋絲不亂的頭發(fā)上项郊,一...
    開封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天,我揣著相機(jī)與錄音斟赚,去河邊找鬼着降。 笑死,一個(gè)胖子當(dāng)著我的面吹牛拗军,可吹牛的內(nèi)容都是我干的任洞。 我是一名探鬼主播,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼发侵,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼交掏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起刃鳄,我...
    開封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤盅弛,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后叔锐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體挪鹏,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年愉烙,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了讨盒。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡步责,死狀恐怖返顺,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情蔓肯,我是刑警寧澤遂鹊,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布,位于F島的核電站省核,受9級(jí)特大地震影響稿辙,放射性物質(zhì)發(fā)生泄漏昆码。R本人自食惡果不足惜气忠,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望赋咽。 院中可真熱鬧旧噪,春花似錦、人聲如沸脓匿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽陪毡。三九已至米母,卻和暖如春勾扭,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背铁瞒。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來泰國打工妙色, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人慧耍。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓身辨,卻偏偏與公主長得像,于是被迫代替她去往敵國和親芍碧。 傳聞我的和親對(duì)象是個(gè)殘疾皇子煌珊,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容