亚洲日本va中文字幕在线不卡_亚洲在线小视频_国产成人在线电影_高清在线一区二区

| 加入桌面 | 手機(jī)版
免費(fèi)發(fā)布信息網(wǎng)站
貿(mào)易服務(wù)免費(fèi)平臺(tái)
 
 
當(dāng)前位置: 貿(mào)易谷 » 資訊 » 電子數(shù)碼 » Objective-C最令人深惡痛絕的九大特性

Objective-C最令人深惡痛絕的九大特性

放大字體  縮小字體 發(fā)布日期:2014-06-09 08:33  瀏覽次數(shù):36
  蘋果可能是有史以來(lái)運(yùn)營(yíng)最為成功的企業(yè)之一。喬布斯也是一位當(dāng)之無(wú)愧的草根英雄。iPhone與iPad是技術(shù)與美感的高度融合,而為iOS系統(tǒng)開發(fā)應(yīng)用也成為眾多開發(fā)者的重要生財(cái)之道—當(dāng)然,前提是大家幸運(yùn)地通過(guò)了App Store的審核并在浩如煙海的軟件中得到了消費(fèi)者們的關(guān)注。不過(guò)這一切積極因素仍無(wú)法掩蓋整套體系中的負(fù)面狀況。在種種令人惱火的蘋果開發(fā)生態(tài)系統(tǒng)經(jīng)歷當(dāng)中,最無(wú)法忍受的就是利用tive-C進(jìn)行編程—快來(lái)吧,Swift,我們需要你!在今天的文章中,我們將一同探討tive-C是依靠哪九大特性搞到天怒人怨的。
 
  tive-C最令人深惡痛絕的九大特性
 
  實(shí)在有點(diǎn)太過(guò)特異
 
  tive-C中的字母“C”代表的就是C語(yǔ)言,這一點(diǎn)與“t”中的“Java”完全不同。無(wú)論是指針、整數(shù)還是括號(hào),所有表達(dá)方式都與C非常相近。但二者之間的共同點(diǎn)也就僅限于此了。
 
  tive-C的擁護(hù)者們堅(jiān)持認(rèn)為tive-C屬于C語(yǔ)言的一種規(guī)則嚴(yán)格的超集:如果大家能夠在C語(yǔ)言中實(shí)現(xiàn)某些功能,那么也應(yīng)該可以在tive-C中加以重現(xiàn)—不過(guò)反過(guò)來(lái)卻未必奏效。因此大家可能需要考慮,“我到底應(yīng)該使用tive-C方法進(jìn)行描述,還是選擇C語(yǔ)言?”實(shí)現(xiàn)對(duì)C程序的可移植性需要我們以審慎的態(tài)度進(jìn)行深入考量。
 
  除此之外,對(duì)于這樣一種超集而言,所有聲明幾乎都需要以排列方式進(jìn)行。再以后綴為例:C代碼保存為文件后擴(kuò)展名為.c,而tive-C文件的擴(kuò)展名則為.m。
 
  它仍然基本上屬于傳統(tǒng)的C語(yǔ)言
 
  大家基本上不可能在tive-C中獲得太多來(lái)自面向?qū)ο蟮膬?yōu)越特性。總體而言,tive-C更多地是一種針對(duì)大型系統(tǒng)的代碼組織方式,而非編寫優(yōu)質(zhì)代碼的方式。我們?nèi)匀恍枰?fù)責(zé)處理指針、仍然需要負(fù)責(zé)追蹤內(nèi)存。C語(yǔ)言程序員們喜歡把這些軟件稱為“可移植匯編代碼”,而這一點(diǎn)對(duì)于tive-C也同樣適用……當(dāng)然,大家只能把這些代碼從Mac移植到iPad當(dāng)中。
 
  充斥著八十年代風(fēng)格
 
  燈籠褲、爆炸頭、電影《早餐俱樂(lè)部》—再加上NeXT設(shè)備:tive-C就像是編程語(yǔ)言世界中的一部時(shí)光機(jī)器,把我們帶回上世紀(jì)八十年代那段瘋狂的歲月。粗獷的風(fēng)格構(gòu)成了tive-C的一切。最初出現(xiàn)在Lisp中的垃圾收集機(jī)制可謂絕妙的想法,Java早在多年之前就已經(jīng)將其納入自身,但tive-C直到2006年才對(duì)其敞開懷抱。iOS甚至直到現(xiàn)在還沒(méi)有獲得垃圾收集機(jī)制,因?yàn)闆](méi)人希望iPhone因此遭遇卡頓。好吧,至少tive-C還沒(méi)老舊到Pascal或者Ada那種程度。
 
  標(biāo)點(diǎn)符號(hào)
 
  炫酷的現(xiàn)代技術(shù)青年已經(jīng)能夠通過(guò)編寫Python、Ruby以及Coffeet代碼構(gòu)建起價(jià)值數(shù)十億美元的企業(yè),但他們不需要跟括號(hào)、中括號(hào)以及大括號(hào)打交道。但在編寫tive-C代碼時(shí),我們卻被迫使用著幾乎所有標(biāo)點(diǎn)符號(hào)。冒號(hào)、“@”符號(hào)乃至星號(hào),好像沒(méi)有哪種符號(hào)是tive-C用不到的。
 
  復(fù)古的語(yǔ)法風(fēng)格
 
  tive-C的語(yǔ)法跟可口可樂(lè)擁有諸多相似之處:它們都曾在上世紀(jì)九十年代試圖推進(jìn)其現(xiàn)代化進(jìn)展,但卻始終未能成功。因此大家可以直接忽略蘋果在1997年著力推薦的所謂簡(jiǎn)潔“現(xiàn)代”語(yǔ)法。我們更傾向于使用“經(jīng)典”語(yǔ)法,正如大家更青睞可口可樂(lè)的經(jīng)典瓶罐一樣。平心而論,蘋果當(dāng)初作出的努力其實(shí)值得贊賞,其中摒棄了額外的標(biāo)點(diǎn)符號(hào),而且能在無(wú)需解析的前提下讓內(nèi)容更易于閱讀。但如今這些成果已經(jīng)被徹底遺忘在歷史的垃圾堆中,再也無(wú)人問(wèn)津。
 
  缺乏命名空間
 
  Java擁有命名空間,但tive-C卻沒(méi)有。不過(guò)大家可以通過(guò)在名稱之前添加大量前綴來(lái)構(gòu)建自己的命名空間,這是完全可行的。需要注意的是,不要使用“NS”前綴,因?yàn)檫@會(huì)與蘋果的命名空間發(fā)生沖突。作為NeXTstep的組成部分,蘋果的命名空間倒是始終擁有旺盛的生命力。
 
  只能運(yùn)行在蘋果自己的宇宙當(dāng)中
 
  被迫每天駕駛保時(shí)捷當(dāng)然不是什么壞事,但生活仍然需要多樣性作為重要調(diào)劑。更重要的是,iPhone并不是世界的中心、我們不可能完全以它為中心規(guī)劃生活與工作。如果大家選擇在Windows或者Linux業(yè)務(wù)環(huán)境工作,那么請(qǐng)忘掉所有與tive-C相關(guān)的擴(kuò)展知識(shí)—理由很簡(jiǎn)單,這些技能完全無(wú)用武之地。
 
  可移植性的價(jià)值不容忽視。蘋果(以及iPhone用戶)最值得慶幸的一點(diǎn)在于,蘋果的產(chǎn)品真的非常出色—它們非常強(qiáng)大,足以吸引人們利用tive-C重新編寫自己的現(xiàn)有軟件方案,只有這樣開發(fā)者才能最大程度把自己成果運(yùn)行在無(wú)數(shù)消費(fèi)者手中的設(shè)備上。
 
  (備注:通過(guò)對(duì)gcc、Cygwin以及GNUStep的深度組合,大家也有機(jī)會(huì)在其它環(huán)境中使用tive-C,但要完成這項(xiàng)任務(wù)各位需要內(nèi)心堅(jiān)強(qiáng)、毅力拔群。)
 
  我們惟一的選擇就是Xcode
 
  盡管還不至于像毛澤東之于新中國(guó)以及亨利?福特之于福特公司那么夸張,但在tive-C的世界中,大家真的只有一種選擇。為什么你非要與眾不同呢,同志?
 
  公平地講,目前市場(chǎng)上已經(jīng)出現(xiàn)了一些開源堆棧,但大家使用這類方案的頻率要遠(yuǎn)遠(yuǎn)低于Xcode。
 
  蘋果的“獨(dú)裁統(tǒng)治”
 
  如果領(lǐng)導(dǎo)者能為產(chǎn)品線帶來(lái)美好的發(fā)展前景,那么獨(dú)裁統(tǒng)治倒是不一定算壞事。畢竟蘋果這位暴君擁有出眾的品位以及卓越的產(chǎn)品設(shè)計(jì)方案,在這方面蘋果甚至比其它所有同業(yè)企業(yè)加起來(lái)還要強(qiáng)大。不過(guò)對(duì)于追求自由的人們來(lái)說(shuō),蘋果仍然是阻礙大家實(shí)現(xiàn)理想的最大難關(guān)。
 
  想要發(fā)出超過(guò)一百份自己開發(fā)的iPhone應(yīng)用副本?趕緊打消這個(gè)念頭。想要在用戶界面中加入一些“不同的想法”?請(qǐng)回去認(rèn)真閱讀蘋果提供的用戶界面設(shè)計(jì)指南。我們根本不能在無(wú)視蘋果許可的前提下作出任何變通,因?yàn)樘O果利用強(qiáng)大的加密機(jī)制將一切牢牢鎖定—并通過(guò)殘酷的專制政策為其加上第二道保險(xiǎn)。
分享與收藏:  資訊搜索  告訴好友  關(guān)閉窗口  打印本文 本文關(guān)鍵字:
 
推薦圖文
贊助商鏈接
推薦資訊
贊助商鏈接