三年Android開發習慣

來源:互聯網
上載者:User

Android三年,現在寫代碼,真心沒什麼很大的興趣,每天都是最佳化代碼,最佳化架構,支援人員。非常枯燥乏味。

一個項目做了大半年,才做了1/4,光src就有3M了。對這種大型app,我表示很無奈。什麼時候才能到個頭。

不過感謝我的line manager,讓我專心做架構,還有我老大給予我支援人員。

寫代碼的時候三要素:Stable,Flexible,Readable

 

現在我搭個小型app的架構,大概3小時(複製,粘貼)

1.HTTP架構,用自己的,

2.ActionBarSherlock ,整合actionbar,我還是比較喜歡4.0風格,現在做的app都遵守標準的4.0

3.重寫ActionBar Style , 更換主題樣式。

4.圖片lib(Android-Universal-Image-Loader),最近找了個不錯的。

5.下拉重新整理,改的開源的,增加下拉和上拉的區分回調,連結不記得了。我部落格裡有。

6.瀑布流,最近也碰到的牛x的。PinterestLikeAdapterView 不過代碼我也改過了,在onscroll裡載入更多,回調。發現下拉重新整理的方式都是一樣的。。。

7.資料庫,自己寫的架構太大了,基本手寫。ormlite沒試過,db4o,perst太小眾,不怎麼靈活。

8.BaseActivty,BaseFragment,BaseFragmentActivity. 很多時候有基類是非常好的事,邏輯都在基類裡寫好,子類只要改下UI布局就好了。

9.工具類。

10.複製粘貼,一個項目搭好了。

 

我喜歡把UI和邏輯拆開,如果拆不開,要麼棄用,要麼重寫。不然以後維護沒人能看懂,可別提改bug了。

不管team有多少人,一開始寫代碼盡量寫虛擬碼(//TODO),把整體邏輯寫完,TODO的地方慢慢加上,一個Activity就寫完了。而且如果不做了,或者讓別人來做,能很快順著你的思路繼續下去。如果你有很好的畫流程圖的習慣。把它們變成TODO試試。你會發現代碼寫起來很輕鬆。把寫代碼當成一種享受。當我看到別人在Activity有一堆演算法邏輯的時候,簡直是噩夢。如果team都能按照這個標準,效率至少提高50%。

對於新手來說,借鑒別人的sourcecode不是越多越好,整天有人問,這個項目的那個方法怎麼用。你連看懂的資質都沒有,到時候出bug了,誰來幫你fix。再者需求不是生搬硬套,別人的源碼拿來還要改的,那麼怎麼改?建議好好分析一個項目,自己再試著寫個簡單的libary。你就明白怎麼使用別人的架構,而且還會修改。架構本身就是為了更簡化開發,所以很靈活,考慮的情景也很多。看明白一個架構,你的邏輯能力會變強,自己試著寫個小架構哪怕是個小自訂view,動手能力也會變強。當然,如果簡單基礎知識都不理解的話,建議還是一步步來。

當你在寫代碼時,調用api,或者別人的架構,首先先想想你要什麼樣的功能,對方應該要提供給你什麼功能,這個方法會叫什麼樣的名字,多YY,這樣你會很驚喜的發現,它們確實有這樣的方法。如果沒有,自己加,或者換個思路。這樣YY多了,你也會在寫代碼的時候想提供什麼樣的方法給外部。這樣良性迴圈,寫代碼就真的是很容易的事情了。

當你成為team裡的核心人員,如何去把控整個項目,梳理邏輯和架構,就需要平時多YY,多畫流程圖,多站在非技術的角度看整個項目,很難說有需求是無法實現的,也不能因為需求頻繁改動而去抗拒。所以多想想在技術之外你還能為這個項目貢獻什麼。idea,溝通,協作。這樣你在team扮演的角色越來越重要。升職,轉行,隨你。

最近沒啥技術可以分享的,只能寫寫心得,僅供參考,可以交流,但真正問我什麼問題怎麼解決,我可能回答不了。術業有專攻,不是所有我都能解答,也不是所有都非得問他人才能有答案。

 

 

 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.