之前在一个饭桌上,遭遇各种语言技术之争,特别是java和dotnet, php做企业应用之争。
有的同志说,
“dotnet是入门语言,刚入门IT的都从dotnet入手,现在还用dotnet都不好意思了”;
"现在企业应用都用java,可以跨平台,自由度高",
"PHP做起web应用来还是快、爽"。
以前我刚开始做程序,是用纸带打孔,控制自动机床。感觉就是两个字“神奇”。
后来甚至用WPS、Fortran编程,现在的WPS好像都没有编程了吧。
再后来决定修第二学位“计算机应用和科学”(原来是机电一体化),用C和汇编,玩点小东西,经常搞得机器重启;感觉就是挑战、原始。
98年毕业后,开始面对真正的企业应用了,用foxbase,foxprox做点企业应用,简单,快速;
后来用VB做企业应用C/S企业应用,也是快;
99年碰上B2B高潮了,从航空公司跳了出来,工资一下子翻了4倍,还帮搞掂原单位的赔款2万。毫不犹豫就跑了出来,为了面试,面试前一天看了一个晚上的英文版本MSDN学习ASP,竟然第二天面试结果异常感觉好,也玩起了ASP。ASP没有那么多讲究,很多逻辑写在ASP页面里面,也不觉得维护麻烦,还是一样,开发快,入门快;
玩了不到1年,ASP就开始被用java替换,那时候的java真不成熟,struts刚刚出来,oracle的驱动还不少问题。我们将struts改了个遍,感觉自己真正有了挑战感觉,也才觉得自己开始重视组织代码了,struts后来被废掉,还是用了自己的mvc架构,感觉也蛮简单的。
过了三四年,感觉java越来越复杂了,struts, castor, ibatis, hibernate,ofbiz, compiere,学习和研究这些代码像引用甘泉般的感觉,爽啊,感觉别人写的东西就是牛。
后来,自己也开始写框架了,代码生成器,MDA驱动框架,无编码平台,不断挑战自我的自豪感。被人佩服的感觉还是蛮好的。
在使用主流java过程中,还有不少项目使得我对VC++, PB,delphi, embled VC++,J2ME(BB)都玩过一两个项目,但后来都被java企业应用的需求将这些技术淹没掉了,不过,每种语言都有很不错的一面。
甚至本身就是对java架构思想的一种促进。
03年后,跟着朋友做公司,都是来自CA/IBM的外包项目,完全又改变了一种思维,外企的产品都是不管基于什么语言,都有一个成熟的平台,只要稍微定制一番就可以实施完一个项目,所以,又玩了两三年各种平台的定制开发,包括CA的Unicenter BI功能扩展,USVD, BMC的ITSM, HP的Help Desk,IBM的II和RPM项目管理应用系统,这些都是早期不错的定制平台,后来咱们国内的西安协同, Dorado, EOS更是经典,差别就是别人的是基于某中业务,而咱们国内的纯粹以技术为主。
不过,这些平台特他妈贵,所以,在我们羽翼丰满后,一些客户感觉我们服务不错,技术挺高,就开始找我们自己直签一些项目了,俺决心自己开发一套平台,集合他们的定制技术有点,彻底替换原来定制性不强的USVD。
租了个哥们的房子,用了两周时间,改吧改吧ofbiz,加进了xml表单模型,类似于hsql的Entity Engine查询语言,以及加上JBPM, ruile engine来适应业务逻辑的AOP,这就有了俺们公司后来的JEYOFLOW,80%的开发肯定不用写一行java或者js, html,css的,只需要配置xml,在04年底出来一个这样的无编码平台,还是感觉蛮不错的,而且在几十个项目中锤炼过。
再后来,发现自己写不动代码了,每天要处理七八十封邮件就够耗费时间了,而且要开大大小小的很多会议。时间管理、从技术走向管理、项目管理,都是管理管理管理。发现从技术走向管理比学习一门编程语言要难多了。只有偷出时间来关注各种开源项目,用debug和document方式来熟悉各种开源了。
现在,老板又要求不断向业务方面前进了,整天好像吃不完的饭,应不完的酬,人生咋就这么多事情。为的就是练就一身能力,专业能力、管理能力、业务能力,特别是后面两种能力,还要付出很多。
真想自己回到程序员,安静地来写代码。不过,这是不可能的了,但最少,我会一直关注代码,关注开源,从学习中保持自我。
从http://www.infoq.com/cn/news/2009/12/tiobe12来看看各种语言的流行趋势吧,从以下表格可以看出:
java还是蛮高的占有率的17%;不过,好像比例有些开始下降了。
C有这么高确实让我吃惊;
而c#不到java一半也是预期中的;但比例却在上升。看来开发效率是一个非常重要的因素啊;
PHP也不错的表现啊,我还以为要快被遗忘了呢;
PERL和Delphi好像要烟消云散了,delphi还是蛮不错的,速度、安装方便性方面我挺怀念的;
PB这些已经消失在这列表了
还有LISP, PASCAL这些,还蛮坚挺的,至少比PB。
世界变化真快啊!
Position
Dec 2009
Position
Dec 2008
Delta in Position
Programming Language
Ratings
Dec 2009
Delta
Dec 2008
Status
1
|
1
|
= |
Java
|
17.061%
|
-2.31%
|
A
|
2
|
2
|
= |
C
|
16.285%
|
+0.12%
|
A
|
3
|
4
|
↑ |
PHP
|
9.770%
|
+0.29%
|
A
|
4
|
3
|
↓ |
C++
|
9.175%
|
-1.72%
|
A
|
5
|
5
|
= |
(Visual) Basic
|
7.778%
|
-1.70%
|
A
|
6
|
6
|
= |
C#
|
6.258%
|
+1.61%
|
A
|
7
|
7
|
= |
Python
|
5.185%
|
+0.62%
|
A
|
8
|
9
|
↑ |
JavaScript
|
3.515%
|
+0.45%
|
A
|
9
|
8
|
↓ |
Perl
|
2.692%
|
-0.91%
|
A
|
10
|
11
|
↑ |
Ruby
|
2.653%
|
+0.34%
|
A
|
11
|
10
|
↓ |
Delphi
|
2.301%
|
-0.75%
|
A
|
12
|
13
|
↑ |
PL/SQL
|
1.494%
|
+0.35%
|
A
|
13
|
35
|
↑↑↑↑↑↑↑↑↑↑ |
Objective-C
|
1.159%
|
+1.00%
|
A
|
14
|
14
|
= |
SAS
|
0.911%
|
+0.07%
|
A
|
15
|
19
|
↑↑↑↑ |
Lisp/Scheme
|
0.881%
|
+0.37%
|
A--
|
16
|
17
|
↑ |
ABAP
|
0.723%
|
+0.12%
|
A-
|
17
|
15
|
↓↓ |
Pascal
|
0.698%
|
+0.01%
|
B
|
18
|
21
|
↑↑↑ |
ActionScript
|
0.655%
|
+0.17%
|
B
|
19
|
12
|
↓↓↓↓↓↓↓ |
D
|
0.587%
|
-0.60%
|
B
|
20
|
20
|
= |
Lua
|
0.585%
|
+0.09%
|
B
|
分享到:
相关推荐
详细具体的介绍了编程语言发展历史,帮助你更好的理解编程语言
在未来,编程语言还将继续发展和演变,以适应人类社会的需求和挑战。 编程语言的发展历程是一个复杂而漫长的过程,它经历了多个阶段的发展,涵盖了多种形式的编程语言。了解编程语言的发展历程对于我们更好地理解...
语言的发展和演变也比任何其他方面的改良更悠久,而且一直影响着计算机未来的发展趋势。 其次,本文对当前影响力较大的趋势进行了分析,主要有三种:声明式编程风格、函数式编程和动态语言研究。声明式编程风格主要...
本书名为《程序设计教程:用C++语言编程》,由陈家骏和郑滔编著,是南京大学出版的一本专门针对C++语言编程的教学材料。本书以C++语言为载体,旨在向初学者传授程序设计的基本思想、概念和技术,同时也强调了数据...
"C C++语言经典、实用、趣味程序设计编程百例精解" 本文主要讲解了 C/C++ 语言中的经典、实用、趣味程序设计编程百例精解,涵盖了多个方面的知识点,包括程序设计、算法设计、数据结构、数学计算、图形显示等。 第...
RPG,起初是为了处理数据报告而设计,随着时间的发展,它已经演变成一种功能强大的面向过程的编程语言,尤其在业务逻辑处理方面表现出色。 RPG编程语言有两种主要的版本:传统的RPGIII和RPGIV,后者也称为RPGLE...
随着技术的发展,三菱推出了新一代的PLC——MELSEC iQ-F系列FX5,该系列PLC支持多种编程语言,包括Ladder Diagram (LD)、Function Block Diagram (FBD)以及Structured Text (ST/SCL)等。其中,ST语言因其高级语言...
Rust编程语言是一种系统级编程语言,它注重性能、可靠性、生产率和系统安全性。Rust的设计哲学强调零成本抽象、...随着Rust社区的不断壮大和技术的持续进步,Rust已经成为并将继续成为未来编程语言发展的重要推动力量。
Java语言程序设计基础篇是学习Java编程的入门阶段,涵盖了变量、数据类型、运算符、控制结构、数组、类和对象等基础知识。本资源提供的"java语言程序设计基础篇课后编程练习答案"是一个非常宝贵的参考资料,可以帮助...
通过与这些编程语言创始人的对话,我们可以从他们的口中得知为什么他们认为有必要创建新的编程语言,它们的技术开发细节,以及如何教授和学习这些语言。书中也探讨了编程语言如何随着时间的推移而发展,以及如何适应...
Python语言程序设计基础是编程初学者的绝佳教材,尤其适合那些对第二版内容感兴趣的读者。嵩天等作者的这本著作深入浅出地介绍了Python编程的基础概念和实践技巧,旨在帮助读者快速掌握这一强大而易读的语言。通过...
Rust是一种现代编程语言,它在安全性、性能和并发方面具有显著优势。Rust的设计理念融合了底层语言对系统资源管理的控制能力以及高级语言的抽象优势。这种设计使得Rust非常适合在需要高性能代码的应用场景中使用,...
### 可编程语言标准IEC61131-3中文版详解 #### 1. 概述 可编程语言国际标准IEC61131-3是针对可编程控制器(PLC)编程语言...此外,标准的不断更新和完善,反映了技术进步的需求,确保了PLC技术领域的持续发展和创新。
首先,标题中的“汇编语言”强调了编程的底层性质,这意味着开发者需要了解处理器架构和内存管理的细节。汇编语言程序通常包含一系列机器码指令,这些指令与具体的硬件密切相关,因此能实现高效的执行效率和控制打印...
通过本手册,读者将全面了解ST语言的基础知识,从字符集和标识符规则到数据类型和控制结构,为编写高效、清晰的ST程序打下坚实基础。在实际编程过程中,结合具体的例子和练习,读者将能够灵活运用这些知识,解决各种...
智慧校园小程序-微信小程序毕业设计(免积分...智慧校园小程序开发将是未来校园建设和发展的主流趋势。主要功能有成绩查询,课表查询,校车查询,快递代取,电费缴纳,失物招领等等。小程序分为管理端,后端,和用户端
32位汇编语言程序设计知识点总结 本文档涵盖了32位汇编语言的重要知识点,包括汇编语言的基本概念、数据...本文档涵盖了32位汇编语言程序设计的重要知识点,旨在帮助读者更好地理解和掌握汇编语言的基本概念和应用。