關(guān)于寫出優(yōu)雅iOS代碼(一)

1,多使用字面量

在iOS開發(fā)中,基本都會使用的框架是Foundation框架,F(xiàn)oundation中使用最頻繁的是NSNumber,NSString,NSArray,NSDictionary這幾個類及它們的可變形式。

NSNumber *valueNumber = @12;

NSString *valueString = @"xingxing";

NSArray *valueArray = @[@"chang",@"xing"];

NSDictionary *valueDictionary = @{@"name":@"zhangsan",@"age":@18};

上面就是字面量的使用方式。有兩大好處,一是代碼簡潔,易于理解;二是對于NSArray和NSDictionary用字面量語法創(chuàng)建數(shù)組時要注意,若數(shù)組元素對象中有nil,有會拋出異常,而使用OC方法創(chuàng)建的遇到nil對象會提前結(jié)束數(shù)組和字典,導(dǎo)致數(shù)組或字典存儲的內(nèi)容不是我們想要的。

2,盡量使用常量來替代宏定義

#define CLASSNAMEWIDTH 10.0

宏定義是在預(yù)編譯時進行宏替換,常量沒有類型說明,宏多時不利于閱讀??梢灾匦露x,導(dǎo)致同一常量不同的使用可能會有不同的結(jié)果。

static const CGFloat kCLASSNAMEWidth = 10.0;

只在一個.m文件中使用,修改常量內(nèi)容會報錯;

如果要全局共享

//.h文件

extern NSString * const CLASSNAMEConstString;

//.m文件

NSString * const CLASSNAMEConstString = @"CLASSNAMEConstString";

因此在iOS開發(fā)中請盡量多使用const來代替宏定義(#define);隨著項目工程的逐漸增大,過多的宏定義還可能影響項目的編譯速度。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • iOS編程規(guī)范0規(guī)范 0.1前言 為??高產(chǎn)品代碼質(zhì)量,指導(dǎo)廣大軟件開發(fā)人員編寫出簡潔、可維護、可靠、可 測試、高效...
    iOS行者閱讀 4,604評論 21 35
  • 轉(zhuǎn):http://www.cocoachina.com/programmer/20151019/13746.htm...
    Style_偉閱讀 1,460評論 0 3
  • 有一對老兩口,他們有兩個兒子,大兒子生了2個女兒,一個兒子,這個兒子不是很健全,說不上家庭幸福還是不幸福。 二兒子...
    陽光小房子zxf閱讀 356評論 0 1
  • 該怎么形容這座城呢 根據(jù)時間來說 自出生以來待過的第三長時間的城市 且是獨自一人 我對它是既愛又恨的吧 我不知道如...
    Lilliannaa閱讀 137評論 0 0
  • 兼職,滑輪,助教,孩子。 這幾乎成為我大三上學(xué)期重要的關(guān)鍵詞之一。我在一間幼兒園任教輪滑助教,最主要的職責(zé)就是幫孩...
    卿言莫棄閱讀 322評論 0 1

友情鏈接更多精彩內(nèi)容