格格党

繁体版 简体版
格格党 > 重生八七之传奇 > 第一百六十六章 Min软件开发平台

第一百六十六章 Min软件开发平台

章节错误,点此举报(免注册),举报后维护人员会在两分钟内校正章节内容,请耐心等待,并刷新页面。

作为一个资深程序员,袁明对集成开发环境(ide)认识比这个时代的任何人都深。早期的编程语言在送进编译器处理之前,必须要先经过流程图、撰写表格、打卡,所以当时并不需要开发环境。作为第一个高级语言的basic,是第一个有开发环境的编程语言,同时也是第一个可以直接在主机或终端机前编写代码的编程语言。当时它的开发环境是采取命令行方式的,并不像后来的大多数开发语言使用选单和图形化。但是它提供了编辑、档案、管理、编译、调试、执行等功能,算是集成开发环境的雏形。

袁明用的第一款集成开发环境是turboc,那还是因为大学里开始学习c语言时才用到了。后来就是turboc++、borlandc++、c++builder、visualc++,再之后就百花齐放。根据项目应用环境的不同,从命令行到图形界面,从eclipse到idea,从c到java,从编译到反编译,从单机到网络,什么环境都要用。所以,后世的资深程序员任何一个拿出来,都要秒杀这个时代的那些程序员大牛。

现在minos发布以后,只是对三方软件开发商提供了一系列的dll库和资料,怎样开发和集成还需要软件商自己去琢磨。当时袁明就想做一个开发环境,帮助三方软件商提供工作效率,减少开发成本。他有着后世的经验,上来就准备做插件式集成开发环境。

插件式集成开发环境是后世发展起来的终极开发环境,它基于微内核架构,把各种开发工具作为插件,根据需要动态载入软件中,为集成开发环境提供了强大的扩展能力。eclipse、idea等着名集成开发环境都是采用的这种架构,一经推出就风靡了整个软件行业,老牌的ide提供商纷纷不敌退场。

这款开发环境由于基于微内核架构,自然就可以载入多种编译器,因此为跨语言编程提供了良好的支持。袁明目前暂时只准备提供basic、c语言和c++语言,basic和c都是面向过程的,c++是面向对象的。面向对象编程在大规模软件开发中,具有强大的优势,相对来讲面向过程编程在小规模软件开发中具有优势。袁明知道未来不但有大规模的服务端系统,也会有小规模的移动系统,所以两者都支持在未来会具有更多优势。

袁明这次不但要支持多语言,他还有野心要做跨平台的开发环境。跨平台就是指软件开发一次以后,可以在多个操作系统上执行。这在后世java语言之所以大流行,成为主流开发语言,和java的跨平台性直接有关。要在多个操作系统上执行,就必须面对每种操作系统在内核、接口、执行机制上的不同。在没有跨平台能力以前,如果软件商需要在多个操作系统上发布自己的程序,就需要在每个操作系统上都开发一遍。

比如莲花公司,它的电子表格系统是在msdos、makos操作系统上提供的,当威阮的win操作系统出来以后,它不看好win操作系统,所以就没有投资在win操作系统上。当win大行其道之后,它再花了很长时间才做出了win版的电子表格软件,而这时威阮的电子表格程序已经完全占领了市场。最终莲花公司失去了在电子表格市场的领导地位,破产被收购。

从这一点上就能看出,跨平台对软件商是多么重要!如果莲花公司当初是基于跨平台的开发环境下,开发出的电子表格系统就能很快迁移到win上,而不用再做战略选择了。直接发布到win就好了,软件几乎不用做什么修改。

跨平台能力其实就是在操作系统和软件之间加了一个中间层,叫做虚拟机。虚拟机的作用就是把软件的指令转为操作系统的指令去执行,每种操作系统的不同由虚拟机去识别。软件完全不用理会它会运行在哪个操作系统之上,它只要关心和虚拟机之间的接口即可。这样通过虚拟机就可以让软件开发更简单,开发速度更快,在多个操作系统上的发布更容易。

跨平台得到了软件开发和发布的便利时,也付出了性能的代价。不过随着计算机速度越来越快,这一点性能损失对于软件开发和发布的成本来说,越来越无足轻重。未来谁掌握的跨平台的标准和基础,谁就能统治软件行业,后世的java已经证明了这一切。

『加入书签,方便阅读』