GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - themycode/CodeGuide: :books: 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助,请给予支持(关注、点赞、分享)!

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

183 Commits
183 Commits

Folders and files

NameName
Last commit message
Last commit date
docs
docs
 
 
README.md
README.md
 
 
pom.xml
pom.xml
 
 

Repository files navigation

CodeGuide | 程序员编码指南

作者: 小傅哥,Java Developer,✏️ 虫洞 · 科技栈,作者,🏆 CSDN 博客专家,👉 Wiki阅读跳转(有目录)

本代码库是作者小傅哥多年从事一线互联网Java开发的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助,请给予支持(关注、点赞、分享)!




ID Logo 专栏文章 源码下载
0 🌋 网络调试助手 NetAssist下载
1 🔉 Netty4.x专题 itstack-demo-netty
2 🔌 手写RPC框架 itstack-demo-rpc
3 💻 用Java实现JVM itstack-demo-jvm
4 👻 基于JavaAgent的全链路监控 itstack-demo-agent
5 🚿 iot-gateway网关案例 itstack-demo-iot-gatewary
6 📐 DDD领域驱动设计落地 itstack-demo-ddd
7 📤 SpringCloud入门案例 itstack-demo-springcloud
8 🎭 微信公众号开发 itstack-ark-wx
9 🔩 SpringBoot中间件开发 door-spring-boot-starter
10 🎨 服务框架搭建 itstack-demo-frame
11 🔦 源码分析(Spring、Mybatis、Schedule) itstack-demo-code
12 ✈️ Drools规则引擎 itstack-demo-drools
13 🚜 ASM字节码编程 itstack-demo-asm
14 🐾 我的大学四年到毕业工作5年的学习资源和面试汇总 https://pan.baidu.com/s/4mmX7sDy - (if链接失效,加我微信:fustack)
15 🚶 Netty+JavaFx实战:仿桌面版微信聊天 NaiveChat
16 📑 JDK1.8新特性41个案例讲解 itstack-demo-jdk8
17 🚲 小傅哥的《字节码编程》专栏 itstack-demo-bytecode
18 🎒 重学Java设计模式「真实场景实战」 itstack-demo-design
19 📑 面经手册 interview
20 🐎 码场故事 -

如果,以上某些资源不能下载获取,可以添加作者:小傅哥,微信(fustack)

🔉 Netty4专题

Netty4.x案例从简单入门到应用实战,全篇37节优秀案例+实战源码[基础篇(12)、拓展篇(13)、应用篇(3章+)、源码篇(6)],以上章节全部完成并不断持续更新中。

基础入门篇

  • netty4.1基础入门篇零《初入JavaIO之门BIO、NIO、AIO实战练习》
  • netty4.1基础入门篇一《嗨!NettyServer》
  • netty4.1基础入门篇二《NettyServer接收数据》
  • netty4.1基础入门篇三《NettyServer字符串解码器》
  • netty4.1基础入门篇四《NettyServer收发数据》
  • netty4.1基础入门篇五《NettyServer字符串编码器》
  • netty4.1基础入门篇六《NettyServer群发消息》
  • netty4.1基础入门篇七《嗨!NettyClient》
  • netty4.1基础入门篇八《NettyClient半包粘包处理、编码解码处理、收发数据方式》
  • netty4.1基础入门篇九《自定义编码解码器,处理半包、粘包数据》
  • netty4.1基础入门篇十《关于ChannelOutboundHandlerAdapter简单使用》
  • netty4.1基础入门篇十一《netty udp通信方式案例Demo》
  • netty4.1基础入门篇十二《简单实现一个基于Netty搭建的Http服务》

中级拓展篇

  • netty4.1中级拓展篇一《Netty与SpringBoot整合》
  • netty4.1中级拓展篇二《Netty使用Protobuf传输数据》
  • netty4.1中级拓展篇三《Netty传输Java对象》
  • netty4.1中级拓展篇四《Netty传输文件、分片发送、断点续传》
  • netty4.1中级拓展篇五《基于Netty搭建WebSocket,模仿微信聊天页面》
  • netty4.1中级拓展篇六《SpringBoot+Netty+Elasticsearch收集日志信息数据存储》
  • netty4.1中级拓展篇七《Netty请求响应同步通信》
  • netty4.1中级拓展篇八《Netty心跳服务与断线重连》
  • netty4.1中级拓展篇九《Netty集群部署实现跨服务端通信的落地方案》
  • netty4.1中级拓展篇十《Netty接收发送多种协议消息类型的通信处理方案》
  • netty4.1中级拓展篇十一《Netty基于ChunkedStream数据流切块传输》
  • netty4.1中级拓展篇十二《Netty流量整形数据流速率控制分析与实战》
  • netty4.1中级拓展篇十三《Netty基于SSL实现信息传输过程中双向加密验证》

高级应用篇

  • 手写RPC框架第一章《自定义配置xml》
  • 手写RPC框架第二章《netty通信》
  • 手写RPC框架第三章《RPC中间件》
  • websocket与下位机通过netty方式通信传输行为信息

源码分析篇

  • netty4.1源码分析篇一《NioEventLoopGroup源码分析》
  • netty4.1源码分析篇二《ServerBootstrap配置与绑定启动》
  • netty4.1源码分析篇三《Netty服务端初始化过程以及反射工厂的作用》
  • netty4.1源码分析篇四《ByteBuf的数据结构在使用方式中的剖析》
  • netty4.1源码分析篇五《一行简单的writeAndFlush都做了哪些事》
  • netty4.1源码分析篇六《Netty异步架构监听类Promise源码分析》

🔌 手写RPC框架

RPC是一种远程调用的通信协议,例如dubbo、thrift等,我们在互联网高并发应用开发时候都会使用到类似的服务。本专题主要通过三个章节简单的实现rpc基础功能,来深入学习rpc是如何交互通信的。

  • 手写RPC框架第一章《自定义配置xml》
  • 手写RPC框架第二章《netty通信》
  • 手写RPC框架第三章《RPC中间件》

💻 用Java实现JVM

本专题主要介绍如何通过java代码来实现JVM的基础功能(搜索解析class文件、字节码命令、运行时数据区等),从而让java程序员通过最熟知的java程序,学习JVM是如何将java程序一步步跑起来的。

  • 用Java实现JVM第一章《命令行工具》
  • 用Java实现JVM第二章《搜索class文件》
  • 用Java实现JVM第三章《解析class文件》
  • 用Java实现JVM第三章《解析class文件》附[classReader拆解]
  • 用Java实现JVM第四章《运行时数据区》
  • 用Java实现JVM第五章《指令集和解释器》
  • 用Java实现JVM第六章《类和对象》
  • 用Java实现JVM第七章《方法调用和返回》
  • 用Java实现JVM第八章《数组和字符串》
  • 用Java实现JVM第九章《本地方法调用》
  • 用Java实现JVM第十章《异常处理》

👻 基于JavaAgent的全链路监控

目前市面的全链路监控系统基本都是参考Google的Dapper来做的,本专题主要通过六个章节的代码实战,来介绍如何使用javaagent以及字节码应用,来实现一个简单的java代码链路流程监控。

  • 基于JavaAgent的全链路监控一《嗨!JavaAgent》
  • 基于JavaAgent的全链路监控二《通过字节码增加监控执行耗时》
  • 基于JavaAgent的全链路监控三《ByteBuddy操作监控方法字节码》
  • 基于JavaAgent的全链路监控四《JVM内存与GC信息》
  • 基于JavaAgent的全链路监控五《ThreadLocal链路追踪》
  • 基于JavaAgent的全链路监控六《开发应用级监控》

🚿 iot-gateway网关案例

基于Netty实现的物联网网关服务,支持百万客户端连接,压力测试ing...,并优化了与服务端集群通信对平均算法做了优化,本次上传代码添加了很多功能,摒弃了以往只做心跳维护、数据转发的功能。

  • 基于Netty实践搭建的物联网网关iot-gatway

📐 DDD领域驱动设计落地

本专题以DDD实战落地为根本,分章节设计不同的架构模型,学习并实战是奔入应用级开发最快的方法,Hi HelloWorld!我来了。

  • DDD专题案例一《初识领域驱动设计DDD落地》
  • DDD专题案例二《领域层决策规则树服务设计》
  • DDD专题案例三《领域驱动设计架构基于SpringCloud搭建微服务》

📤 SpringCloud入门案例

  • Spring Cloud(零)《总有一偏概述告诉你SpringCloud是什么》
  • Spring Cloud(一)《服务集群注册与发现 Eureka》
  • Spring Cloud(二)《服务提供与负载均衡调用 Eureka》
  • Spring Cloud(三)《应用服务快速失败熔断降级保护 Hystrix》
  • Spring Cloud(四)《服务响应性能成功率监控 Hystrix》
  • Spring Cloud(五)《Turbine 监控信息聚合展示 Hystrix》
  • Spring Cloud(六)《基于github webhook动态刷新服务配置》
  • Spring Cloud(七)《基于RabbitMQ消息总线方式刷新配置服务》
  • Spring Cloud(八)《服务网关路由 Zuul1》
  • Spring Cloud(九)《服务网关Zuul 动态路由与权限过滤器》

🎭 微信公众号开发

这是一套基于领域驱动设计方式搭建的Java公众号开发工程,主要服务于博客与公众号之间打通,引导用户关注公众号,做粉丝回流。

  • 并不想吹牛皮,但!为了把Github博客粉丝转移到公众号,我干了!

🔩 SpringBoot中间件开发

Spring Boot 中间件开发,基于服务治理为目的将非业务行为的核心逻辑剥离出来开发为独立的中间件,赋能于业务系统快速开发。

  • 发布Jar包到Maven中央仓库(为开发开源中间件做准备)
  • Spring Boot 中间件开发(一)《服务治理中间件之统一白名单验证》
  • 开发基于SpringBoot的分布式任务中间件DcsSchedule(为开源贡献力量)

🎨 服务框架搭建

服务框架搭建,依赖于不同的业务诉求搭建出各种服务功能的框架结构。将逐步完成;单体服务应用(适合于ERP和个人)、分库分表应用、Mq服务、任务服务、分布式服务、RPC服务等。

  • 架构框架搭建(一)《单体应用服务之SSM整合:Spring4 + SpringMvc + Mybatis》
  • 架构框架搭建(二)《Dubbo分布式领域驱动设计架构框体》

🔦 源码分析

源码分析以最核心干货内容为入手,将平时开发使用到的Spring、Mybatis、多线程等逐个渗透分析研究。不在只是单纯使用,而是要从原理分析获取更多的技术成长。

  • 源码分析 | Mybatis接口没有实现类为什么可以执行增删改查
  • 源码分析 | Spring定时任务Quartz执行全过程源码解读
  • 源码分析 | 咋嘞?你的IDEA过期了吧!加个Jar包就破解了,为什么?
  • 源码分析 | 像盗墓一样分析Spring是怎么初始化xml并注册bean的
  • 源码分析 | 基于jdbc实现一个Demo版的Mybatis
  • 源码分析 | 手写mybait-spring核心功能(干货好文一次学会工厂bean、类代理、bean注册的使用)

✈️ Drools规则引擎

Drools 是 Java 语言基于Rete算法编写的规则引擎,可以方便的使用声明表达业务逻辑,非常简单易用。本专题会从入门开始逐步完成对Drools的讲解。

  • 这种场景你还写ifelse你跟孩子坐一桌去吧

🚜 ASM字节码编程

ASM是一个java字节码操纵框架,它能被用来动态生成类或者增强既有类的功能。ASM 可以直接产生二进制 class 文件,也可以在类被加载入 Java 虚拟机之前动态改变类行为。

  • ASM字节码编程 | 如果你只写CRUD,那这种技术你永远碰不到
  • ASM字节码编程 | JavaAgent+ASM字节码插桩采集方法名称以及入参和出参结果并记录方法耗时
  • 源码分析 | 咋嘞?你的IDEA过期了吧!加个Jar包就破解了,为什么?
  • ASM字节码编程 | 用字节码增强技术给所有方法加上TryCatch捕获异常并输出

🐾 我的大学四年到毕业工作5年的学习路线资源和面试汇总

一直有伙伴问小傅哥,有没有一个Java的学习路线和面试,最好再有一些相关的资料、书籍、视频。因为现在自己学习也不知道哪不会,看到这个学这个,看到那个学那个,也摸不到头,还比较混乱。特别希望有一个大学到毕业的学习路线整理。

  • 大学四年到毕业工作5年的学习路线资源汇总
  • 工作两年简历写成这样,谁要你呀!

🚶 Netty仿桌面版微信聊天

使用JavaFx、Netty4.x、SpringBoot、Mysql等技术栈和偏向于DDD领域驱动设计方式,搭建的仿桌面版微信聊天工程实现通信核心功能。如果本项目能为您提供帮助,请给予支持(关注、点赞、分享)!

  • 《Netty+JavaFx实战:仿桌面版微信聊天》
  • 《Netty+JavaFx实战:仿桌面版微信聊天》代码开源、上云部署、视频讲解,只为让你给点个Star!

🚲 字节码编程专栏

  • 字节码编程,Javassist篇一《基于javassist的第一个案例helloworld》
  • 字节码编程,Javassist篇二《定义属性以及创建方法时多种入参和出参类型的使用》
  • 字节码编程,Javassist篇三《使用Javassist在运行时重新加载类「替换原方法输出不一样的结果」》
  • 字节码编程,Javassist篇四《通过字节码插桩监控方法采集运行时入参出参和异常信息》
  • 字节码编程,Javassist篇五《使用Bytecode指令码生成含有自定义注解的类和方法》
  • 字节码编程,Byte-buddy篇一《基于Byte Buddy语法创建的第一个HelloWorld》
  • 字节码编程,Byte-buddy篇二《监控方法执行耗时动态获取出入参类型和值》
  • 字节码编程,Byte-buddy篇三《使用委托实现抽象类方法并注入自定义注解信息》

🎒 实战设计模式

创建型模式

  • 1. 重学 Java 设计模式:实战工厂方法模式「多种类型商品不同接口,统一发奖服务搭建场景」
  • 2. 重学 Java 设计模式:实战抽象工厂模式「替换Redis双集群升级,代理类抽象场景」
  • 3. 重学 Java 设计模式:实战建造者模式「各项装修物料组合套餐选配场景」
  • 4. 重学 Java 设计模式:实战原型模式「上机考试多套试,每人题目和答案乱序排列场景」
  • 5. 重学 Java 设计模式:实战单例模式「7种单例模式案例,Effective Java 作者推荐枚举单例模式」

结构型模式

  • 1. 重学 Java 设计模式:实战适配器模式「从多个MQ消息体中,抽取指定字段值场景」)
  • 2. 重学 Java 设计模式:实战桥接模式「多支付渠道(微信、支付宝)与多支付模式(刷脸、指纹)场景」
  • 3. 重学 Java 设计模式:实战组合模式「营销差异化人群发券,决策树引擎搭建场景」
  • 4. 重学 Java 设计模式:实战装饰器模式「SSO单点登录功能扩展,增加拦截用户访问方法范围场景」
  • 5. 重学 Java 设计模式:实战外观模式「基于SpringBoot开发门面模式中间件,统一控制接口白名单场景」
  • 6. 重学 Java 设计模式:实战享元模式「基于Redis秒杀,提供活动与库存信息查询场景」
  • 7. 重学 Java 设计模式:实战代理模式「模拟mybatis-spring中定义DAO接口,使用代理类方式操作数据库原理实现场景」

行为模式

  • 1. 重学 Java 设计模式:实战责任链模式「模拟618电商大促期间,项目上线流程多级负责人审批场景」
  • 2. 重学 Java 设计模式:实战命令模式「模拟高档餐厅八大菜系,小二点单厨师烹饪场景」
  • 3. 重学 Java 设计模式:实战迭代器模式「模拟公司组织架构树结构关系,深度迭代遍历人员信息输出场景」
  • 4. 重学 Java 设计模式:实战中介者模式「按照Mybatis原理手写ORM框架,给JDBC方式操作数据库增加中介者场景」
  • 5. 重学 Java 设计模式:实战备忘录模式「模拟互联网系统上线过程中,配置文件回滚场景」
  • 6. 重学 Java 设计模式:实战观察者模式「模拟类似小客车指标摇号过程,监听消息通知用户中签场景」
  • 7. 重学 Java 设计模式:实战状态模式「模拟系统营销活动,状态流程审核发布上线场景」
  • 8. 重学 Java 设计模式:实战策略模式「模拟多种营销类型优惠券,折扣金额计算策略场景」
  • 9. 重学 Java 设计模式:实战模版模式「模拟爬虫各类电商商品,生成营销推广海报场景」
  • 10. 重学 Java 设计模式:实战访问者模式「模拟家长与校长,对学生和老师的不同视角信息的访问场景」

📑 面经手册

  • 面经手册 · 开篇《面试官都问我啥》
  • 面经手册 · 第1篇《认知自己的技术栈盲区》
  • 面经手册 · 第2篇《数据结构,HashCode为什么使用31作为乘数?》
  • 面经手册 · 第3篇《HashMap核心知识,扰动函数、负载因子、扩容链表拆分,深度学习》
  • 面经手册 · 第4篇《HashMap数据插入、查找、删除、遍历,源码分析》
  • 面经手册 · 第5篇《看图说话,讲解2-3平衡树「红黑树的前身」》
  • 面经手册 · 第6篇《带着面试题学习红黑树操作原理,解析什么时候染色、怎么进行旋转、与2-3树有什么关联》
  • 面经手册 · 第7篇《ArrayList也这么多知识?一个指定位置插入就把谢飞机面晕了!》
  • 面经手册 · 第8篇《LinkedList插入速度比ArrayList快?你确定吗?》
  • 面经手册 · 第9篇《队列是什么?什么是双端队列、延迟对列、阻塞队列,全是知识盲区!》
  • 面经手册 · 第10篇《扫盲java.util.Collections工具包,学习排序、二分、洗牌、旋转算法》
  • 面经手册 · 第11篇《StringBuilder 比 String 快?空嘴白牙的,证据呢!》
  • 面经手册 · 第12篇《面试官,ThreadLocal 你要这么问,我就挂了!》
  • 面经手册 · 第13篇《除了JDK、CGLIB,还有3种类代理方式?面试又卡住!》
  • 面经手册 · 第14篇《volatile 怎么实现的内存可见?没有 volatile 一定不可见吗?》
  • 面经手册 · 第15篇《码农会锁,synchronized 解毒,剖析源码深度分析!》
  • 面经手册 · 第16篇《码农会锁,ReentrantLock之公平锁讲解和实现》
  • 面经手册 · 第17篇《码农会锁,ReentrantLock之AQS原理分析和实践使用》

🐎 码场故事

  • BATJTMD,大厂招聘,都招什么样Java程序员?
  • 一个简单的能力,决定你是否会学习!
  • 刚毕业不久,接私活赚了2万块!
  • 今天你写博客了吗?
  • UML类图还不懂?来看看这版乡村爱情类图,一把学会!
  • 为了省钱,我用1天时间把PHP学了!
  • 让人怪不好意思的,粉丝破万,用了1年!
  • PPT画成这样,述职答辩还能过吗?
  • 程序员为什么热衷于造轮子,升职加薪吗?
  • 一次代码评审,差点过不了试用期!
  • 握草,你竟然在代码里下毒!
  • 13年毕业,用两年时间从外包走进互联网大厂
  • 12天,这本《重学Java设计模式》PDF书籍下载量9k,新增粉丝1400人,Github上全球推荐榜!
  • 讲道理,只要你是一个爱折腾的程序员,毕业找工作真的不需要再花钱培训!
  • 工作两年简历写成这样,谁要你呀!
  • 大学四年到毕业工作5年的学习路线资源汇总
  • 20年3月27日,Github被攻击。我的GitPage博客也挂了,紧急修复之路,也教会你搭建 Jekyll 博客!
  • 汉字不能编程?别闹了,只是看着有点豪横!容易被开除! - 源码

转载分享

建立本开源项目的初衷是基于个人学习与工作中对 Java 相关技术栈的总结记录,在这里也希望能帮助一些在学习 Java 过程中遇到问题的小伙伴,如果您需要转载本仓库的一些文章到自己的博客,请按照以下格式注明出处,谢谢合作。

作者:小傅哥
链接:https://bugstack.cn
来源:bugstack虫洞栈

与我联系

  • 加群交流 本群的宗旨是给大家提供一个良好的技术学习交流平台,所以杜绝一切广告!由于微信群人满 100 之后无法加入,请扫描下方二维码先添加作者 “小傅哥” 微信(fustack),备注:加群。

  • 公众号(bugstack虫洞栈) 沉淀、分享、成长,专注于原创专题案例,以最易学习编程的方式分享知识,让自己和他人都能有所收获。目前已完成的专题有;Netty4.x实战专题案例、用Java实现JVM、基于JavaAgent的全链路监控、手写RPC框架、DDD专题案例、源码分析等。

参与贡献

  1. 如果您对本项目有任何建议或发现文中内容有误的,欢迎提交 issues 进行指正。
  2. 对于文中我没有涉及到知识点,欢迎提交 PR。

致谢

感谢以下人员对本仓库做出的贡献或者对小傅哥的赞赏,当然不仅仅只有这些贡献者,这里就不一一列举了。如果你希望被添加到这个名单中,并且提交过 Issue 或者 PR,请与我联系。

🌱 感谢大家对仓库建设的贡献


💝 感谢大家对我资金的赞赏

时间 小伙伴 赞赏金额
2020-11-16 wuyou 5.00元
2020-11-05 刘荣清 10.00元
2020-09-21 军 10.00元
2020-09-16 冰水之畔 20.00元
2020-08-17 郭嘉伟 5.00元
2020-08-07 Jin Se 5.00元
2020-07-25 fun 10.00元
2020-06-16 贾学兵 5.00元
2020-06-11 刘洪泽 6.66元
2020-06-05 时光之刃 5元
2020-05-25 柠檬楠 23.33元
2020-05-19 王刚 20元
2020-05-19 如鱼 3元
2020-05-18 帅地 6.66元
2020-05-18 放飞心情 6元
2020-05-18 lemon 1元
2020-05-18 贺 1元
2020-05-18 !sssss 1元
2020-05-18 ZHANG 1元
2020-05-18 vovovov 1元
2020-04-01 姬贵阳 1元
2020-02-29 日落黄昏下 1元
2019-12-26 clearDay 1元
2019-11-27 Jasonzhou 1元
2019-11-08 贺 1元
2019-08-06 贺 1元

About

📚 本代码库是作者小傅哥多年从事一线互联网 Java 开发的学习历程技术汇总,旨在为大家提供一个清晰详细的学习教程,侧重点更倾向编写Java核心内容。如果本仓库能为您提供帮助,请给予支持(关注、点赞、分享)!

bugstack.cn

Resources

Readme
Activity

Stars

0 stars

Watchers

0 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.