.net开源的背后:是无奈,还是顺应潮流? -欧洲杯足彩官网

3顶
0踩

摘要:微软.net的开源,让许多开发人员欣喜若狂,同时也有许多人好奇其背后的故事,过去视开源为癌症的微软为什么会突然有这一举措,是出于无奈,还是顺应潮流,而这其中的种种或许可以用文中的六个观点来说明。
,并把它扩展到linux和mac os平台上面。此举受到那些曾经常怀疑微软意图的it团体的热烈欢迎(好吧,我的好朋友adrian bridgwater是个例外,他暗示微软开源的举动只是为了巩固其统治世界的地位)。



根据zdnet主编mary jo foley的记录,微软从2014年4月开始的一系列举动中,.net开源是最新的举动。那时微软宣布将开源数个开发技术,包括asp.net、roslyn.net编译器平台、.net微框架、.net rx以及vb和c#程序语言。这些技术都可以通过一种新的方式创建.net基础。mary jo foley记录上提到,在这一新的举措里,微软在mit开源许可证下面增加了更多.net开源的列表,包括.net通用语言库(clr)、即时编译器、垃圾收集器和基类库。

但是.net的开源对于世界而言意味着什么?外界对于微软.net开源主要有六种看法。


    1、让windows成为世界的操作系统。自从2002年windows奠定了基础以来,.net就是web服务器、服务导向架构以及云部署需要选择的框架。它是java框架的主要竞争对手,随着它只能在windows机器上运行这个约束的消失,那么将意味着全世界的工作都可在windows上运行。
    2、微软关于.net的公告就像苹果关于mac os x的公告一样大。mac os x已经成为企业计算环境的基石,这是一个不可否认的事实,而几年前,mac os x倾向于被归纳为图像艺术部门。微软.net开源的举措获得各界点赞,尤其是在程序员聚集的论坛以及社区,同时,关于这一举措的讨论也是遍布整个网页,微软的这一公告无疑是一个重磅炸 弹。
    3、这意味着开发人员有更多的选择。作为一个开发人员,sinclair schuller相信.net开源公告对于开发人员来讲是一个大的政策。公告公布之后,他在邮件里提出一个.net跨平台的版本,意味着开发者有更多的选择,.net开发人员可以建立更多的应用程序,它们可以运行在更多的平台上面。这意味着会有更多的关于运行时间、语言和堆栈的竞争,从而可以让开发人员学习如何更好的进行开发工作。.net与linux的融合对于开发人员来讲无疑是一件值得高兴的事情。
    4、.net只是众多选择中的一个。微软的举动也许是在承认一个事实,即.net已经不再像之前那样占据着顶端的位置。正如jonathan vanian在gigaom指出的那样,如今的开发者已经渐渐的远离了.net。.net开源并不能保证微软将获得大量涌入的开发人员,开发者仍然可以选择java、php、node.js、ruby on rails等其他语言。在某种程度上,该公司是在玩火,该公司将.net开源运行于其他平台上面或许会让开发人员觉得这只是因为微软技术的缺乏。
    5、让平台作为服务的前端。当企业选用paas(平台即服务)时,多平台基础的建立将会变得更加容易。schuller说:“.net的全部开源将意味着它会支持windows、linux以及mac。如果paas真如它声称的那样完全适应.net,那么我希望paas架构的复杂度可以增加。 linux平台上的应用在使用.net框架后将变得更加简单和易用。”
    6、有助于自主创新。开源的意思是底层的源代码公开修正和改写。.net的开源可以让我们看到.net是如何在一个新的功能类型上被改写的,我们可能会在一个我们以前不能想象的地方看到.net。
  • 大小: 38.6 kb
来自:
3
0
评论 共 1 条 请登录后发表评论
1 楼 2014-11-22 08:32
十年前,微软在广州白天鹅发布了.net的预览版,按照会上的例子回来后做了一个demo,但是问题来了,等正式版发布后,这个该的demo居然跑步起来,当即决定抛弃之
接着问题又来了,为毛我装了.net4之后安装软件还要我装.net2?

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 详细的oracle游标用法,简单易懂,是学习游标的好材料

  • 以下的内容是对oracle游标的介绍。以oracle显示游标为主,本文讲述了如何打开oracle游标,以及想关的实际操作,如果你对其相关的实际操作有兴趣了解的话,以下的文章将会给你提供相关的知识。打开oracle游标使用游标中的值之前应该首先dewengz打开游标,打开游标初始化查询处理。打开游标的语法是:1.open cursor_namecursor_name是在声明部分定义的游标名。例:1....

  • 3.sql%notfound布尔型 值为true表示插入、删除、更新或单行查询操作失败。4.sql%isopen布尔型dml执行过程中为真,结束后为假三,游标的使用隐式游标的使用主要就是以上的四种属性的使用,使用它们来进行一些流程控制。显示游标的声明和使用cursor cursor_name[ 参数1 参数类型,参数2,参数类型...] is select 语句;游标的使用步骤:1...

  • 我在从游标中获取值到变量时遇到问题:create or replaceprocedure projectinfo(num clubs.clubid%type)as--identify variablesp_cln clubs.clubname%type;p_projn projects.projectname%type;p_projnum number;p_taskn tasks.taskname...

  • 显示游标 暂存查询取出的多行数据,然后一行一行地进行处理 使用步骤 : ①声明游标: cursor 游标名 is select 语句; ②打开游标:声明的游标必须打开后才能使用 open 游标名称;–相当于执行查询语句 ③使用游标:一般在循环语句中使用fetch语句提取游标中的记录来进行操作 ④关闭游标:游标使用完毕后,一定要关闭 close 游标名称; declare–定义游标 cursor mycursor is select * from em

  • 游标(cursor):游标是把从数据表中提取出来的数据,以临时表的形式存放在内存中,在游标中有一个数据指针,在初始状态下指向的是首记录,利用fetch语句可以移动该指针,从而对游标中的数据进行各种操作。注意: 属性名与游标名之间没有空格。在pl/sql 中,使用游标变量包括定定义游标引用类型(ref cursor),声明游标变量,打开游标变量、检索游标变量、关闭游标变量等几个基本步骤。游标包括显示游标和隐式游标,在定义时与特定的查询绑定,即在声明中定义查询,其结构是不变的,因此又称静态变量。

  • oracle游标

  • create or replace procedure proc_reportselect_tb(in_fyear int,in_fperiod int ) --,error out varchar2 is /* select fauditedstatus from t_rpt_report where fid in ( 'f54 hkmnrrmaeh v ml8xwdy8j8=' ) select "t0"."fid" "id", "t0"."fauditorid" "t1.id...

  • dbms_output.put_line(r_workday.ename||'已经工作了'||r_workday.spandyears||'年,零'||r_workday.months||'月,零'||r_workday.days||'天');dbms_output.put_line('员工号:'||r_emp.empno||'员工名:'||r_emp.ename||'工资:'||r_emp.sal);'||'薪水维持在:'||r_updatesal.sal);--判断游标是否指向有效行。

  • 游标提供了一种从表中检索数据并进行操作的灵活手段,游标主要用在服务器上,处理由客户端发送给服务器端的sql语句,或是批处理、存储过程、触发器中的数据处理请求。游标的作用就相当于指针,通过游标pl/sql程序可以一次处理查询结果集中的一行,并可以对该行数据执行特定操作,从而为用户处理数据的过程中提供了很大方便。 在oracle中,通过游标操作数据主要使用显式游标和隐式游标。另外,还包括具有引用类特

  • 处理超出打开游标的最大数异常(ora-01000: maximum open cursors exceeded) 在执行如下代码时,经常会出现ora-01000: maximum open cursors exceeded异常 for(int i=0;i<balancelist.size();i ) { prepstmt = conn.preparestatement(sq...

  • oracle游标使用方法及语法大全当查询返回结果超过一行时,就需要一个显式游标,此时用户不能使用select into语句。pl/sql管理隐式游标,当查询开始时隐式游标打开,查询结束时隐式游标自动关闭。显式游标在pl/sql块的声明部分声明,在执行部分或异常处理部分打开,取出数据,关闭。 使用游标语法:例:set serveriutput ondeclare r_emp emp%rowtype;...

  • cursor cur1 is select a,b,c from dual; select 语句可以是多个表,视图 方式一:打开游标,开始循环,从游标中取值,那一行被返回,处理,关闭循环,关闭游标 open cur1 loop --循环游标 fetch cur1 into v_a,v_b,v_c;--提取数据,一次返回指...

  • 本来以为动态语句只能返回类似int、varchar2这种类型,今天测试了下,发现还支持游标,现测试如下:创建返回游标的函数:create or replace function testf return sys_refcursor asv_refcur sys_refcursor;beginopen v_refcur forselect * from test;return v_refcur;en...

  • 游标的概念 为了处理 sql 语句,oracle 必须分配一片叫上下文( context area )的区域来处理所必需的信息,其中包括要处理的行的数目,一个指向语句被分析以后的表示形式的指针以及查询的活动集(active set)。 游标是一个指向上下文的句柄( handle)或指针。 对于不同的 sql 语句,游标的使用情况不同: sql 语句 游标类型 非查询语句(update、delete) 隐式游标 结果是单行的查询语句 隐式或显示 结果是多行的查询语句 显示游标 游标

  • 主要介绍了详解oracle游标的简易用法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

  • oracle游标的使用方法:①、定义游标 cursor②、打开游标 open③、提取游标 fetch④、关闭游标 closedeclare--类型定义cursor c_jobisselect empno,ename,job,salfrom empwhere job=‘manager‘;--定义一个游标变量c_row c_job%rowtype;beginopen c_job;loop--提取一行数...

global site tag (gtag.js) - google analytics
网站地图