自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Swift開源帶來的思考

開發(fā) 開發(fā)工具
蘋果全球開發(fā)者大會今年的“猛料”不如往期,但Swift開源的消息,卻足以賺足開發(fā)者眼球。關(guān)于蘋果為什么開源Swift的分析已是鋪天蓋地,就無需多言,在這里更想由此思考一下語言發(fā)展的趨勢及伴隨的現(xiàn)象。

蘋果全球開發(fā)者大會今年的“猛料”不如往期,但Swift開源的消息,卻足以賺足開發(fā)者眼球。關(guān)于蘋果為什么開源Swift的分析已是鋪天蓋地,就無需多言,在這里更想由此思考一下語言發(fā)展的趨勢及伴隨的現(xiàn)象。

[[138482]]

蘋果全球開發(fā)者大會總能掀起一股旋風(fēng),雖然今年大會的“猛料”不如往期,但Swift在今年晚些時候開源的消息,卻足以賺足開發(fā)者眼球。

其實蘋果的行事風(fēng)格,我還是蠻喜歡的:“蘋果把自家的事情做好,給用戶最酷的體驗,他的實力就是我行我素的資本,而用戶也欣然接受這樣的蘋果。”不過,蘋果有自己的平臺、軟硬件,Swift也才發(fā)布將近一年的時間,這么快就開源Swift?

關(guān)于蘋果為什么開源Swift的分析已是鋪天蓋地,就無需多言,我覺得最重要的一點還是——通過吸引更多的開發(fā)者使用Swift,獲得更多的支持以及創(chuàng)意,能夠為蘋果帶來更大的商業(yè)利益。

在這里,我更想由此思考一下語言發(fā)展的趨勢及伴隨的現(xiàn)象。

一、語言/工具的封閉模式已經(jīng)落伍了

十來年前的軟件公司還有封閉資本,那時候的VB、Delphi足夠好用,盡管盜版也很普遍,但光靠賣這些工具就能賺到盆滿缽滿。到了后 來,Delphi幾經(jīng)掙扎還是沒落了。當(dāng)年李維在《Borland傳奇》里將主要原因歸咎于管理層接二連三失策,而從歷史軌跡來看,靠封閉單一的工具類產(chǎn) 品支撐業(yè)務(wù)發(fā)展,路口必將越收越窄。再來看看偌大的微軟帝國,其產(chǎn)品和技術(shù)的覆蓋面遍布各個角落,但最終也于2014年年底宣布開源.NET開發(fā)框架。

回首Java的二十年歷程,JDK是開源的(你只要打開Src.zip,就能看到源代碼),有開源免費的Eclipse和NetBeans的支 持,同時借著“一次編寫四處運行”的宣傳語吸引無數(shù)開發(fā)者積極投入,構(gòu)建出了一個龐大的Java社群,至今仍雄霸天下,這就是開源力量。

在這十多年里,不得不提的當(dāng)然還有PHP、Python、Ruby等一大波開源動態(tài)語言的盛行,這些早已為業(yè)務(wù)所證明是成熟而穩(wěn)定的解決方案。互聯(lián)網(wǎng)上,用PHP、Django或RoR構(gòu)建的網(wǎng)站比比皆是。

看看TIOBE語言榜就知道,開源的編程語言是多么流行!

隨著互聯(lián)網(wǎng)/移動互聯(lián)網(wǎng)的發(fā)展,“免費”已經(jīng)是經(jīng)典的商業(yè)盈利模式,現(xiàn)在互聯(lián)網(wǎng)的盈利點越來越集中在云平臺/云業(yè)務(wù)租賃、各種增值服務(wù)、流量、訂 閱和廣告上,越大的用戶量,盈利越明顯。而越多的開發(fā)者支持,創(chuàng)新點就越多,產(chǎn)品也越豐富。因此,我認(rèn)為作為開發(fā)支撐基礎(chǔ)的編程語言和工具,其開源和免費 趨勢將逐漸成為主流。畢竟,用戶資源和開發(fā)者資源,都是事關(guān)產(chǎn)品生存的生命線。

但為何仍有這么多不開源的產(chǎn)品,比如不少數(shù)據(jù)庫產(chǎn)品都不是開源的?其實,開源是一種模式,商業(yè)也是一種模式,看看著名的《大教堂與集市》就會有更 多感悟。君不見,開源的大數(shù)據(jù)、NoSQL解決方案已經(jīng)對商用數(shù)據(jù)庫造成了不小沖擊,而是否開源,也是商業(yè)公司的一種選項,比如微軟開源.NET框架、蘋 果開源Swift。商業(yè)公司的選擇總是考慮利益***,有可能是短期,也可能是長期的,但無論如何,千萬別把商業(yè)公司當(dāng)作開源的天敵,在合適時機做出合適的 選擇,如果需要開源,也未嘗不可。要知道,微軟、蘋果其實也為開源做出了不小貢獻!

二、語言的發(fā)展

有時候還是蠻懷念十幾、二十年前的軟件開發(fā)環(huán)境,好像你只要會C或C++就可以了。但時光早已不同,尤其是近年的語言趨勢更是呈現(xiàn)出許多新特性。 這些新特性的流行,得益于2000年代的動態(tài)語言,比如前面提到的PHP、Python、Ruby。而這些語言的日益流行,又得益于互聯(lián)網(wǎng)應(yīng)用的興起。 PHP在網(wǎng)站構(gòu)建方面占據(jù)大半壁江山,Python因應(yīng)互聯(lián)網(wǎng)數(shù)據(jù)量的噴發(fā)在科學(xué)計算領(lǐng)域得以重用,而RoR成就了多少初創(chuàng)公司的創(chuàng)業(yè)榮光。當(dāng)年被人不看 好的小腳本,卻在互聯(lián)網(wǎng)時代找到了大展身手的好時機?,F(xiàn)在你不會一門動態(tài)語言都不好意思說自己是程序員了。

還必須提一下JavaScript,當(dāng)年幾乎人人不待見的丑小鴨,誰能想到今天的地位如此突出呢?甚至還延伸出了Node.js這樣一個優(yōu)質(zhì)平 臺。一時間多少JavaScript開發(fā)者希望借助它實現(xiàn)心中的“全棧”夢想。同樣,沒有互聯(lián)網(wǎng),也就不會有JavaScript的大行其道。我認(rèn) 為,JavaScript在當(dāng)代的價值,不會輸給十幾年前的Java。

動態(tài)語言的流行,也讓許多組織和個人認(rèn)識到了其存在的價值——那就是開發(fā)效率大大提升。以前編程需要為1M、甚至幾百K的內(nèi)存絞盡腦汁,運用各種 Hack技巧。但遵從摩爾定律,硬件的發(fā)展速度非常快,于是,開發(fā)者逐漸將眼光轉(zhuǎn)到了開發(fā)效率上。動態(tài)語言中廣泛應(yīng)用的filter、map和 reduce等具有濃郁函數(shù)式風(fēng)格的高階函數(shù),被認(rèn)為是提升開發(fā)效率的有效手段。當(dāng)然,蘋果的Swift,同樣也大量應(yīng)用了這些特性。

就目前編程語法發(fā)展過程的幾個關(guān)注點,我的理解如下:

  • 不止是面向?qū)ο螅瘮?shù)式的回歸正在進行時。過去十幾年時間里,Java和C#兩種語言占據(jù)主流,面向?qū)ο缶幊瘫毁x予至高無上地位。但現(xiàn)在大家越來 越認(rèn)識到,面向?qū)ο缶幊踢_到一定規(guī)模時,復(fù)雜度也伴之而來。因此,舊有的函數(shù)式風(fēng)格又重出江湖,特別是一些函數(shù)式特性在動態(tài)語言中得到了良好驗證?,F(xiàn)在, 開發(fā)者對待面向?qū)ο笈c函數(shù)式兩種風(fēng)格,已經(jīng)不是非此即彼的印象了,而是認(rèn)識到它們是可以相輔相成的,比如Scala。即使是Java,也開始引入一些函數(shù) 式特性,更不用說先行一步的C#。再進一步,拋開風(fēng)格之爭,遵從應(yīng)用為先,從而采取實用的編程模式,比如Golang、Rust。

  • 并發(fā)特性的增強。多核及大數(shù)據(jù)時代的來臨,現(xiàn)實對并發(fā)特性提出了新需求。新出現(xiàn)的系統(tǒng)級語言如Scala、Clojure、 Erlang、Go及剛正式發(fā)布的Rust,都對并發(fā)特性給予極大關(guān)注,并各有各的解決方案。即使是動態(tài)語言如PHP、Python和Ruby等,也在這 方面不斷嘗試。同樣的,函數(shù)式語言中的不可變性概念,能夠較好地符合并發(fā)實現(xiàn)的現(xiàn)實需求。

三、語言營銷、語言魅力

語言間的各種對比、爭論由來已久,而且還歷久不衰,這其實也說明了語言的流行除了客觀條件,還存在一定主觀因素的影響。確切地說,這些主觀因素中很重要的兩點是:

  • 語言的官方組織或作者希望進一步擴大該語言影響力而采取的宣傳攻勢;

  • 愛好者出于對該語言的熱愛而釋放出的贊譽之詞,反過來還有反對者的不滿宣泄。

因此,語言是有“營銷”因素存在的,也許這也算是各種編程語言的魅力之一。當(dāng)然,在語言營銷過程中,利益關(guān)系往往緊隨其后。舉個例子,我印象最深 刻的一個語言營銷例子就是每年推出的Java短片,其中可以看到暗喻語言的各種惡搞,無形中讓人對Java產(chǎn)生了不小興趣。此外,當(dāng)下流行的各種語言/技 術(shù)大會,姑且不言參會價值,同樣是一種典型的語言/技術(shù)營銷手段。

Swift開源的消息在WWDC 2015大會上發(fā)布,可謂天時地利人和,算是一種成功的營銷。加上Swift具備的現(xiàn)代語言特性,Swift開源的策略可謂一炮打響,足以讓粉絲激動許久。

一門語言,如果有幾個業(yè)內(nèi)知名大牛支持,有一個實力雄厚的組織和平臺,具備一定優(yōu)質(zhì)特性,再加上合適的營銷策略,就很容易吸引眾多粉絲。

你我皆凡人,都有沖動之后就嚷嚷“再買就剁手”的經(jīng)歷,可見營銷的影響力簡直無孔不入。而開發(fā)者對語言的追求,一是現(xiàn)實剛需,二是自我興趣,三是 利益契合,如果光靠一時沖動,那么早晚會迷失自我,如何在感性和理性的平衡中選擇自己的語言方向?這很重要,但也許是另一個話題了。

四、Swift開源帶來了什么?

從技術(shù)角度來思考,Swift開源能帶給我們什么?我覺得主要有以下幾個方面:

  • 除了蘋果自家的平臺,以后也能在Linux上用Swift開發(fā)應(yīng)用了,這樣可以吸收更多Linux平臺上的Swift開發(fā)者;

  • 基于Swift的應(yīng)用會更加豐富,有了開發(fā)者對Swift的普遍熱情,以后也許會出來各種Swift的Web框架或其他什么有趣、有用的應(yīng)用;

  • Windows平臺雖然不在此列,而官方并不反對把Swift移至到其他平臺,但需要有人做這件事。嗯,微軟應(yīng)該不會忽略Swift?總之,只要機會之門打開,一切皆有可能;

  • 蘋果的私房菜Cocoa并未開源,開源的是Swift編譯器和標(biāo)準(zhǔn)庫,要在非蘋果官方平臺開發(fā)iOS應(yīng)用,暫時還不太可能;

  • Swift開源后的成功,特別是在不同平臺上的成功,很大程度上取決于生態(tài)的建立、有多少框架/第三方庫的支持。同時,也直接受Swift最終采用何種開源許可的影響。

總而言之,Swift開源是大大前進了一步。而超越Swift開源本身,當(dāng)今編程語言的發(fā)展趨勢也值得我們認(rèn)真思考。如果從完全理性的角度看待編 程語言,那么編程語言無非就是一門編程語言:“選擇好適合自己的編程語言就是了”。但問題就在于如何選擇合適的編程語言呢?語言的魅力也許就像盲人摸象, 你無法做到足夠理性,或者這世界就沒有銀彈,編程語言的比較和紛爭,將是一個永恒的話題,熱度***......

 
 
 
責(zé)任編輯:王雪燕
相關(guān)推薦

2014-03-24 09:25:57

2021-08-10 10:28:42

云計算安全技術(shù)

2023-04-13 08:33:51

2015-10-26 10:32:01

前端優(yōu)化工程化

2015-06-16 09:53:48

swift蘋果開源

2023-06-27 17:33:10

2013-07-29 09:36:05

100G傳輸100G

2013-07-16 09:15:29

2023-02-09 12:31:20

2017-01-03 17:18:02

開源OpenStack

2014-05-09 15:30:46

2024-02-22 08:35:49

2015-12-07 09:45:18

Swift開源好處

2012-05-16 09:24:13

360手機周鴻祎

2020-09-27 11:17:41

開源系統(tǒng) Swift

2024-10-28 09:02:12

2015-01-12 13:04:39

Swift開源項目匯總

2013-12-10 09:57:35

Openstack S開源云存儲Openstack

2015-12-07 09:46:26

swift編程開源

2015-03-17 11:09:33

Hadoop大數(shù)據(jù)數(shù)據(jù)開源工具
點贊
收藏

51CTO技術(shù)棧公眾號