从2000年UCanCode E-Form++ 图形可视化源码库2.0在国外开始销售以来,弹指一挥间已经快14年了。这14年里见惯了各种新技术的不断涌现、也见惯了各种科技公司的不断出现和消亡,仔细想来也对,软件其实也是一个生态,这个生态环境中有生命力强的大树,也有更多作为大树养份的小众植物。大树只所以能不断长大,长久不衰,我想一个很重要的原因就是大树从出生那一刻起就具备的优质基因以及优秀的架构。让我们深有感触的是:软件开发确实是一个需要不断积累的过程,从当初E-Form++的简单制图源码,到现在能快速开发各类工业基础应用的优秀的图形可视化开源架构,如果没有UCanCode的坚持,随时都可能面临着夭折!当然也就不会有现在全球数千家大型软件公司能够“拿来即用”开源基础库了。1999年我开始负责E-Form++核心基础架构的设计和开发,本人从事C++编程已经超过17年了, 这些年我基本只看不说,一来担心自己不会说,另外一个是怕说错。

个人以为,软件同其他工业产品一样也应该分为传统软件行业和新技术软件行业,新技术会在极短的时间不断涌现,代表着新的生命,甚至预示着未来的方向,但这个方向是不断修正的。这也就是我们会看到很多技术在出现之后很短时间就消失了。

传统软件行业(比如石油、化工、造船、航空、航天… … etc)却始终保持着非常稳健和平缓的步子向前迈。当Windows 7 & Windows 8在个人应用领域铺天盖地的时候,传统软件行业才刚刚完成Windows 2000到Windows XP的全面转换。作为向中国这样一个体量的大国,如果没有坚实的工业能力是绝对不可以的。

一提到软件编程语言的选择,很多人无不将关注点放在C#, VB, Java上面。其实这也没错,毕竟这些语言学起来容易、用起来方便。但作为基础软件行业(工业控制、数控、CAD, GIS,制造,建模与仿真等等)支撑着我们国家的工业软件基础却需要大量的C++开发工程师。UCanCode Software这14年里的感触最明显,跟我们接触的软件开发公司国内的和国外的开发水平差距巨大,作为工业软件开发的主力(C++)目前还多以70年代开发员的为主,而80-90后学C++的就相对少多了,试想想, 70年代的人很快就奔40了,新生力量是多么的不可或缺。对比中美软件领域看来,作为工业最强国的美国基本上每个大型的实验室,每个具体的工业领域都有非常专业的软件。而国内绝大多数都是空白。中国的GDP已经上升为全球第2位,作为中国人是很自豪的一件事,无不希望祖国能够更加强盛。 但现实很残酷,由于软件基础差,我们的出口的产品基本上都只能做中低端的。这里还更不用说基础软件差对国防国家安全构成的威胁。

因此,作为一个在软件基础行业超过17年老程序员,我要大声讲:要爱国,请从我做起,从学习C++做起!

开发基础性软件尤其是基础性C++图形可视化架构异常困难,我在UCanCode Software这么多年, 还是一直在尽最大的努力来为国内的C++开发工程师提供一个尽可能完美的开放源码C++图形基础架构, 我们希望是尽可能的将计算机的图形可视化部分编程基础架构化,以尽可能的节省我们在开发工业控制、监控、建模与仿真、CAD、GIS、打印等等开发时间。 一个优秀的C++图形可视化架构设计起来可谓呕心沥血, 每个功能都得考虑得异常细致, 有的时候甚至是如履薄冰。UCanCode Software一直秉持着源码绝对100%开放的理念的理念也一直激励着我们要尽可能将架构设计得更好、质量更高。微软的Visual Studio版本每隔1-2年就有一个新版本,从Visual Studio 5.0, Visual Studio 6.0, Visual Studio 2002, Visual Studio 2003到Visual Studio 2013光版本号都好长一串, 基础架构库的设计目标就是要保证所有C++工程师在每个Visual Studio环境下都好用、易用。

每当看到外国人在从我们购买的E-Form++可视化图形源码(UCanCode.com上免费下全功能评估版本)上很快开发出产品,然后又高价将开发出来的软件卖给我们国家的企业后,都有一种迫切的愿望,真诚希望我们国内的基础性软件行业好好用我们的源码多开发些属于咱们国家自己的好软件。

全面开放这些源码,我们希望通过我们的绵薄之力能够全面提升国内软件公司在开发电力、能源、化工、机械、造船、石油、航空、航天等领域的软件开发能力。通过这些源代码,您不仅能学习到如何用VC++编写大型软件工业建模与仿真、监控、工控、组态、CAD、GIS软件,还可以学习如何使用各种领先的设计模式来创建成熟的应用。 为了能最大限度的帮助国内开发人员,在我的力促下, UCanCode不但完成了所有软件功能的全面本地语言化, 还专门设置了军工与科研机构折扣, 这也算我为中国软件事业尽的一份绵薄之力!

(完!)

关于学习C++编程语言对中国软件发展的的一些思考!的更多相关文章

  1. 是什么让C#成为最值得学习的编程语言

    随着 Web.iOS.Android.智能设备的流行,新的编程语言纷纷涌现并表现不俗,如 Ruby,Python,Scala,Go,Node.js,Swift 等.反观已经发展了近20年的 C# 语言 ...

  2. 转:为什么说Python是最值得学习的编程语言

    老猿作为一个老程序员,研究生毕业后就没有这么用心的学过一门新的语言,而今年4月开始学Python以来,疯狂的迷上了它,有时很想写一篇为什么要学Python的文章,可一直懒没动笔,今天看到博友" ...

  3. Atitit.编程语言and 自然语言的比较and 编程语言未来的发展

    Atitit.编程语言and 自然语言的比较and 编程语言未来的发展 1. 单词的间隔靠空格,编程的单词的间隔靠分界符..1 2. 语句分界符:自然语言使用逗号,编程语言使用分号1 3. 换行1 4 ...

  4. 总结了零基础学习Java编程语言的几个基础知识要点

    很多Java编程初学者在刚接触Java语言程序的时候,不知道该学习掌握哪些必要的基础知识.本文总结了零基础学习Java编程语言的几个基础知识要点. 1先了解什么是Java的四个方面   初学者先弄清这 ...

  5. 1.html5 学习要求,Html 5发展历程

    以下是我在学习html5,项目中用到的关于html5的总结和心得. 1.学习要求 Html4.01,xhtml Css2 Javascript 耐心,动手,毅力. 2.Html 发展历程 Html1. ...

  6. 学习 java 编程语言两个月来的感受

    今天是我接触java编程的第81天, 现在的感受是觉得非常快乐, 每次看着自己的写的代码能成功运行的时候那种喜悦是无法言表的, 最初接触电脑还是在小学, 后来到了初中觉得电脑无非就是点点鼠标, 按按键 ...

  7. java基础学习总结一(java语言发展历史、jdk的下载安装以及配置环境变量)

    最近一段时间计划复习一下java基础知识,使用的视频课程是尚学堂高淇老师的,上课过程中的心得体会直接总结一下,方便以后复习. 一:计算机语言的发展 1:机器语言,最原始的语言,主要有“01”构成,最早 ...

  8. 如何深入系统的学习一门编程语言——python自学笔记

    前言 最早接触python的时候,他并没有现在这么火,我也没把他太当回事,那时候我对python的印象就是给运维人员使用的一门很古老的语言,显然随着tensorflow(以下简称tf)的兴起,pyth ...

  9. python学习day3 编程语言分类 变量 格式化输出

    1.编程语言分类 机器语言:直接使用二进制指令直接编写程序,直接操作计算机硬件,必须考虑硬件细节 汇编语言:使用英文标签代替二进制指令去编写程序,直接操作计算机硬件,必须考虑硬件细节对,不过相比机器语 ...

随机推荐

  1. vertical-align

    http://www.zhangxinxu.com/wordpress/2015/08/css-deep-understand-vertical-align-and-line-height/

  2. java连接数据库步骤

    一.加载JDBC驱动程序 Class.forName(driver) ; 如果直接是上面的代码运行,一定会报错.找不到驱动类java.lang.ClassNotFoundException: com. ...

  3. javascript之AJAX学习

    1.AJAX即Asynchronous Javascript+XML.能够向服务器请求额外的数据而无需卸载页面.  AJAx技术的核心是XMLHttpRequest对象(XHR). 2.AJAX只能向 ...

  4. ThinkPHP 3.2.3(二)配置

    一.配置格式 1.PHP数组定义 默认所有配置文件的定义格式均采用返回PHP数组的方式,配置参数不区分大小写. 如果使用二维数组来配置更多的信息,则二级参数配置区分大小写.格式为: //项目配置文件r ...

  5. Windows Store App JavaScript 开发:模板绑定

    WinJS库模板提供了一种格式化显示多条数据的便捷方式,通过这种方式可以将模板与ListView或FlipView等控件结合使用以控制数据的显示格式.定义一个WinJS库模板的方法与定义WinJS库控 ...

  6. 无废话SharePoint入门教程一[SharePoint概述]

    一.前言 听说SharePoint也有一段时间了,可一直处在门外.最近被调到SharePoint实施项目小组,就随着工作一起学习了一下实施与开发.但苦于网上SharePoint入门的东西实在太少,导致 ...

  7. tfs中如何创建团队项目及如何操作团队项目

    创建团队项目集合 tfs server管理控制台\团队项目集合页面.选择'创建集合'链接,按向导即可创建项目集合. 创建团队项目 创建好团队项目集合后,就要开始创建团队项目了. 进入vs,连接上tfs ...

  8. oracle 查看锁死的表,锁死的进程

    select sess.sid, sess.serial#, lo.oracle_username, lo.os_user_name, ao.object_name, lo.locked_mode f ...

  9. stm8s103 PWM

    stm8s103 PWM的设置不难,但是很多人不注意选项字节这个问题,PWM是IO口的第二功能,要用ST Visual Programmer 修改选项字节. 只需要修改AFR0的功能就可以了

  10. 【Python扩展阅读【转】EasyGui 学习文档【超详细中文版】】

    翻译改编自官方文档:http://easygui.sourceforge.net/tutorial/index.html 翻译改编者:小甲鱼,本文欢迎转载,转载请保证原文的完整性! 演示使用 Pyth ...