香蕉久久久久久av综合网成人,天天躁日日躁狠狠躁av麻豆男男 ,午夜福利网国产a,偷国产乱人伦偷精品视频,午夜裸体性播放

蘋果自家的編程語言 Swift 一經(jīng)推出便引起了多方討論,一些人說 Swift 將會改變整個蘋果的應(yīng)用生態(tài),一些人則認為這不過是一個玩具語言。因此今天我和極客學(xué)院的創(chuàng)始人靳巖,以及氪加的 iOS 開發(fā)工程師盧侃一起聊了聊 Swift 對互聯(lián)網(wǎng)的影響。有趣的是,我們?nèi)齻€,一個是互聯(lián)網(wǎng)的觀察者(我),我一個是互聯(lián)網(wǎng)技術(shù)教育的從業(yè)者(靳巖),一個是 iOS 應(yīng)用的開發(fā)者(正為避免失業(yè)而開始看 Swift 的盧侃),都對 Swift 可能帶來的前景感到興奮。

觀察者暮山:

從一個旁觀者的角度,我認為 Swift 的代表的是編程語言的基本發(fā)展方向。

縱觀計算機的發(fā)展史,我們可以看到,計算機編程語言在由以機器為中心向以人為中心發(fā)展,即,從更便于機器閱讀的語言發(fā)展為更便于人類編寫,更接近人類自然語言。

最開始的電腦編程都是人工輸入“0”和“1”的機器語言,完全以電腦為中心。后來大家覺得每天輸“0”“1”效率實在太低了,便有人發(fā)明了匯編語言,用一些符合和字母來代替特定的“0”和“1”的組合。再后來,匯編語言也顯得寫起來太慢,如果想用匯編語言寫一個較大的程序需要海量的代碼。于是有人發(fā)明了 C 語言這門“高級語言”,讓開發(fā)者本身能夠更高效快速的編寫代碼,同時不太犧牲計算機讀取代碼的效率。然后 C 語言迅速成為了代碼界的主流語言。

盡管 C 語言比起最初的機器語言已經(jīng)好懂很多,而且需要寫的代碼量更少了,但依然有人想,編程語言能不能更簡單,更像人話?這就出現(xiàn)了腳本語言,比如大家熟知的 Python,Perl,以及我們的網(wǎng)站所用的 PHP。然而腳本語言并沒有像 C 語言一樣基本替代了匯編語言,這是為什么呢?

最簡單的原因便是,腳本語言運行效率較低。電腦并不理解腳本語言,因此,用腳本語言寫的程序會被轉(zhuǎn)化為機器語言,從而讓計算機執(zhí)行。然而問題是,這就好像我說中文,你說英語,我們之間隔了一個翻譯,翻譯給機器后總是會產(chǎn)生詞不達意的情況,因此許多本來很簡單的運行會被拖的冗長,從而降低了運行效率。而 C 語言等面向機器的語言則更像是一個懂英語的人用中文說話給翻譯,他了解英語思考者的思路和邏輯,并且明確的用中文中類似的表達說出來,所以 C 語言的運行效率更高。

而我對 Swift 看好的原因便是它既解決了腳本語言運行效率的問題,又繼承了其簡潔的語法和強大的功能。Swift 語言的發(fā)明者 Chris Lattner 之前最大的成就便是開發(fā)了編譯系統(tǒng) LLVM,能將高級語言轉(zhuǎn)換為機器語言,也就是前文所說的“翻譯”。Lattner 也因為 LLVM 其極大的提高了包括 Objective C 在內(nèi)的諸多高級語言的執(zhí)行效率而獲得了美國計算機協(xié)會頒發(fā)的“軟件系統(tǒng)獎”。這次 Lattner 開發(fā) Swift 相當于從高級語言到編譯器做了個全套,并且他表示 Swift 在許多方面的運行效率都優(yōu)于 Objective C,而且遠超的 Python。

也就是說,如果 Swift 的運行效率真的像 Lattner 描述的那樣,那么 Swift 代表的程序猿先進生產(chǎn)力的發(fā)展要求(提高編程效率),代表了計算機先進文化的發(fā)展方向(語法簡潔,現(xiàn)代),代表了廣大人民的根本利益(寫起來爽,學(xué)起來快)。當然,前提是 Swift 真的像 Lattner 所說的那樣強大。

教育者靳巖:

我認為現(xiàn)在大家不論怎樣高度評價 Swift 都是低估了它會對業(yè)界帶來的影響。

首先是他是一門新語言,而且關(guān)鍵是它是被蘋果推動的,有非常好的應(yīng)用場景。圍繞 Swift 未來會出現(xiàn)與之相關(guān)的社區(qū),開源代碼,培訓(xùn)課程等...Swift 將會帶動一整個與之相關(guān)的生態(tài),而里面一個非常小的部分都有很大的商機。

其次我個人也非常看好 Swift,因為它是蘋果對自己的一次顛覆,而它對抗的正是代碼界的官僚化。舉個例子,現(xiàn)在 Java 都更新到 8.0,但現(xiàn)在大部分人用的都還是 Java 1.6,為什么大家不用有更多新特性的 Java 8.0 呢?說白了就是大家覺得 1.6 已經(jīng)能做許多事情,懶得去看新功能了。而 Java 本身也一樣,一度我都覺得它要死了,結(jié)果 Andorid 又把它救活了。但現(xiàn)在 Java 修修補補到 8.0 依然還是有許多問題是沒法解決的,因為本身就是架構(gòu)上的過時,那為何大家還在用它?因為那些大公司都用習(xí)慣 Java 了,沒有勇氣去換一個更現(xiàn)代更高效的語言,而 Swift 則是逼著公司和開發(fā)者去適應(yīng)新的語言和功能。

Swift 的情形和 Go(Google 發(fā)布的編程語言)不一樣。大家都知道 Go 很好,但 Google 從來沒說要大家用 Go 來寫 Andorid 的應(yīng)用。這就不像蘋果,推出 Swift 后,對 Objective C 的支持肯定會逐漸減弱,最后完全轉(zhuǎn)到 Swift,這就逼大家必須拋棄二十多年前發(fā)明的 Objective C 而必須用 Swift。退一步,如果用 Swift 的效率比 Objective C 高,你如果不用 Swift 在應(yīng)用市場上的反應(yīng)就會比別人慢,那還是逼你用 Swift。

特別是這樣一來,Google 最后還是只能要求大家用 Go 而不是 Java 來寫 Andorid 的應(yīng)用,這樣對整個 IT 圈都是一件進步的事。

iOS開發(fā)者盧侃:

自從 Swift 推出后小伙伴們都嘲笑我這個 Objective C 的開發(fā)者要失業(yè)了... 所以我最近一直在看 Swift...

事實上,我身邊的很多人都在看 Swift,除了一些其他領(lǐng)域的 coder 外,也有人想從 Swift 作為編程學(xué)習(xí)的入門。但我覺得 Swift 并非一門為入門者準備的語言。

Swift 參考了諸多主流腳本語言的語法,這讓它在語法上非常容易,一些有經(jīng)驗的開發(fā)者花一兩個小時看看開發(fā)指南就能上手,但開發(fā)應(yīng)用和了解語法畢竟是不一樣的事。舉個例子,如果一個開發(fā)者本來做服務(wù)器端的人,那他可能完全不知道一款應(yīng)用的開發(fā)模式(比如蘋果推崇的 MVC) 模式,那么,盡管他對語言本身很熟悉,但和應(yīng)用開發(fā)有關(guān)的一切都還是要重新學(xué)。因此,盡管 Swift 降低了編程語言的學(xué)習(xí)成本,但程序開發(fā)依然需要經(jīng)驗,所以很多人說 Swift 只是表面上把大家拉到了同一個起點,原本熟悉 iOS 的開發(fā)者還是擁有極大的優(yōu)勢。而對初學(xué)者來說,語言門檻之后還有許多門檻,不可能突然涌現(xiàn)出許多之前對編程沒什么了解的開發(fā)者。

當然,Swift 的特性會得到怎樣的應(yīng)用,能否提高 iOS 應(yīng)用的性能等,我們可能需要在用 Swift 編寫的應(yīng)用上線后才能看到。

我看 Swift 去了...

(可憐的即將失業(yè)的 Objective C 工程師...)

當然,我們對 Swift 的討論都以它是一款開發(fā) iOS 端和 OS X 端的編程語言為前提,并非討論各種編程語言本身的優(yōu)劣。目前 GitHub 上已經(jīng)出現(xiàn)了一些 Swift 的開源項目,極客學(xué)院也上線了 Swift 的開發(fā)課程,有興趣的同學(xué)可以去查看。

 

穩(wěn)定

產(chǎn)品高可用性高并發(fā)

貼心

項目群及時溝通

專業(yè)

產(chǎn)品經(jīng)理1v1支持

快速

MVP模式小步快跑

承諾

我們選擇聲譽

堅持

10年專注高端品質(zhì)開發(fā)
  • 返回頂部