• 我所期待的c#2010应该这样c# for application


    除了纯粹做软件的,例如web之类的,在生产部门,用得最多的还是辅助生产,对重复工作进行批处理,所以二次开发成为生产力的标志。

    例如,在测绘、国土、设计、工业等行业大量使用AutoCAD,而对于lisp,vba的开发,就成为技术人员的最终追求,对于管线、电力、科研,会大量使用GIS软件(ArcGIS、MapInfo),只要进行简单的开发,就能百十倍的减轻工作量。

    而且,个人认为,生产领域,是社会就业的主要领域,也是培养领导和技术人员应该锻炼的领域。我们不能想象程序员去当领导国家吧。

    但在应用二次开发领域,计算机的落后,是管中窥豹,吓你一跳。例如cad开发,计算一个简单的数学计算,用c#,几分钟搞定,用lisp,几天还在检查拼写,括号 ,本来这些都是编译程序的事......

    为了推动二次开发,微软在很多年前,推出了VBA,对整个行业产生了巨大的冲击,极大的提高了生产力。

    但这么多年过去了,二次开发应用蓬勃,二次开发技术却没有及时得到提升。

    随着.net的成熟和推广应用,C#也越来越开放,吸取了众多语言的优点融于一身,例如lambda表达式,linq,匿名变量,动态化,更不要说经典的泛型。

    但C#的动态化,个人认为是最具有发展前途和应用前景的特性。如果能够像当初发展visual basic for application那样,来发展c# for Application,那么它的应用将是惊人的,同时也是无敌的。只要占领了各行业的应用领域,人们将死死坚持恪守这个平台,对发展.net产业链,巩固微软地位,形成微软软件生态圈有着不可低估的作用。

    那么怎么发展c# for application(CSA)?

    (1)先是.net平台。因为在原有平台上开发,别人不希望受到额外的束缚。所以最好能有一个动态的小型.net编译器(sub .net),就类似于silverlight,它是.net的子集,人们在上面实时运行小型的二次开发的程序,对性能不要有任何影响。这实际上可以直接把siliverlight进行改造就可以了。工作量不大,而且有silverlight的先例铺路,这里有没什么风险。

    随着.net的普及,微软就可以慢慢推行完全版的.net。当然这得假以时日,因为很多应用行业的软件版本低,升级慢,稳定性和可用性及功能是衡量的最大标准。

    (2)C#语言,努力加入dynam部分。首先必须保持c#纯正的血统,尽量的强类型和泛型,做到能静态尽量静态,要动态则可以动。在这点上,得吸取javascript的教训。现在的javascript用得满天飞,缺点和优点一样多。而很多的js应用,仅仅是用js扩充js的面向对象功能——重复造轮子的事情。

    想想以后,我们的C#,跟很多年前的basic语言,现在的python一样,是多么的美好美丽!

    我们可以动态的执行C#,可以临时加载任一段代码,可以交互命令,可以方便用来编写操作系统脚本!

    想象一下:我们可以用evaluate(string CS);,CS就是一段c#代码,很久很以前的某一天,在foxpro里,我们曾这么做过。

    我们二次开发的时候,能静态的,尽量静态,这样编译器给我进行强类型的检查,没法动态的,我们就动态,可以利用所有的资源。在二次开发里会碰到很多,因为要调用很多程序和模块的处理结果,而且,大部分的行业应用程序都不太可能完全com化(.net化,组件化)更不要说面向对象化,你看了mapgis,就会发现,小工作坊,依然在行业应用里占主流,连模块化都没有。

  • 相关阅读:
    【TS】535- 7个超好用的 TypeScript 新功能
    【学习】一起加入重学 TypeScript 学习小组
    17.5W秒级交易峰值下的混合云弹性架构之路
    微服务架构:spring cloud之服务注册和服务发现
    消息队列服务RabbitMQ 和Kafka对比
    微服务架构:spring cloud简介
    2016 年度码云热门项目排行榜 TOP 10
    Netflix Conductor : 一个微服务的编排器
    Java 9的这一基本功能,你可能从未听过
    使用 Docker 搭建 Java Web 运行环境
  • 原文地址:https://www.cnblogs.com/xiexiaokui/p/1407320.html
Copyright © 2020-2023  润新知