我是直接學(xué)Swift還是Objective-C?
當(dāng)我們發(fā)布了Swift語言學(xué)習(xí)課程之后,收到了很多郵件和私信來問自己是否還需要學(xué)習(xí)C或者Objective-C。此外,人們似乎還在迷惑Swift到底適合iOS開發(fā)生態(tài)中的哪些部分。通過這篇文章,我希望能掃清你的疑惑并且將你送到正確的學(xué)習(xí)軌道上。
我應(yīng)該先學(xué)C/Objective-C還是直接學(xué)Swift?
Swift是一個全新的語言,與Objective-C或C都沒有任何關(guān)系。我的意思是它們都是編程語言并且遵守一些基礎(chǔ)概念和范例,但是你并不需要在學(xué)習(xí)其中一個之前先學(xué)另一個。即使你是編程新手,你也可以學(xué)習(xí)蘋果發(fā)布的官方的Swift文檔(中文版)而無需先學(xué)Objective-C。
我正在學(xué)習(xí)Objective-C,我應(yīng)該轉(zhuǎn)為學(xué)Swift嗎?
這要試情況而定。如果你把學(xué)習(xí)iOS當(dāng)做一個愛好或者出于好奇心才學(xué),那么轉(zhuǎn)到Swift學(xué)習(xí)上吧。如果你將從事iOS開發(fā)視為職業(yè),那么你要知道外面至少有100萬個應(yīng)用都是用Objective-C編寫的,Swift于2014年才剛剛發(fā)布,所以你將來的職業(yè)的app開發(fā)仍然很有可能使用Objective-C。所以你需要學(xué)習(xí)Objective-C來獲得一個工作,直到Swift成為標(biāo)準(zhǔn),這大概將花費數(shù)年時間。同時學(xué)習(xí)兩門語言也將對你有好處。你未來的上司甚至可能會讓你來將現(xiàn)存的Objective-C app切換到Swift上。不過我對這個觀點有所保留,因為一個應(yīng)用最重要的部分是它的功能而非它使用的語言,因此重寫現(xiàn)有app的做法可能不會流行。
我建議初學(xué)者選擇Swift是因為它是一種友好的語言,并且感謝playground讓它變得容易學(xué)會。一旦你學(xué)過了Swift,如果將iOS開發(fā)視為職業(yè)的話,對于學(xué)習(xí)Objective-C也將更容易理解。
***,Swift是一種現(xiàn)代語言,如果你學(xué)習(xí)Swift,意味著也同時做好了面向未來的準(zhǔn)備,因為Swift將是新一代的應(yīng)用所用的語言(包括Apple Watch上的應(yīng)用)。Swift語言是蘋果送給每個人的禮物。世界上還沒有5年經(jīng)驗的Swift開發(fā)者,但如果你現(xiàn)在開始學(xué)習(xí)Swift,那么過了5年你就將成為其中一位了。
我***的建議是,不管你選擇哪一門語言,學(xué)習(xí)它并且精通它。***你將發(fā)現(xiàn),只要你學(xué)會iOS SDK,使用哪種語言并不是最重要的。并且學(xué)了一種語言之后可以很容易的開始學(xué)習(xí)另一門,最緊要的是,從現(xiàn)在就開始學(xué)習(xí)。
本文鏈接:http://www.cocoachina.com/ios/20140923/9732.html