Java生态研究

Java语言之所以经久不衰,长期霸占编程语言排行榜前两名,除了简单、跨平台、安全和性能不错之外,更重要的是它在开源的基础上逐渐形成了无与伦比的技术生态。Java生态里的开源技术数不胜数,而程序员的学习精力是有限的,而且也完全没必要什么都学,所以非常有必要搞清楚自己应该学习什么,由此本人特地探索了一套Java生态学习模式。

 

这套生态学习模式是基于当前微服务架构大行其道的实践,之所以称为生态模式,是因为开发大型系统需要多种核心技术的支撑,每种核心技术有其值得骄傲的应用场景。本人的技术生态里有那些核心技术呢?主要有如下几点考量:

  • 该技术被广泛使用且基本是同领域首选或二选

  • 该技术自成生态且该类技术在大型系统里必用

  • 该技术学习资料丰富且易于学习

  • 该技术用Java语言或其他主流语言开发

  • 该技术不会很快过时

     

 

满足如上几点,本人认为是学习性价比高的技术,是必学技术。基于此,如下几门技术是本人的生态研究主角:

  • Spring Boot 解放生产力的利器

  • Dubbo / 《企业IT架构转型之道:阿里巴巴中台战略思想与架构实战》 分布式RPC,微服务架构

  • 《Redis设计与实现》 缓存,NoSQL数据库,分布式锁,位图

  • 《RocketMQ实战与原理解析》 / 《Kafka权威指南》 削峰填谷,异步解耦,顺序消息,分布式事务消息,大数据分析,分布式模缓存同步

  • Elasticsearch 搜索、分析和存储您的数据

即(Spring Boot + Redis + Dubbo + RocketMQ + Elasticsearch)

 

Java最好的实践还是写代码,生态研究对应的GitHub项目地址是https://github.com/javahongxi/whatsmars

Releases: https://github.com/javahongxi/whatsmars/releases

 

除了以上5个核心技术,还有一些Java生态里常用的技术也在这个项目里有研究demo,它们是配角,但也很重要,同5大主角一起构成了完整的Java生态研究计划。生态研究计划列表如下:

 

whatsmars-commonUtils公共模块
whatsmars-dubbo高性能分布式RPC框架
whatsmars-elasticjob分布式调度框架
whatsmars-elasticsearchElasticsearch
whatsmars-mq消息中间件RocketMQ,Kafka等
whatsmars-redisRedis客户端简单封装
whatsmars-rpcTransport & Protocol & Serialization
whatsmars-shardingsphere分布式数据库中间件
whatsmars-springSpring Framework
whatsmars-spring-bootSpring Boot 实战
whatsmars-spring-boot-samplesSpring Boot Samples
whatsmars-spring-cloudSpring Cloud 微服务生态
whatsmars-zkzookeeper remoting 封装

 

当然,生态研究还要辅以理论学习,可以参考如下技术博客或文档:

  • 阿里巴巴Java开发手册 

  • 技术博客 blog.hongxi.org 

  • 深入一点 deep.hongxi.org 

 

最后,给几点温馨提示:

  • 类→抽象类→接口

  • 带着问题去看源代码,没必要把源代码看完

  • 看源代码最大的技巧是看英文注释,另一个技巧是日志+DEBUG

  • 如果没有时间去深入研究一款软件,那么从宏观层面理解它的设计思想是重要的

  • 读书很重要,包括非技术书

 

PS: 快速访问本人的技术站点 -> hongxi.org

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

武汉红喜

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值