很多開發(fā)者在看到自己感興趣的項目時會使用 Star 功能,可以說 Star 的數(shù)量在一定程度上代表了開源項目的熱門程度,本文整理了 Java 語言中 star 數(shù)最多的十五款開源項目,這些項目在 GitHub 上的 star 數(shù)均超過 15000,排名如下:
Rx 的 Java 實現(xiàn) RxJava
https://www.oschina.net/p/rxjava
star:26782;fork:4718
.Net響應(yīng)式編程框架 Rx 的Java版本開源實現(xiàn),有Groovy, Clojure, Scala and JRuby版本的實現(xiàn)。
分布式搜索引擎 ElasticSearch
https://www.oschina.net/p/elasticsearch
star:24646;fork:8723
Elasticsearch 是一個分布式的 RESTful 風(fēng)格的搜索和數(shù)據(jù)分析引擎,能夠解決越來越多的用例。作為 Elastic Stack 的核心,它集中存儲您的數(shù)據(jù),幫助您發(fā)現(xiàn)意料之中以及意料之外的情況。這個實時的分布式搜索分析引擎, 它能讓你以一個之前從未有過的速度和規(guī)模,去探索你的數(shù)據(jù)。
REST 客戶端 Retrofit
https://www.oschina.net/p/retrofit
star:23443;fork:4731
retrofit 是一個類型安全的 REST 客戶端,用于 Android 平臺。
HTTP SPDY 客戶端開發(fā)包 okhttp
https://www.oschina.net/p/okhttp
star:21981;fork:5311
okhttp 是一個 Java 的 HTTP SPDY 客戶端開發(fā)包,同時也支持 Android。
Java 設(shè)計模式 java-design-patterns
http://github.com/iluwatar/java-design-patterns
star:21456;fork:7162
設(shè)計模式是程序員在設(shè)計應(yīng)用程序或系統(tǒng)時解決常見問題的最佳實踐,重用設(shè)計模式有助于防止可能導(dǎo)致重大問題的細(xì)微問題,同時熟悉模式的程序員和架構(gòu)師的代碼也更具可讀性。
Google的Java常用類庫 Guava
https://www.oschina.net/p/guava
star:18414;fork:4327
Guava 中文是石榴的意思,該項目是 Google 的一個開源項目,包含許多 Google 核心的 Java 常用庫。
Android 注解工具 ButterKnife
https://www.oschina.net/p/butterknife
star:17845;fork:3662
Butter Knife 是 Android 視圖字段和方法綁定,使用注解處理來生成樣板代碼。
主要特性:
在字段使用 @FindView消除findViewById調(diào)用
使用 @FindViews在一個列表中分組多個視圖
通過注解方法為監(jiān)聽者消除匿名 inner-classes
Android 圖表庫 MPAndroidChart
https://www.oschina.net/p/mpandroidchart
star:17758;fork:5133
MPAndroidChart 是 Android 系統(tǒng)上一款開源的圖表庫。目前提供線圖和餅圖,支持選擇、縮放和拖放。
Android 圖片加載和緩存庫 Glide
https://www.oschina.net/p/glide
star:17418;fork:3520
Glide 是一個 Android 上的圖片加載和緩存庫,其目的是實現(xiàn)平滑的圖片列表滾動效果。
Android/Java內(nèi)存泄露檢測框架 LeakCanary
https://www.oschina.net/p/leakcanary
star:16531;fork:2761
LeakCanary 是 Android 和 Java 內(nèi)存泄露檢測框架。
J2EE框架 Spring
https://www.oschina.net/p/spring
star:15850; fork:11326
Spring Framework 是一個開源的Java/Java EE全功能棧(full-stack)的應(yīng)用程序框架,以Apache許可證形式發(fā)布,也有.NET平臺上的移植版本。該框架基于 Expert One-on-One Java EE Design and Development(ISBN 0-7645-4385-7)一書中的代碼,最初由 Rod Johnson 和 Juergen Hoeller等開發(fā)。Spring Framework 提供了一個簡易的開發(fā)方式,這種開發(fā)方式,將避免那些可能致使底層代碼變得繁雜混亂的大量的屬性文件和幫助類。
Android 開源框架 EventBus Android
https://www.oschina.net/p/eventbus-android
star:15733; fork:3752
如果你學(xué)習(xí)過設(shè)計模式,那么當(dāng)想通知其他組件某些事情發(fā)生時你一定會使用觀察者模式。好了,既然能想到這個設(shè)計模式,那么就來看一個屌爆天的Android開源框架EventBus。主要功能是替代Intent、Handler、BroadCast在Fragment、Activity、Service、線程之間傳遞消息。他的最牛逼優(yōu)點是開銷小,代碼簡潔,解耦代碼。
Android-Universal-Image-Loader
https://www.oschina.net/p/android-universal-image-loader
star:15596; fork:6455
Android-Universal-Image-Loader (Universal Image Loader for Android) 的目的就是為了實現(xiàn)異步的網(wǎng)絡(luò)圖片加載,支持多線程異步加載。
Spring Boot
https://www.oschina.net/p/spring-boot
star:15357; fork:13367
Spring Boot 項目旨在簡化創(chuàng)建產(chǎn)品級的 Spring 應(yīng)用和服務(wù)。你可通過它來選擇不同的 Spring 平臺??蓜?chuàng)建獨立的 Java 應(yīng)用和 Web 應(yīng)用,同時提供了命令行工具來允許 'spring scripts'.
下圖顯示 Spring Boot 在 Spring 生態(tài)中的位置:
移動應(yīng)用動畫效果框架 Lottie
https://www.oschina.net/p/lottie
star:15094; fork:2166
Lottie 是 Airbnb 開發(fā)的一款能夠為原生應(yīng)用添加動畫效果的開源工具。Lottie 目前提供了 iOS, Android, 和 React Native 版本,能夠?qū)崟r渲染 After Effects 動畫特效。