需求是暫時的,只有變化纔是永恆的,面向變化編程,而不是面向需求編程。編程
不要過度追求技巧,下降程序的可讀性。學習
簡潔的代碼可讓bug無處藏身。要寫出明顯沒有bug的代碼,而不是沒有明顯bug的代碼。ui
先把眼前的問題解決掉,解決好,再考慮未來的擴展問題。spa
含義清楚,儘可能作到不須要註釋也能瞭解其做用,若作不到,就加註釋,使用全稱,不使用縮寫。code
大駝峯式命名:每一個單詞的首字母都採用大寫字母對象
==例:== MFHomePageViewController
教程
==例:== NSString *_somePrivateVariable
內存
Block
、NSString
屬性應該使用copy
關鍵字synthesize
關鍵詞==例:==開發
#define
預處理定義的常量所有大寫,單詞間用 _ 分隔kAnimationDuration
,且須要以static const
修飾EOCViewClassAnimationDuration
, 仿照蘋果風格,在頭文件中進行extern
聲明,在實現文件中定義其值==例:==get
NS_ENUM
定義通用枚舉,NS_OPTIONS
定義位移枚舉==例:==
delegate
作後綴,如optional
修飾能夠不實現的方法,用required
修飾必須實現的方法dataSource
作後綴. 如did
和will
通知Delegate
已經發生的變化或將要發生的變化。==例:==
new
做爲前綴and
來鏈接屬性參數,若是方法描述兩種獨立的行爲,使用and
來串接它們。can、should、will
等)進一步說明屬性意思,但不要使用do
或does
,由於這些助動詞沒什麼實際意義。也不要在動詞前使用副詞或形容詞修飾==例:==
分享以前我仍是要推薦下我本身建的iOS學習羣:656315826,史上第一個iOS5000人羣,都是學iOS開發的,若是你正在學習iOS,小編歡迎你加入,今天分享的這個案例已經上傳到羣文件,你們都是iOS黨,不按期分享乾貨(只有iOS開發相關的),包括我本身整理的一份2017最新的iOS資料和零基礎入門教程,歡迎初學和進階中的小夥伴。