• 软件开发十年小史


    注:十年是凑个整,讨个口彩,实际算来却是10多年了。这篇是口水文章,感兴趣的瞄瞄,不喜欢的莫踩。另,这里也不包含开源的各种发展。

     

     

    《不差钱》里的鸭蛋说,长江后浪推前浪,坚决要把他爹拍在沙滩上。

    我无意间一回想,软件开发上还真有点这个味道,十几年间,已是三代程序员。

     

     

    第一代程序员大致上是基于DOS来做开发,常用的开发环境叫Turbo C。这个时候还没那么多API和类库,也没那么多层次,你要想干什么很容易直接操作到硬件。

    如果你不喜欢开发环境提供的库函数,大可以自己操作显卡显示点什么。

    现在回想起来,那一代程序员应该是国际水准,大家玩的东西是一样的能鼓捣出WPS,UCDOS,KV300的人绝对是超一流选手,世界上的高手也就这个水平,至少不会差很多。

    到后来,才因为种种原因,拉开了差距。

     

     

    第二代程序员大致上是基于Windows来做开发的,常用的开发环境是VC,C++Builder,Delphi,VB来做开发的。

    这个时间段里,操作系统对硬件的封装越来越严格,Windows2000出来后,不写内核驱动已经无法操作硬件。

    程序员能看到的主要是操作系统了。

    现有的有名的客户端软件,几乎都是这个时候兴起的,Adobe的,Office,甚至WinRar。

    这段时间应该可以算作客户端程序最为辉煌的时候。

     

    这个时候比较盛行的一个事是找没有文档化的Windows API,在当年的MSDN杂志(好像叫MSJ)上,还有一个专门的栏目叫Under the hood来解析一些微软不公开的东西。

    现在的年青的程序员可能很难想象,一群人坐在一起争论VC好,C++Builder好,Delphi好,还是VB好的样子,但对某些人而言,这不过是昨天才发生的事情。

    只是岁月如刀,砍去了那些碍眼的东西。

    C++Builder,Delphi,VB几乎彻底消失,Under the hood久无新章,可为明证吧。

     

    需要补充的一点是,在这个阶段里,国内外开发水平被拉开了。之前很多赫赫有名的软件,延续的并不是很好。

     

     

    第三代程序员不太好界定,但大致可以说是以Web为核心吧,更多的体现一种联通(网络)的特质。更多的会涉及Html,CSS,VBScript,Javascript,PHP这类东西。

    老实讲当Javascript刚出现的时候,我个人的第一感觉是:这玩意太弱,能干得甚事。

    那会想到今时今日Ajax有这般威力。

    也许时至今日很多老程序员仍然不太看得上Html,CSS这些东西,觉得太简单。

    但如果我们正视现实我们就会发现世界确实变了,在2000年的时候,谁会想到微软会有步履蹒跚的时候。

    今时今日Web的地位已经不必多说。

     

    我们可以讲第一代程序员所需要的技能彻底的退出了历史的舞台,但第二代程序员却仍然存在着,并将与第三代程序员一起丰富着软件的世界。

    只不过与当年处在绝对主角的位置不同,现在有其他的东西更加光芒四射。

    .net和Java涵盖的面太广,很难讲他们就和第二代程序员所需要掌握的技能没有关系,但是我更愿意把他们划在这里。

     

     

     

    佛家喜欢讲的成住坏空为一轮回,放在软件上,这种轮回是如此的明显。

    只是软件这行当里轮回的过于快了,局中人还是要想好自己的自处之道才行,否则就很可能会被拍在沙滩上了。

     

    --------------------------------------------------------------

     

    理想流 + 软件 = 《完美软件开发:方法与逻辑》
    理想流 + 人生 = ??
    理想流 + 管理 = ??
    理想流 = 以概念和逻辑推演本质,追求真理。

  • 相关阅读:
    Python的if判断与while循环
    python基础之数据类型与变量
    网络基础之网络协议篇
    操作系统简介
    计算机基础之计算机硬件系统
    从头开始编写一个Orchard网上商店模块(3)
    从头开始编写一个Orchard网上商店模块(2)
    从头开始编写一个Orchard网上商店模块(1)
    var和dynamic的区别及如何正确使用dynamic ?
    [DOM Event Learning] Section 3 jQuery事件处理基础 on(), off()和one()方法使用
  • 原文地址:https://www.cnblogs.com/daoshi/p/2469146.html
Copyright © 2020-2023  润新知