objective c教程(objective—C)
夕逆IT
- 數(shù)據(jù)庫
- 2023-08-13 11:08:25
- 169

老鐵們,大家好,相信還有很多朋友對于objective c教程和objective—C的相關(guān)問題不太懂,沒關(guān)系,今天就由我來為大家分享分享objective c教程以及...
老鐵們,大家好,相信還有很多朋友對于objective c教程和objective—C的相關(guān)問題不太懂,沒關(guān)系,今天就由我來為大家分享分享objective c教程以及objective—C的問題,文章篇幅可能偏長,希望可以幫助到大家,下面一起來看看吧!
swift相比起objective-c到底有什么優(yōu)勢
Swift致力于成為一門通用的語言,這點和OC有根本的區(qū)別1OptionalType更安全2不像OC那樣啰嗦,很簡潔,少打很多沒用的字3強大的枚舉和Where4泛型5開源,隨時加入新的idea
Objective-C語法上有什么優(yōu)點嗎
優(yōu)點嘛,找個最流行的語言做對比吧,就java了
兼容C語言,不用像java一樣寫JNI的中間代碼,這在調(diào)用一些C/CPP的庫時優(yōu)勢極為明顯支持ARC和MRC,自從引入ARC之后,一直在弱化指針的概念,學(xué)習(xí)難度降低不少,且ARC效率要比GC高;將屬性聲明和實現(xiàn)分開,看起來更清晰,這個我覺得挺好的,java的話屬性和方法一般寫在一個文件里,代碼多了,看起來很復(fù)雜的樣子;函數(shù)表達(dá)很清楚,不知道為什么OC的函數(shù)名和參數(shù)都很長,蘋果官方的demo也是這樣,不過看起來意思倒是很容易懂,java和一些早期的c語言喜歡用一些縮寫的名字,有時候不知道什么意思;OC協(xié)議中定義的方法可以不強制實現(xiàn),java的interface里定義的方法必須實現(xiàn),新的java版本貌似已經(jīng)改了?自帶分類,這個我覺得比寫一堆繼承要好,用好了能省好多代碼;支持block語法,java最近貌似也支持了lambda,但是以前要寫回調(diào),很煩因為支持C語言的關(guān)系,所以也支持宏定義,一些重復(fù)的code,你要是懶的話,直接定義成宏,copy過去就完事了支持無符號數(shù),NSUInteger還是很實用的,java這點很不好,如果對端傳過來一個無符號數(shù),java必須要用一個更大的數(shù)據(jù)類型去包裹,否則顯示的是負(fù)數(shù)更易用的線程模型,單說NSOperation和java的Thread類哪個更好說不清楚,但是直接寫的話,GCD要比new完之后還要start的Thread要好用的多;更易用的數(shù)據(jù)結(jié)構(gòu),這個不跟java比了,因為都好用,但是比C++的vector好用多了繪圖和音視頻處理時更方便,java的awt和swing就是屎,處理多媒體基本不用java,OC調(diào)quartzcore和AVFoundation簡直不要太爽更易用的擴展庫,蘋果在做OSX的時候就已經(jīng)寫好了很多第三方庫,后來直接移植到iOS上,java素來以庫多而著稱,但是庫的質(zhì)量參差不齊,相比之下還是蘋果官方的庫更有保證別的一時半會想不起來就不寫了,無意歧視java,下次你問OC語法上有什么缺點,我就把java的優(yōu)點講出來,畢竟兩者都是我喜歡的語言,??
可以跳過Objective-C,然后直接學(xué)習(xí)Swift語言嗎
謝邀!當(dāng)Apple發(fā)布了Swift之后,很多人問現(xiàn)在可以成為一個不用學(xué)習(xí)Objective-C的iOS開發(fā)者了,所長說真話,此說法嚴(yán)重不靠譜,基于以下幾個原因:
1、如果你想成為一個iOS開發(fā)者,你仍然需要學(xué)習(xí)Objective-C
2、語言從來不是學(xué)習(xí)iOS開發(fā)的瓶頸,需要時間的是對iOSSDK的學(xué)習(xí)過程。你曾經(jīng)做個JAVA,C#之類的開發(fā),一兩天就能看明白objc或swift的基本語法吧、,但你需要用你所有剩下的時間去熟悉整個iOSSDK
3、從企業(yè)角度來看,swift還不夠成熟,穩(wěn)定,還有很大提升的空間,現(xiàn)階段絕大部分企業(yè)的需求還是以O(shè)C為主,這你懂的
4、Swift肯定是以后的趨勢,你可以持續(xù)跟進(jìn),有空上手自己業(yè)務(wù)做一些小項目練練手!
Objective-C和C++混合編程(iPhone/MacOS/iPad)
objc可以用大部分c的語法。.cpp文件名果斷改成.m。
c++為什么不能用try/catch呢,本來就是他自己的。
objc沒聽說用stl的,他有自己的繼承,你用了就知道。雖然可以用c++寫,但也只是可用,人家肯定得用自己的語法。
至于mac系統(tǒng),貌似必須要蘋果機才方便做蘋果開發(fā),普通電腦好像不行,起碼我這公司是不得不每人配臺1w的蘋果。
同時學(xué)習(xí)《易經(jīng)》在思維方法上對學(xué)習(xí)Objective-C有沒有指導(dǎo)性幫助
對于Objective-c本人完全不懂。但對于《易》學(xué)思維自以為有一定的心得,勉強可以說幾句,但愿能有所幫助。
其實《易》的思維必須是完全開放的,是辯證思維和邏輯思維的完美結(jié)合。說到這里,崇尚西方的人肯定會大罵一通,說邏輯思維是西方剛出現(xiàn)的,我國這樣說是掠美西方之功。雖然我們并沒有提出這樣的說法,但對它的應(yīng)用的確有幾千年了。易是智慧之學(xué),而智慧指的是對復(fù)雜事物或問題的認(rèn)知和處理能力。我國古代哲學(xué)(姑且稱之)的特色就是整體觀念和過程觀念。
不說了,比較起來還是Objective-c容易些。畢竟吃透易學(xué)思維的很少。
Objective-C和C++ 的區(qū)別有哪些為什么蘋果會選擇前者
objectC就是C++的一種,封裝了一些庫,編譯蘋果系統(tǒng)下開發(fā)。QT也是一種C++,也封裝了很多庫,linux下用的多。
如果linux+QT+移動通信設(shè)備庫作為手機平臺,那么水果手機的操作優(yōu)勢就沒啥了,手機也不需要8G內(nèi)存才算牛。估計2G的手機速度就飛快了,CPU也不要那么多核,有個三兩個就好的不得了了。扯遠(yuǎn)了。
總之,oc就是蘋果版的C++而已。
OK,本文到此結(jié)束,希望對大家有所幫助。
本文鏈接:http:///su/2085.html