幣幣交易模塊重寫(作者張輝)
現(xiàn)有問題
- 布局文件層級(jí)結(jié)構(gòu)復(fù)雜甸饱。
- 多次迭代導(dǎo)致出現(xiàn)大量冗余代碼沦童。
- 關(guān)鍵模塊代碼不嚴(yán)謹(jǐn),部分邏輯混亂。
- 缺少注釋搞动,不便于后面維護(hù)躏精。
優(yōu)化目標(biāo)
- 布局文件層級(jí)分明,提高編譯效率鹦肿。
- 代碼格式規(guī)范矗烛,層次清晰,便于維護(hù)箩溃。
- 程序邏輯健壯瞭吃,消除隱藏風(fēng)險(xiǎn)。
優(yōu)化步驟
- 布局文件重構(gòu)涣旨,去掉不必要的層級(jí)和隱藏的控件歪架。
- 會(huì)多次調(diào)用的代碼塊提出來成為公共方法。
- 優(yōu)化多個(gè)輸入框與滑動(dòng)條之間的聯(lián)動(dòng)算法霹陡。
- 增加部分控件的觸控范圍和蚪,方便用戶操作。
- 關(guān)鍵位置添加通俗易懂的注釋烹棉。
項(xiàng)目架構(gòu)優(yōu)化(作者董天龍)
現(xiàn)有問題
- 工具類沒有統(tǒng)一攒霹,每個(gè)人維護(hù)一套,造成代碼重復(fù)浆洗,不利于復(fù)用
- 多個(gè)項(xiàng)目在同一個(gè)空間下管理造成項(xiàng)目臃腫,容易造成誤操作,維護(hù)成本高
- 本地第三方庫不能通用,當(dāng)項(xiàng)目拆分后,每個(gè)項(xiàng)目都需要使用都要重復(fù)添加催束,造成不必要的工作量,也容易產(chǎn)生環(huán)境問題
- 依賴版本沒有進(jìn)行管理伏社,當(dāng)依賴進(jìn)行版本升級(jí)時(shí)抠刺,需要逐一查找更改,造成非常大的工作量和漏改的風(fēng)險(xiǎn)
優(yōu)化目標(biāo)
- 將項(xiàng)目中使用的通用工具方法單獨(dú)提出進(jìn)行項(xiàng)目拆分
- 將第三方庫放入私人遠(yuǎn)程倉(cāng)庫
- 統(tǒng)一依賴的使用
優(yōu)化步驟
- 將項(xiàng)目中使用的工具類進(jìn)行匯總摘昌,分類速妖,建立util庫同步至私有倉(cāng)庫使用markdown建立一個(gè)工具類索引
- 每個(gè)項(xiàng)目使用工具類時(shí)對(duì)util庫進(jìn)行依賴即可,通過一行代碼就可以使用
- 將交易所和幣投顧的項(xiàng)目進(jìn)行拆分第焰,每個(gè)項(xiàng)目使用單獨(dú)的工作空間买优,代碼 邏輯分開避免修改錯(cuò)誤
- 搭建私有倉(cāng)庫,將項(xiàng)目中的庫上傳至私有倉(cāng)庫中挺举,項(xiàng)目可以通過一行代碼完成對(duì)該庫的依賴,簡(jiǎn)化步驟烘跺,減少項(xiàng)目的層級(jí)
- 將項(xiàng)目中的依賴的版本號(hào)和app的版本號(hào)等放置項(xiàng)目主目錄的配置文件下湘纵,這樣修改一處即可做到全部修改
代碼規(guī)范(作者劉麗青)
現(xiàn)有問題
代碼的規(guī)范化和可閱讀性,整潔度并不是很高
1滤淳,冗余代碼:
<1>, 太多 注釋掉的Java代碼.注釋掉的xml代碼
<2>, 因?yàn)樾枨蟮母膭?dòng)梧喷,太多無用的重構(gòu)的代碼和xml文件
<3>, 代碼中無用的變量,無用的引用,無用的方法太多
<4>, 無用的導(dǎo)包也有很多的存在
<5>, 工具類的代碼沒有提取出來铺敌,重復(fù)太多
2汇歹,拼寫,駝峰
<1>, 代碼中的變量名稱偿凭,方法名稱产弹,類名,命名不規(guī)范
<2>, 代碼中報(bào)警示的沒有加注解弯囊,看上去不規(guī)范
3痰哨,格式化(java,xml)
<1>, Java和xml代碼中太多的空格和空行
<2>, Java和xml代碼很多沒有格式化的
4匾嘱,View層中工具方法提取/合并/刪除
<1>, activity斤斧,fragment,自定義的控件的工具方法重復(fù)編寫增加了很多重復(fù)的代碼
5霎烙,無用的圖片資源
<1>, 很多版本跌時(shí)候的圖片資源的更換和添加撬讽,之前的沒有及時(shí)刪除,導(dǎo)致apk過大悬垃。
<2>, 有的圖片是重復(fù)的游昼。名字不一樣,導(dǎo)致圖片的重復(fù)盗忱,也會(huì)導(dǎo)致apk包過大酱床。
優(yōu)化目標(biāo)
代碼的規(guī)范化和可閱讀性,整潔度提高
1趟佃,冗余代碼:
<1>, 注釋掉的Java代碼.注釋掉的xml代碼不能存在代碼中
<2>, 因?yàn)樾枨蟮母膭?dòng)扇谣,不能有無用的代碼和xml文件
<3>, 代碼中不存在無用的變量,無用的引用闲昭,無用的方法
<4>, 不存在無用的導(dǎo)包
<5>, 工具類的代碼沒有重復(fù)
2罐寨,拼寫,駝峰
<1>, 代碼中的變量名稱序矩,方法名稱鸯绿,類名,命名規(guī)范話
<2>, 代碼中不能有報(bào)警示的需要加注解
3簸淀,格式化(java瓶蝴,xml)
<1>, Java和xml代碼中沒有多余的空格和空行
<2>, Java和xml代碼需要格式化
4,View層中工具方法提取/合并/刪除
<1>, activity租幕,fragment舷手,自定義的控件的工具方法不重復(fù),統(tǒng)一用工具類里面的方法
5劲绪,無用的圖片資源
<1>, apk中不能存在無用的圖片資源和資源文件
<2>, apk中不能存在圖片是重復(fù)
優(yōu)化步驟
使代碼的規(guī)范化和可閱讀性男窟,整潔度更高
1盆赤,冗余代碼:
<1>, 刪除注釋掉的Java代碼.注釋掉的xml代碼
<2>, 刪除無用的代碼和xml文件
<3>, 刪除無用的變量,無用的引用歉眷,無用的方法
<4>, 刪除無用的導(dǎo)包
<5>, 工具類的代碼沒有提取出來牺六,使代碼更簡(jiǎn)潔
2,拼寫汗捡,駝峰
<1>, 修改或者重命名代碼中的變量名稱淑际,方法名稱,類名凉唐,使命名更加規(guī)范化
3庸追,格式化(java,xml)
<1>, 刪除Java和xml代碼中的空格和空行
<2>, Java和xml代碼需要統(tǒng)一快捷鍵格式化代碼
4台囱,View層中工具方法提取/合并/刪除
<1>, 把a(bǔ)ctivity淡溯,fragment,自定義的控件的工具方法提取出來簿训,統(tǒng)一使用工具類里面的方法咱娶,使代碼更簡(jiǎn)潔
5,無用的圖片資源
<1>, 刪除很多版本跌時(shí)候的圖片和資源文件强品,
<2>, 讓UI配合把圖片壓縮了一下膘侮,圖片資源比原來小了一倍,使apk變小
<3>, 把重復(fù)的圖片的榛,統(tǒng)一調(diào)整為一個(gè)琼了,多余的刪除