首页 > 编程知识 正文

java前端技术有哪些,java核心技术

时间:2023-05-05 15:35:36 阅读:195168 作者:2680

    关于2019年流行的Java技术不敢妄下结论,但是我们可以根据2018年github与dbRank上的排名来进行一个小分析,来总结一下当下热度最高的Java技术。我们来看排名:

先来看一下热度比较高的数据库技术:

这里只有前20名,数据库方面Oracle这个专业的数据库依旧占据榜首,其次就是我们大多数人都熟悉的MySQL开源数据库。mongoDB这个NoSQL数据库和Redis这个内存缓存数据库(Key-value数据库)的热度也在不断的攀升,相信在2019年这些数据库的技术将渗透在大多数的开发当中。

关于搜索引擎这里也引荐一下:ElasticSearch的热度不断的提高,大家对于这款基于搜索引擎的热爱可见是已经超越了solr的好多倍了,我们看图可以看到solr的排名已经下降到17名趋向14名了。在github上的排名也是大同小异,ElasticSearch已经远远超越了solr,附上一张图解:

两款框架都是基于lucene的搜索框架,但是elasticsearch更受到大家的喜爱,可能是因为他提供了一个分布式多用户能力的全文搜索引擎,采用目前市场上流行的基于RESTful web接口吧,而且他是使用Java开发的(当然solr也是)。

紧接着我们来看github上的排名:

1,Java的设计模式,在Java技术中,Java设计模式算是老生常谈了,但是它为所有的Java程序员都立了一座里程碑,我们每一个Java程序员都有必要熟练常用的设计模式,这些设计思想对于我们大家多来算是比较被看重的。

2,ElasticSearch是一款。。。。不再赘述了,一会儿该有人说我是打广告的了。具体的信息自行百度或查看官网教程。

3,Rxjava是一款链式编程风格和异步结合在一起的Android框架,首先,RxJava1.0和RxJava2.0的核心思想都是观察者模式,只不过RxJava2.0在RxJava1.0的基础对一些方法进行了优化,方便于开发者更好地理解其编程思想,同时又增加了一部分新的方法解决1.0存在的问题,例如背压等。地址:https://github.com/ReactiveX/RxJava

4,Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。用我的话来理解,就是spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合了所有的框架(不知道这样比喻是否合适),最大的简化就是不再会有一大堆的xml配置文件,一个yml就能解决一切问题,一个不够就来两个(^_^),最大的优点在于注解开发,写restful接口做restful API开发时,真是太方便了。官网:https://spring.io/projects/spring-boot/

没有对比就没有伤害:

其实就是简单、快速、方便!平时如果我们需要搭建一个spring web项目的时候需要怎么做呢?

1)配置web.xml,加载spring和spring mvc

2)配置数据库连接、配置spring事务

3)配置加载配置文件的读取,开启注解

4)配置日志文件...

配置完成之后部署tomcat 调试...

现在非常流行微服务,如果我这个项目仅仅只是需要发送一个邮件,如果我的项目仅仅是生产一个积分;我都需要这样折腾一遍!

 

但是如果使用spring boot呢?

很简单,我仅仅只需要非常少的几个配置就可以迅速方便的搭建起来一套web项目或者是构建一个微服务!

使用sping boot到底有多爽,用下面这幅图来表达

 

我们接着排:

1,
okhttp是一个第三方类库,用于android中请求网络。

这是一个开源项目,是安卓端最火热的轻量级框架,由移动支付Square公司贡献(该公司还贡献了Picasso和LeakCanary) 。用于替代HttpUrlConnection和Apache HttpClient(android API23 里已移除HttpClient)。官网:http://square.github.io/okhttp/

2,

Guava 项目包含若干被 Google 的 Java 项目依赖的核心类库,例如:集合、缓存、原生类型支持、并发库、通用注解、字符串处理、I/O 等等。Google 的开发者们每天都在使用这些工具进行项目的开发。但是查阅 Javadoc 并不总是最有效的学习这些类库的方式,这里分享一篇文章(为 Guava 中一些最受欢迎和最有用的功能提供更具可读性的说明):https://blog.csdn.net/qq_35246620/article/details/77970421

官方地址:https://github.com/google/guava

3,

这是一个Android的一款优秀的图表 功能库,功能没用过,自行百度,感谢。

gitHub地址:https://github.com/PhilJay/MPAndroidChart

4,apache/incubator-dubbo

这个就有的唠了,且听本人娓娓道来:

随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进。

可见Dubbo是一个SOA服务(RPC框架),它的出现推动了SOA的开发热潮。

Dubbo最早是阿里的一个开源项目,由阿里的一个团队负责开发维护,后来由于某些商业原因,阿里停止了对于Dubbo的维护,但是当当网为了这个开源项目不会被废弃,开始了对于dubbo的后续维护,之后为了避免侵权改名为Dubbox;现在Dubbo已经被阿里巴巴贡献给Apache来做开源维护,这个项目结构更新之后完全不同了,但是有了专业的团队进行维护,相信这个技术会也来越好。下面简单看一下dubbo的未来规划:

 

 

 

 

 

查看官网:http://dubbo.apache.org

现在关于服务治理框架,更多的企业级开发都是使用springCloud,springCloud作为一个更加成熟稳定的架构加上靠谱的pivotal团队,受到各家架构师的青睐。

接着看排名:

这里就不再做详细的介绍了,简单说一下:

1,greenrobot/EventBus是Android的消息传递依赖库,这个技术能很好地实现组件之间的消息通信。

2,zxing是一款Android的二维码生成库,具有很强大的二维码依赖库。地址:https://github.com/zxing/zxing

3,fastjson与gson都是json转换工具库,fastjson是阿里的负责的,gson是Google负责的。看名字的话我更喜欢fastjson,因为看名字就知道它快(^_^)。

4,libgdx/libgdx是一个跨平台的2D/3D的游戏开发框架,它由Java/C/C++语言编写而成。ibgdx兼容大多数平台(标准JavaSE实现,能运行在Mac、Linux、Windows等系统,最近加入了对html5的支持)与Android平台(Android1.5以上即可使用,Android2.1以上可满功率发挥)。Libgdx以native方式自带图像解码器,通过其提供的Pixmap可以对指定图像进行像素级渲染操作,从而不依赖Android的Bitmap加载处理图像,可以支持png、jpg、bmp.---来自:http://hao.jobbole.com/libgdx/(伯乐在线)

5,这个算是一个干货分享吧,业内大神把Java的学习规划整理了一份文档,在github上传阅,这份文档结构给大家看一下:

项目地址:https://github.com/Snailclimb/JavaGuide,点击下载:https://github.com/Snailclimb/JavaGuide/archive/master.zip

 

剩下的就不一一给大家罗列了,本人的分享就到这里,大家自行去看看吧。Github上的stars数量代表了大家对某一款技术的喜爱程度 ,采用倒序来查看Java技术的stars排名。

github排名地址:https://github.com/search?o=desc&q=Java&s=stars&type=Repositories

 

 

 

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。