You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
15 KiB
15 KiB
互联网公司常用框架源码赏析
“技术深度” 与 “技术广度”是对开发者来说最为重要的两个维度,本项目致力于从源码层面,剖析和挖掘互联网行业主流技术的底层实现原理,为广大开发者“提升技术深度”提供便利。
加入我们,一起通读互联网行业主流框架及中间件源码,成为强大的“源码猎人”,目前开放的有 Spring 全家桶、Mybatis 框架、Netty 框架、Dubbo 框架,及 Redis、Tomcat 中间件等,让我们一起开拓新的领地,揭开这些源码的神秘面纱。本项目主要用于记录框架及中间件源码的阅读经验、个人理解及解析,希望能够使阅读源码变成一件简单有趣,且有价值的事情,抽空更新中...(如果本项目对您有帮助,请watch、star、fork 素质三连一波,鼓励一下作者,谢谢)
- Netlify: https://schunter.netlify.app
- Gitee Pages: https://doocs.gitee.io/source-code-hunter
- GitHub Pages: https://doocs.github.io/source-code-hunter
Spring 系列
IoC 容器
- BeanDefinition 的资源定位过程
- 将 bean 解析封装成 BeanDefinition
- 将 BeanDefinition 注册进 IoC 容器
- 依赖注入(DI)
- BeanPostProcessor
AOP
SpringMVC
SpringJDBC
- 努力编写中...
Spring 事务
Spring 源码故事(瞎编版)
Spring 类解析
Spring5 新特性
Spring RMI
Spring Message
SpringBoot
- SpringBoot run方法解析
- SpringBoot 配置加载解析
- SpringBoot 自动装配
- SpringBoot ConfigurationProperties
- SpringBoot 日志系统
MyBatis
基础支持层
核心处理层
类解析
- Mybatis-Cache
- Mybatis-log
- Mybatis-Reflector
- Mybatis-Alias
- Mybatis-Cursor
- Mybatis-DataSource
- Mybatis-DyanmicSqlSourcce
- Mybatis-MapperMethod
- Mybatis-MetaObject
- Mybatis-MethodSignature
- Mybatis-ObjectWrapper
- Mybatis-ParamNameResolver
- Mybatis-SqlCommand
- Mybats-GenericTokenParser
Netty
网络 IO 技术基础
Netty 粘拆包及解决方案
Netty 编解码
Netty 多协议开发
基于 Netty 开发服务端及客户端
Netty 主要组件的源码分析
- ByteBuf组件
- Channel组件 和 Unsafe组件
- ChannelPipeline 和 ChannelHandler组件
- EventLoop 和 EventLoopGroup组件
- Future 和 Promise组件
Netty 高级特性
Dubbo
架构设计
SPI机制
注册中心
远程通信
RPC
集群
Tomcat
Servlet 与 Servlet容器
Web 容器
Redis
- 努力编写中...
番外篇(JDK 1.8)
基础类库
集合
- HashMap类 源码赏析
- ConcurrentHashMap类 源码赏析
- LinkedHashMap类 源码赏析
- ArrayList类 源码赏析
- LinkedList类 源码赏析
- HashSet类 源码赏析
- TreeSet类 源码赏析
并发编程
- JUC并发包UML全量类图
- Executor 线程池组件 源码赏析
- Lock 锁组件 源码赏析
- 详解AbstractQueuedSynchronizer抽象类
- CountdownLatch类 源码赏析
- CyclicBarrier类 源码赏析
- Semaphore类 源码赏析
学习心得
个人经验
编码规范
设计模式
- 从 Spring 及 Mybatis 框架源码中学习设计模式(创建型)
- 从 Spring 及 Mybatis 框架源码中学习设计模式(行为型)
- 从 Spring 及 Mybatis 框架源码中学习设计模式(结构型)
多线程
Doocs 社区优质项目
GitHub 技术社区 Doocs,致力于打造一个内容完整、持续成长的互联网开发者学习生态圈!以下是 Doocs 的一些优秀项目,欢迎各位开发者朋友持续保持关注。
# | 项目名称 | 项目描述 |
---|---|---|
1 | advanced-java | 互联网 Java 工程师进阶知识完全扫盲:涵盖高并发、分布式、高可用、微服务、海量数据处理等领域知识。 |
2 | leetcode | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解。 |
3 | source-code-hunter | 互联网常用组件框架源码分析。 |
4 | jvm | Java 虚拟机底层原理知识总结。 |
5 | coding-interview | 代码面试题集,包括《剑指 Offer》、《编程之美》等。 |
6 | md | 一款高度简洁的微信 Markdown 编辑器。 |
7 | technical-books | 值得一看的技术书籍列表。 |
贡献者
感谢以下所有朋友对 GitHub 技术社区 Doocs 所做出的贡献,参与项目维护请戳这儿。