.NET 十五岁,谈谈我眼中的.NET
2002年2月13日,第一个版本随着visual studio.net的发布,今天已经走过15年, .net团队写了一篇文章,里面有一个视频,Anders Hejlsberg已是白发苍苍的老人,我也从刚出校门的码农长成软件开发工程师,我爱编程。
我的职业生涯始于大学四年级的毕业设计,当时带我毕业设计的老师给我了一个简要说明的文档要做一个软件,那是在2001年,互联网才刚刚开始,没有今天这么丰富的网络资料,凭借着受过数学训练的大脑折腾出来了,最后老师还给我了800块钱的报酬,那年我毕业的时候月工资才1500。不过毕业后却到了已经有着大名鼎鼎名头的中国科学院广州分院,却干着是系统集成的工作,业余时间迷上了.net , 你一定很好奇为什么迷上呢? 那时经常使用Linux,受到了Miguel de Icaza影响,他是一名hacker,他打造了Linux上一个流行的桌面系统GNOME,并且与KDE分庭抗礼,具体信息可以访问 名人故事之 Miguel de Icaza。Miguel 为了GNOME项目启动了另一存志高远的项目:Mono,一个Microsoft .NET Framework的自由GNU/Linux实现,当时觉得Miguel看上的准没错,我也就跟着他踏上了.NET这条路,在广州非常感谢当时京华网络的一位同事,他招聘我进去开启了软件开发之路,到现在已经14年,现在还在继续编程,编程之余不忘在社区推动,传播.NET技术,特别是跨平台技术,现在Mono,.NET Core都在微软旗下的跨平台技术,10几年的努力在博客园,微信公众号上都留下了我的足迹,期待2017年Make .NET Great Again。
2014年之前大家的眼中的.NET只是微软的Windows平台上的.NET, 这是庞大身躯的怪胎,它既是一套服务器产品,又是一个特殊的Windows版本,还是一个开发平台。我们谈到.NET的时候,实际上是指.NET Framework,那才是它的本来面目——.NET的一个组成部分。.NET Framework是非常好的开发平台。至少,它让对MFC心生厌恶的人们不再转移到Java平台。如果这些人继续走Microsoft技术路线,那么他们得到了比以前好得多的解决方案,且较易转移过去。微软意识到Linux闯入自己享用多年的牧场,成为自己的竞争者,基于商业的考虑让着跨平台基因的.NET困死在Windows之上,互联网浪潮的到来,微软却还守在卖license,导致和互联网浪潮插身而过,出现了尴尬的场景,在国内天天都在听说转Java。
2014年之后微软换了CEO,全面拥抱Linux,.NET Core开源,收购Xamarin,构建起了全新的生态,微软的重心转移到了Azure,微软算是抓住了云计算时代,微软市值已经增长到了5000亿美金,才次达到他的顶峰,.NET Core也经过了2年的迭代,5月份发布.NET Core 2,也就会补齐各类API,再一次进入主流开发平台。
现在的主流开发平台是微服务架构,.NET Core就是专门针对模块化的微服务架构而设计,在微服务架构这方面Spring Cloud具有非常高的人气,如果你在使用Spring Cloud,可以使用开源项目Steeltoe 开发.NET Core应用,具体可以参考这篇文章Enabling .NET Core Microservices with Steeltoe and Pivotal Cloud Foundry。在微服务这个领域微软也有着丰富的经验,Azure云上有大量的服务是基于微软自己的微服务框架Service Fabric构建的,据传说这个框架微软会开源,具体时间不清楚是什么时候。那么上面这两个框架我都不合适怎么办呢? 因为我是软件工程师,不再是简单的码农,没有我可以自己造,最近2个月时间里通过Github 找到一位英国哥们Tom Pallister,和他一起打造一个微服务开发框架,我加入了他的一个API Gateway项目Ocelot,项目的功能参考https://github.com/TomPallister/Ocelot/projects/1 ,大部分基础特性已经完成,接下来就是要不断的重构打磨,这个项目有非常完善的单元测试,验收测试来保障我们的重构工作,保证我们的代码质量。
在文章的末尾要给大家重新介绍一下微软的微软最有价值专家项目:https://mvp.microsoft.com。2017年MVP项目有了很大的改变, 有几个方面的改变:
1、MVP申请时间改为每月申请,每月审核。
2、审批标准全球同步,贡献争取多元化,你可以贡献各个技术方向,Java,PHP都行
3、 申请技术方向更广泛,欢迎更多开源技术应用于微软项目, 具体参见网站详细介绍
4、 MVP福利更多
具体的申请方法可以访问https://mvp.microsoft.com/zh-cn/Overview 了解具体信息,我也很乐意提名你,你可以联系我。
.NET 十五岁,谈谈我眼中的.NET的更多相关文章
- 程序员与年龄:四十岁普通开发、三十五岁首席架构、三十岁基层Leader
最近,有一个词儿特别热门--躺平.有没有人跟你说过:"躺平说起来容易,做起来更容易." 和躺平相对的是另外一个词--内卷,群聊的时候,已经很多次看过草卷起来了.jpg表情包.某些节 ...
- 谈谈一些有趣的CSS题目(十五)-- 谈谈 CSS 关键字 initial、inherit 和 unset
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- WiFi十五岁了:感谢它能让我们在厕所上网
无线俨然成为当下移动用户不可或缺的重要伴侣,在无线覆盖的区域意味着能够获取各种资讯或同好友进行即时通讯.无线带来了前所未有的技术变革,也颠覆了生活习惯,让用户可以访问Netflix或者在厕所浏览网页. ...
- 谈谈一些有趣的CSS题目(十五)-- 奇妙的 background-clip: text
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- 无废话ExtJs 入门教程十五[员工信息表Demo:AddUser]
无废话ExtJs 入门教程十五[员工信息表Demo:AddUser] extjs技术交流,欢迎加群(201926085) 前面我们共介绍过10种表单组件,这些组件是我们在开发过程中最经常用到的,所以一 ...
- 第三百五十五天 how can I 坚持
快一年了,三百五十五天了,等写个程序算算时间,看看日期和天数能不能对的上,哈哈. 计划还是未制定,天气预报还是没有写完,立马行动,发完这个博客,立马行动. 计划:设计模式1个月,三大框架3个月,计算机 ...
- WCF技术剖析之十五:数据契约代理(DataContractSurrogate)在序列化中的作用
原文:WCF技术剖析之十五:数据契约代理(DataContractSurrogate)在序列化中的作用 [爱心链接:拯救一个25岁身患急性白血病的女孩[内有苏州电视台经济频道<天天山海经> ...
- Spring+SpringMVC+MyBatis+easyUI整合进阶篇(十五)阶段总结
作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. 一 每个阶段在结尾时都会有一个阶段总结,在<SSM整合基础篇& ...
- 如鹏网学习笔记(十五)ASP.NET MVC核心基础笔记
一.ASP.Net MVC简介 1,什么是ASP.NET MVC? HttpHandler是ASP.net的底层机制,如果直接使用HttpHandler进行开发难度比较大.工作量大.因此提供了ASP. ...
随机推荐
- CodeForces 622C Not Equal on a Segment
预处理p[i],p[i]表示:[p[i],i]这段闭区间上所有数字都是a[i] 询问的时候,如果xi==a[ri]并且p[ri]<=li,一定无解 剩下的情况都是有解的,如果xi!=a[ri], ...
- iOS开发——单例模式
一.用if语句实现单例 1.在.h文件中 #import <Foundation/Foundation.h> @interface YYTRequestTool : NSObject +( ...
- linux平台很nice的工具
htop工具 这个是top的升级版,查看进程.内存.CPU等性能的工具,主要是界面很人性化.
- Android 屏幕适配方案(转载)
3.百分比的引入 1.引入 其实我们的解决方案,就是在项目中针对你所需要适配的手机屏幕的分辨率各自简历一个文件夹. 如下图: 然后我们根据一个基准,为基准的意思就是: 比如480*320的分辨率为基准 ...
- 关于css中的border
我一直以为css中的border是正方形的 像这样 因为我平时用的时候都是 border:1px solid #000,都是同一个颜色所以看不出来 当我给每一个边分别设置颜色的时候才发现 他们是以梯形 ...
- iOS 导航栏不可点击
self.navigationController.navigationBar.userInteractionEnabled = NO;
- Python3基础 用 函数递归求解 一个数字的阶乘
镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.-------------------------------------- ...
- 【蓝牙数据采集模块】-02-Sensor Controller 编写CC2650STK外设驱动
上次说到把所有的传感器模块在Sensor Controller中实现读写,并封装驱动. 先来看一下CC2650STK的原理图 用红色方框标记的DIO_0~DIO_7, DIO_23~DIO_30是可以 ...
- HTML5学习笔记 二:article和section
在HTML5中,article可以看做特殊种类的section,它比section更强调独立性. section元素强调分段或分块,而article强调独立性: 如果一块内容相对独立.完整,应该使用a ...
- --@angularJS--独立作用域scope绑定策略之=符策略
1.index.html: <!DOCTYPE HTML><html ng-app="app"><head> <title>s ...