總結
六月份畢業,到公司有9個月,參與了三個項目,忽然發現現在做的只是代碼的積累和知識點的積累,對自身能力卻沒有一步步進行打造與提高。
剛來的時候由不會寫到現在的會寫,這是這半年的成果。下面要實現兩個目標:
一,提高代碼的質量:
a.代碼的書寫規範(見下部)
b.提高代碼的結構的合理:一,要讓代碼的結構看起來清晰,對於結構不清晰的代碼,不要去打補丁,直接重寫。不要圖一時省事,增加測試與閱讀的負擔。
二,要提高代碼的靈活與可重用,要去再看看c++的書,理解面向對象編程。
二,加快知識的積累與總結
a,對於項目中常用知識點的總結:一,對於一些常用的知識點,要總結起來,寫好小示例,以減少二次使用所花費的時間。
二,對於一些大的知識點,可以寫一個Dame,深入理解,可以在需要的時候改進現有代碼,在下次使用時,可以有更好的效果。
b,對於意外接觸到的知識點:一,對於意外接觸到的知識點,要去弄明白它的使用效果,知識點可酌情整理,但要做到心中有數,在將來有需要的時候,能有個切入點。
三,要學習項目管理經驗:雖然公司規模較小,項目管理比較混亂。但要注意觀察與學習,要將總結的東西在自己身上試驗,至少要提高自己所負責模塊的規劃的合理性。
代碼書寫規則:
1.項目名:能看出項目功能,可以
2.文件夾管理:項目每個模塊要有相應文件夾,公用類要統一歸組
3.文件管理:文件命名方式:一,多人合作項目時,可在每個類前加上姓的英文字母_類名(儘量能表明模塊,類功能。第一字母小寫,每個單詞首字母大寫)
例:w_rootViewController.h
.h文件規範
含系統名稱,功能說明(包含)、軟件版本、系統版本、開發人員、開發時間和修改記錄等幾個部分。
4.代碼規範:
類名:*首字母大寫
*可以在多個項目中,通用的類加WS開頭,特定應用的類則不需要。
例:WSRotateImage
方法名:*方法名首字母小寫,且後面的單詞以首字母大寫形式分隔。
*方法名儘量可以知道意思,名字長點沒事
*方法嗎有get前綴,避免和變量的getter衝突
變量名:*變量名應能從名稱理解變量的含義,首字母小寫,後面的單詞以首字母大寫分隔
*成員變量使用“_”爲前綴:例:NSString* _imageName;
常量: *(#define,enums, const等)使用全大寫字母
#import VS #include:
*使用#import引入Objective-C和Objective-C++頭文件,使用#include引入C或C++頭文件
初始化與釋放:
*初始化方法中,不要將變量初始化爲“0”或“nil”,那是多餘的
*初始化時要儘量用alloc和init方法
*創建臨時對象時,儘量緊接着就釋放(或直接在同一行加autorelease)
*dealloc中釋放變量的順序要和聲明的順序一致(有利於review代碼)
*如果dealloc中調用其他方法來release變量,將被release的變量以註釋的形式標註清楚
*dealloc的方法放在類實現開始位置,便於修改與查看
其他:
NSString:*NSString類變量的屬性,如需保存,應使用“copy”,禁止使用retain,以防止以外修改了NSString的值
delegate:*delegate對象使用assign,禁止使用retain。因爲retain會導致循環索引導致內存泄露。
並且此類型的內存泄露無法被Instrument發現,極難調試