你遇到過哪些代碼優雅的安卓項目?

那些閃耀著優雅的智慧光芒,美的讓人難以忘懷的代碼。


完整項目的話推薦以下三個:

Google I/O Android App:

Google 每年的 Android 範例 App,必備參考,東西比較多,不過看了收穫會很大。

Github repo: google/iosched · GitHub

u2020:

Jake Wharton 所寫的一個純粹的示例項目,包含了依賴注入,視圖注入,網路圖片非同步載入和緩存,訪問 RESTful 服務,日誌,視圖 3D 層級調試,以及相關的 Mock 測試。

包含有對於 dagger, butterknife, picasso, retrofit, scalpel, timber 等開源項目的使用。

Github repo: JakeWharton/u2020 · GitHub

Philm:

Chris Banes 的開源項目,應用內容是電影介紹,同樣涉及到了依賴注入,MVC,ORM,項目層次非常清晰。

Github repo: chrisbanes/philm · GitHub

至於更多的開源Android項目,到 https://android-arsenal.com/


Trinea/android-open-project · GitHub

  • 這裡的項目讓你數不勝數;

alamkanak/Android-Week-View · GitHub

  • 日曆;

Square Open Source

  • Square 公司好多開源項目,都還不錯,可以看看,雖然公司不大;


Android Source


  • Android學習之路Android學習之路
  • 別人整理的幾個框架值得推薦的android開源框架
  • 別人整理的一些Android項目Trinea/android-open-project · GitHub
  • android最佳實踐:futurice/android-best-practices · GitHub


google io


android sdk中的sample目錄下,各個level的api的demo都有,而且簡潔優雅,每個函數都會告訴你用到哪個feature,特別推薦給你.


這樣子來修改 View 的屬性

textView.text = "修改 textView 的內容"

這樣子來處理事件

override fun onTouch(v: View, event: MotionEvent): Boolean {
when (event.action) {
MotionEvent.ACTION_DOWN -&> showToast("ACTION_DOWN ")
MotionEvent.ACTION_MOVE -&> showToast("ACTION_MOVE ")
}
return true
}

這樣子來使用 intent

val intent = intentFor&(
"model" to Model(5, 0),
"str" to "xxx"
)
intent.singleTop()
startActivity(intent)

僅僅幾行代碼就定義了一個擁有單個 Fragment 的 Activity

public class MainActivity : SingleFragmentActivity() {
override val fragmentClass = TestFragment::class.java

override val fragmentBundle = {
null
}
}

這樣子來儲存本地數據(持久化)

Storage["test"] = Model(5, 1)

還有很多更多其他優雅的用法!!!請看:『Android 還可以這樣開發』

安利完畢,別打我~


Bee,Beem


Square 有幾個非常好的開源項目,比如OKHttp, Picasso。但是代碼寫的個人風格性很強。

Google開源的代碼基本都是非常好的範本。Google IO IOSched確實非常棒。

額外再推薦個

Muzei(roman nurik),應用本身就是相當棒的想法。比較簡單,結構很輕,提供API給第三方應用使用。

romannurik/muzei · GitHub


Android tutorial 簡單明了

The Android Arsenal 方向細分

android 自帶 sample 項目也可以一看


推薦閱讀:

為什麼 Android 版手機 QQ 不遵循 Android Design?
Android 4.4 (Kit Kat) 中的 Translucent Bars 應該在第三方應用中普及嗎?
自學安卓開發,有什麼教材推薦?
請問這樣的界面是如何實現的?

TAG:程序員 | 編程 | Android開發 | Android |