.net与mono的那些事
米格尔·德伊卡萨在.NET的文档于2000年10月发布时就马上对.NET产生了兴趣。
在查看字节码解释器后,他发现对于元数据(metadata)没有相应的说明文档。
2001年2月,德伊卡萨在.NET邮件列表中索要到了那段缺失了的关于元数据文件格式的信息,并开始了采用C#编写一个C#编译器的工作,作为对C#的实践。
2001年4月ECMA公布了那段缺失的文件格式,而在GUADEC(2001年4月6日-4月8日)德伊卡萨展示了他的编译器的一些特性(那个时候他的编译可以解释自身)。
由于缺少人力来创建整个.NET替代产品,他们在2001年7月19日的欧莱礼大会创建了Mono的开源项目。
也就是说,.net已经存在了14年之久!在.net诞生一年后,mono项目随之诞生
这么多年,业内开发者一直.net抱着偏见态度,不为别的,只为他是ms的儿子
但是,最近几年,情况开始好转,jvm的日渐老旧,性能、开发速度底下(Oracle对openjdk更新一直很慢),而.net平台简历多年的 开源&闭源 沉淀,以及.net新特征日益增多,格局开始有所改变。
而在今年,.net更是被推到一个非常高的临界点,u3d的走红使得mono被世人得知,其技术成熟令人惊叹,受mono项目的影响,微软在前几天公布了一大拨.net源码,其中包括c#编译器,.net framework源代码(底层使用c++),hadoop连接库。同时受mono项目aop技术的启发,微软为开发人员提供了一款.net native的工具,该工具致力于将.net程序预编译成本地代码(无需安装framwork),目前还只能在windows stroe上使用,但是微软已保证将会提供x86版本的.net native
封闭.net & 开源 mono runtime,真正意义上实现了.net跨平台开发。
我相信,.net的这场变革,终会改变目前已有的格局。
来自 www.ibilibli.com —— 哔哩哔哩小说站
.net与mono的那些事的更多相关文章
- C#(或者说.NET/Mono)能做的那些事
不做语言之争,只陈述事实: 1.桌面软件与服务 不仅是在Windows上,有了开源的Mono,在Apple Mac和Linux(如:Ubuntu)上也有C#的施展天地.并且还可以通过mkbundle工 ...
- Android(4)—Mono For Android 第一个App应用程序
0.前言 年前就计划着写这篇博客,总结一下自己做的第一个App,却一直被新项目所累,今天抽空把它写完,记录并回顾一下相关知识点,也为刚学习Mono的同学提供佐证->C#也是开发Android的! ...
- 魅力 .NET:从 Mono、.NET Core 说起
前段时间,被问了这样一个问题:.NET 应用程序是怎么运行的? 当时大概愣了好久,好像也没说出个所以然,得到的回复是:这是 .NET 程序员最基本的...呵呵! 微软开源,其实不只是对 .NET 本身 ...
- Mono+Jexus部署C# MVC的各种坑
如果你看到这篇文章,先别急着动手,过完一遍,确定是你要的再动手. 别人提到的这里不赘述,只说查了好久才知道的. 1号坑:System.IO.FileNotFoundException Could no ...
- 不装mono,你的.NET程序照样可以在Linux上运行!
让.NET应用程序在linux上运行,目前通用的做法就是在Linux上安装mono,然后通过”mono your.exe“命令运行这个程序. 这种运行.net程序的办法有两个弱点,一个是需要客户机安装 ...
- ASP.NET跨平台实践:无需安装Mono的Jexus“独立版”
在Linux上运行ASP.NET网站或WebApi的传统步骤是,先安装libgdiplus,再安装mono,然后安装Jexus.在这个过程中,虽然安装Jexus是挺简便的一件事,但是安装mono就相对 ...
- Mono 3.2 测试NPinyin 中文转换拼音代码
C#中文转换为拼音NPinyin代码 在Mono 3.2下运行正常,Spacebuilder 有使用到NPinyin组件,代码兼容性没有问题. using System; using System. ...
- jws.mono脚本安装详解
就在最近两天,最新版本的jws.mono上线了,这个版本除了提供与之前版本拥有的功能外,还额外提供了一个“自动化”的安装脚本,通过执行该脚本,jws.mono将自动快速的安装到指定的目录,同时,通过改 ...
- MONO 使用重要提示
重要提示:如果要使用mvc这样的框架(网址没有扩展名或扩展名没有正常规律),请一定用Jexus,而不要用apache/nginx等. ASP.NET跨平台初学者要注意: 1.不要开始就用freeBSD ...
随机推荐
- JSP目录
JSP目录 课时1 jsp概述和背后原理31:11 课时2 三种jsp的scriptlet语法27:29 课时3 jsp的注释14:00 课时4 JSP4个域对象的作用域3 ...
- Openfire 集群探究_压测情况
一.(测试时间:20151220 - 下午14:00-17:00) windows环境 第一次测试,运行中发现在eclipse环境下.4w个连接耗尽了约1G的内存. 另外:服务本来可用的,压测客户端强 ...
- 开始研究tigase和android客户端的实现
2015.7.5. 昨晚总算把tigaase7.0的开发环境搭起来了.稍微看了下代码结构. 主要是auth,db,compnent,cluster,server,xmpp,这几块,准备先发点时间看看开 ...
- html总集
3.1清单格式:<ul> <li>...</li></ul><li>的属性:type disc 实心圆(默认) circle 空心圆 squ ...
- 创建nim+安装vioc分区
一.搭建nim服务器 1.安装须知 安装nim软件包,client随系统默认安装,这里需要安装的是bos.sysmgt.nim.master和bos.sysmgt.nim.spot,即bos.sysm ...
- 求两个集合的交集和并集C#
我是用hashset<T>来实现的 具体如代码所示 using System; using System.Collections.Generic; using System.Linq; u ...
- 《第一本docker书》- 第一章笔记
环境: Ubuntu 14.04.2 LTS (GNU/Linux 3.16.0-30-generic i686) 第一章: 1 Docker客户端和服务器 2 Docker镜像 添加一个文件,执行一 ...
- vuex2.0.0爬坑记录 -- mutations的第一个参数state不能解构
今天在学习vuex的过程中,遇到了一个很困扰人的问题,最终利用vuex的状态快照工具logger解决了问题. 问题是这样的,我在子组件中使用了mapState()函数来将状态映射至子组件中,使子组件能 ...
- Windows如何修改MySQL用户root密码
听语音 浏览:16925 | 更新:2015-06-12 14:49 | 标签:windows 1 2 3 4 5 6 分步阅读 MySQL是一个关系型数据库管理系统,在 WEB 应用方面 MySQL ...
- 解决SQL server 2014 修改表中的字段,无法保存的问题。
修改PROJECT表中的字段,保存时,弹出上面的窗体,无法保存. 解决方法为:[工具]->[选项]->[设计器]中,去掉“阻止保存要求重新创建表的更改”前的勾选.