问题
大家是否想过:
- .NET究竟包含哪些技术呢?
- 我所掌握的技术这个子集,在.NET技术大系这个超集里面占地比例是什么呢?
- 我究竟还没有掌握多少.NET技术呢?
- 面试的时候会考哪些技术呢?
相信大家也看过Java的技术栈,一个金字塔形状的(我一下子没找回,如果你知道,烦请告诉我),包含了繁多的技术:
这些年来,看过n多.Net架构图/技术栈,搜索了很久,没有找到一个符合我要求的“较为全面”地表述.Net技术大系的图表。相信微软内部有更全面的,但可惜我没有找到。
互联网上来去都是那几个简单的按版本新增分类等10来个点的,譬如这个:
圣殿骑士 在 新加坡架构师面试总结 里面发表过一张.NET架构师面试需要的技术总结图:
不过这个总结图面向的是.NET架构师需要掌握的技术,和我需要的不一样。
.NET技术栈
最近找工作,面试了多家公司,不同公司有不同的技术要求,我把这些技术,结合我已经掌握的技术,总结了一下.Net相关技术,大约10个大类50个技术点,花了一点时间搞个.NET技术栈概览。
从最底层的到最顶层:
- 操作系统
- CLI
- CLR
- CTS/CLS/CIL
- .NET Fx
- CLI 语言
- DLR
- DLR 语言
- Desktop 桌面
- Web 网络
- SOA
- SDKs
- OWIN
- IDE 编辑器
- Platforms 平台
- Productivity 生产力
- Build 编译
- Testing 测试
- Deploy 发布
- Tools 工具
- Data 数据存储
- Components 组件
这个图表里的分类未必准确,相关技术也难免会有遗漏,欢迎大家指点以便不断改进。
以下是预览图:
摘自: http://www.cnblogs.com/unruledboy/p/NetStack.html