Brad Cox and his Object-C

Brad Cox

對大多數人來說,Objective-C都是陌生的,原因在於它的走紅過程太短。但透過Objective-C的火爆,我們就不難理解蘋果程序商店的應用程序爲什麼輕易就突破了十萬個。

Objective-C的走紅過程

TIOBE編程語言排行榜,是業界公認的編程語言的實力榜。20098月,Object-C7月份上升至21位以後,又在8月份打進前二十名。這是一個信號,然而多數業界人士因爲不熟悉Objective-C,並沒有讀懂這個信號意味着什麼。

時間過入到200910月,這個信號得到了解讀。就在這個月,AppStore(程序商店)中的程序數量超過了10萬。當時業界認爲對於一款手機而言,除了強大的硬件支持以外,最受用戶關注的便是後續軟件支持。這也是智能手機之所以能夠一躍超過非智能手機成爲市場寵兒的最大原因。不少專家認同這樣一個觀點:憑藉着爲數衆多並且力作不斷的程序支持,蘋果iPhone在後期程序擴展能力方面的優勢要明顯高於其他品牌產品。

顯然,當時的人們更愛從iPhone硬件的角度去解讀AppStore的成功。

接下來的問題是,蘋果仍將研發出第四代以及後續iPhone產品,同期的程序數量更是爲數可觀,那麼接下來,AppStore的數量上限到底是多少。顯然,要想問答這一問題,單從硬件角度考慮,已是遠遠不夠了。因爲智能終端已經發展成一個平臺,並且這一平臺顯然在未來的某一天要和PC、筆記本電腦等平臺平起平坐。

何爲Objective-C

也許相當數量的人,是從20098月以後認識Objective-C語言的。但在此之前,Objective-C的發展歷史着實有些驚人,因爲它誕生於多數人都不知電腦爲何物的1986年。

Objective-C是蘋果Mac OS X 上開發的首選語言。Mac OS X技術源自NextStepOpenStep操作系統,而OPENSTEP的軟件架構都是用Objetive-C 寫成的。這樣,Objective-C就順理成章地成爲了Mac OS X上的最佳語言。

1986年,Brad Cox在第一個純面嚮對象語言Smalltalk基礎上寫成了Objective-C語言。這之後,Brad Cox創立了StepStone公司從事Objective-C的推廣。1988年,Steve JobsNextStep採用Objective-C作爲開發語言,1992GNU GCC編譯器中包含了對Objective-C的支持。這以後的相當長時間內,應用Objective-C語言的都是日後編程界的大腕,象Richard StallmanDennis Glating等人。

還回到AppStore的數量上限這一問題,如果我們拿Objective-C當做一個參照指標來看,是再合適不過了。

Objective-C的輝煌

時間進入到了20105月,Objective-C又給了我們一個驚喜。因爲Objective-C歷史性地打進了TIOBE編程語言排行榜的前十名。也許會有人對此不以爲然,但別忘了,20016TIOBE編程榜發佈以來,總體只有13個編程語言曾經進入前十名。

而且還有一點不容忽略,這就是Objective-C語言自1986年發佈以來,並沒有出現革命性的創新。Objective-C語言是唯一一種可以爲iphoneipad編程的語言,它的火爆完全是因爲基於Mac OS X平臺和iPhone平臺移動開發的熱度升高所致。

儘管Objective-C語言擠進了TIOBE編程語言排行榜的前十名,但我們不得不說它的發展潛力還非常大。原因很簡單,Objective-C語言的實際使用率只有0.08%。但另一方面,我們不得不說,Objective-C語言從第二十名擠進第十名只用了九個月時間,但接下來再前進一步都是困難極大的,因爲它的競爭對手已變成了CJavaC++PHP等老牌編程語言。

在接下來的時間裏,Objective-C語言如果能再把自己的名次往前提,完全可以說是:Objective-C語言前進的一小步,就是移動開發產業的一大步。[1]

2010年2月編程語言榜單:Objective-C高歌猛進回目錄

Tiobe今日發佈了20102月份的編程語言排行榜,在上月的榜單中,Go語言增長最多 ;本期榜單我們關注在2009年得到蓬勃發展的另一門編程語言——Objective-C,在年度編程語言評選中,它僅以0.01%的差距落後於Google Go

2月編程語言排行榜TOP20


20102月編程語言排行榜TOP20

請留意排名第12位的Objective-C,在20081月和20091月發佈的年度榜單中,Objective-C分別排名第4737位。短短三年,Objective-C何以有如此快速的成長?


2002-2009Objective-C趨勢走向

Objective-C的發展歷程

CC++Java這樣的語言相比,我們可能對Objective-C有些陌生。其實,早在上世紀80年代Objective-C就已誕生。1980年代初,就職於Stepstone公司的Brad Cox發明了Objective-CBrad當時想打造一門流行的、可移植的C語言與優雅的Smalltalk(關於Smalltalk的語言特性請參考Smalltalk之父的報道)結合體

Objective-CC語言的一個擴展集,以C爲基礎,並在其中增加了一些重要的特性。Objective-C是講究實用和效率的語言,使用過C++或者Java的開發者一定會驚歎Objective-C的程序如此簡短,一般,Objective-C寫成的程序通常不會比其原始碼大很多。另外,Objective-C還繼承了Smalltalk語言的優雅和麪向對象特性,而其經過改造的函式庫卻不像Smalltalk那樣需要過大的內存資源


Objective-C創始人Brad Cox

1985年,被趕出蘋果公司的Steve Jobs成立了NeXT公司,致力於開發強大且經濟的工作站。NeXT選擇Unix作爲其操作系統,並創建了NeXTSTEP Toolkit軟件包,這個工具包用於開發用戶界面,功能強大,其使用的編程語言就是Objective-C1993年,NeXT中止了硬件業務,轉爲專注與OpenSTEP軟件市場,並推出了一套網絡程序架構WebObjects用於進行動態頁面的生成。1996年,蘋果公司以4億美金收購了NeXTNeXTSTEP被重命名爲CocoaWebObjects則集成到Mac OS ServerXcode中。Objective-C自然而然成爲Mac平臺的首選開發語言,並受到Macintosh編程人員的廣泛認可;Cocoa成爲蘋果免費提供的開發工具,提供Mac平臺應用開發的環境。

Objective-C的詠歎調

由於蘋果公司的市場定位和Mac平臺的特殊要求,Objective-C一直在編程語言領域保持一種低調的形象。與Windows平臺下的應用開發技術和編程語言的繁盛景象相比,Objective-C更像是孤獨盛開在Mac平臺上的技術奇葩。


Mac平臺上的應用開發

iPhone的發佈改變了這一切。基於App Store模式的iPhone軟件開發不但爲iPhone用戶提供品類豐富的應用程序擴展,還爲衆多軟件公司和獨立開發者提供機會(詳細請參考51CTO之前的報道《獨立軟件開發者,你準備好了嗎》)097月,App Store上線一週年後,軟件數量已達到6萬,每日新上線近千款iPhone軟件。考察一門編程語言是否受歡迎,其應用場景和項目需求是最重要的一點;iPhone應用開發的火爆帶動Objective-C語言的繁榮。衆多軟件開發者由其他語言或平臺轉向Objective-C開發iPhone應用程序,一時之間,Objective-CiPhone的開發書籍持續熱銷。

這種熱度還將持續。蘋果公司最近發佈了採用iPhone OSiPad51CTO曾就蘋果iPad發佈背後的意義做過報道,雖然業界對這一款產品也是褒貶不一,但是這一點也不妨礙iPad的擴展應用成爲App Store的下一個熱點。行業、市場需求和應用場景的廣泛性將決定一門編程語言的流行程度。可以預見,Objective-C將迎來在iPad上進行應用開發的高潮,在移動開發的舞臺上唱響更動聽的技術詠歎調。

在本期的編程語言排行榜中,TIOBE指出,ScratchScala ErlangJavaFX Script這幾種編程語言正在向前20名挺進,讓我們看看他們目前的排名。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章