为什么写
就像自己在2020年的计划书中描述的那样,自己的重要目标之一就是夯实基础,形成自己的知识体系,输出点什么。.Net是其中一个主要的技术栈维度,虽然自己此前了解一些C#,了解一些.Net,但是对于其中的细节深究的很少,距离掌握这个程度可以说相差甚远。工作中的代码输出不是非常多,更多的是在纠缠业务和为领导打杂,虽然无可否认这就是职场的一部分,但从自身出发,还是希望能够沉淀一些,充实一些,毕竟万丈高楼平地起,哪有那么多捷径可以走。所以写这个系列的理由很简单,回归本质,技术沉淀,铸好基石。
写些什么
缺什么写什么,其实还是更多的关注基础的知识,温故知新吧。这个系列就专注于把基础知识和基本原理搞搞扎实,希望可以建立起知识面。当然对于当前热门和前言的内容也会做些探究。结合相关书籍和教育机构的提纲,初步给自己制定了一个计划,希望后面可以逐步完善这个大纲。
第一章 C#高级编程
- Generic深入,最强泛型缓存,协变逆变
- Reflection全解,搭建动态架构,搞定emit
- Attribute解析,IL深入,花式扩展封装
- Delegate封装解耦,Event驱动解析
- MD5、RSA、DES解析应用,SSL三次握手
- IO梳理,超大文件处理,Serialize优化
- Lambda前世今生,Linq深层次解读和扩展
- Expression动态拼接,自动解析,扩展LinqToSql
- Structure对比解析,Algorithms整理升级
- Threads各版本对比,运行模型深入
- 线程安全&异常处理&线程取消&线程通信
- await/async运行机制解析,搞定异步编程
第二章 设计进阶
- OOP面向对象编程,生成解读程序封装设计
- AOP面向切面编程,完成OOP+AOP思想升级
- CLR核心机制解析,搞定性能优化
- 设计模式六大原则,掌握程序设计核心法则
- 面向对象23中设计模式,优化程序设计
- 数据库设计解读和实战,分库分表表分区设计
- 数据库优化,读写分离高可用
- DDD领域驱动设计,基于EF完成领域模型设计
第三章 .NetCore跨平台
- .Net Core 基础理论
- .Net Core 命令行
- .Net Core 源码解读及编译
- Net Core 多线程
- Net Core 异步操作
- Net Core GC垃圾回收
- Net Core 依赖注入
- Net Core 文件系统
- Net Core 配置选项
- Net Core 诊断日志
- Net Core 承载系统
- Net Core 管道
- Net Core 静态文件
- Net Core 路由
- Net Core 异常处理
- Net Core 缓存
- Net Core 会话
- Net Core 认证与授权
- Net Core 跨域资源共享
- Net Core 健康检查
- Net Core 多语言本地化
第三章 必备框架
- Crawler原理和攻防实践,定制数据爬虫
- Quartz.Net定时作业调度,定制项目必备组件
- Cache深入,各级缓存解析,优化本地封装
- Lucene.Net扩展订制,ElasticSearch实践
- 协议全解析,Http&Socket&WebSocket解读和实战
- O/RM解析,EntityFramework6扩展和性能优化
- IOC控制反转,DI依赖注入,扩展AOP面向切面编程
- LayUI应用,结合WebApi完成前后端分离架构
- MVC5应用解析,各种扩展封装搭建开发框架
- ABP开源Web应用程序架构剖析,实战开发应用
- Asp.Net核心机制,管道处理模型深层解析和扩展
- MVC源码解读,全生命周期各个环节全面扩展订制
第五章 .NetCore 微服务开发实战
- 从零开始 Net Core 3.1
- 微服务架构解析,水平扩展高可用,最终一致性策略)
- Consul服务注册与发现,多均衡策略扩展
- Ocelot网关,路由/认证鉴权/超时/限流/熔断/日志
- Polly整合Ocelot,实现重试/断路/超时/缓存/降级
- IdentityServer4解读,Token&OAuth2.0&OpenId&JWT
- Docker自动化打包和发布,持续集成部署
- k8s容器集群的自动化部署,自动扩容缩容
- NetCore开发实战(1)——必备知识
- NetCore开发实战(2)——微服务实战
- NetCore开发实战(3)——微服务部署
第六章 分布式
- SOA面向服务架构,Zookeeper完成服务治理
- WebService/WCF/.NetRemoting/WebApi
- SqlServer&Mysql多模式完成读写分离
- Redis五大数据结构实践,集群化和调优
- RabbitMQ路由/排序/追溯/可视化/集群/事务/高可用
- 分布式锁实现,CAP解析、优化Redis分布式锁实现
- 分布式事务多种实现,MSDTC、强制性、事务补偿等
预期目标
其实没有特别明确的预期,做这件事情的一方面是知识积累和储备,不管是产品经理,项目经理,还是技术售前,都需要牢靠的技术底子和积淀,所以这是大有裨益的一件事;另一方面这也是对自己毅力的一种考验,设定目标,长路漫漫,尤其考验一个人的执行力。喜欢老版的那两句话:上坡路都是难走的;极度的自律会带来意想不到的自信。2020年不管是生活还是工作都不会太轻松,希望自己可以保持初心,坚持自己想要的,养成一些好习惯吧。
后续
本来这是一个2020年的技术栈路线图,但是后续有越来越多的元素加入,于是把这个2020拿掉了,作为自己的Net Core技术栈的一个大纲,希望自己后面能完善起来。