编程语言的谜思

不知道为什么:无论是CSDN还是ChinaUnix,或者其他社区论坛,每过一段时间,或一个星期,或两个星期,总会冒出一个关于语言优劣讨论的话题,且有愈演愈烈之势!

    评心而论,我们都希望自己能随心所欲地驾御着自己喜欢的语言,如刨丁解牛,恢恢乎而游刃有余,然后在相关的QQ群里、或者论坛里,自豪地说我解决了什么问题,使用的是某某语言,但是像刨丁解牛一样的游刃有余那是一种境界,需要自身的修炼和积累,绝不是一蹴而就。

    我们常常有这样一种概念:等熟悉了某种语言的语法后,我就是高手, 加以时日便是老手了!无论是高手还是老手,毫无例外地都是从初学者起步的,一般都层有过这样的一种概念!但只要稳步学习,注意分析和总结,这样的观念自然会从你的脑海中屏除!

   毫无疑问,语言是一系列语法的集合,对于这样的集合,我们可以看见:很多人在一个星期的密集培训后就能掌握它,但是如果要求他熟练地对其运用组合,一个星期为期尚早,但也绝不是几个星期或几个月能解决的事情!于是很多人历经一段时期的训练后,写了若干代码,以为自己很行了,开始注册会员在各大论坛、社区发言,当然交流是应该的--思想的碰撞才会产生火花,但我们大多数人没有抱着学习的心态,而是想着冲大牛,想着自己的帖子被点击多少万次, 有没有上百万!

   语言的学习切不可浮躁!高楼大厦,非一日之成也!像我们中华民族的汉语,可谓博大精深,韩国等国掀起汉语热,可是他们学习了几年所说的话, 还不如中国婴儿出生时的哭声好听!当然了,国人说英语的情况也不是很好,但至少还能说个"hello!", "Good Morning",至于"good good study, day day up"有点搞笑的成分!

   认识一位前辈,学历出奇的高, 软件开发20多年了,熟悉很多语言,C、C++、Delphi、C#,这里只说4种,说多了我自己会感到自卑,可是...?当我第一次看到他写的C++代码,我立刻产生了疑问,一个大家都想不到的疑问:这是用C++语言写的代码?是不是他给错了代码!回头想了想,哦,没错,是C++代码!代码的质量呢,4个字:没有质量!
  (见过很多的代码, 来自于不同的地方,
      德国人写的代码严谨异常 -- 你看我的代码, bug少吧!
      英国人写的代码绅士非凡 -- 当心当心, 这是日不落帝国的代码!
      美国人写的代码潇洒不羁 -- 偶尔来个注释: Bush, I love you!
      台湾人写的代码面和糨糊 -- 死猪不怕开水烫, 和一起了, 陈水扁加李登辉, 我们要独立(妈的,
                             面跟糨糊还想独立, 干死你!)!
      内地写的代码量多质劣 -- 问: 开始写代码了没有?
                           答: 写了!
                           问: 写好了没有!
                           答: 快好了! ...写好了!
                           问: 好, 打个包给客户!
                           客户: 是某某公司吗?
                           答: 请问您是哪位?
                           客户: 我是拉登! 你们的软件怎么搞的, 操, 崩了, 害得老萨被抓了,
                                还想害得我吗? 再不好好写代码, 小心我用飞机撞你们大厦!
     
      香港人写的代码点质点量 -- 一国两制还是可以的! 不过墚锦松当年搞的35个亿成效微不足道!
      印度人写的代码天生一对 -- 员工: 老板, 加点薪水吧!
                             老板: 张三, 我跟你讲, 你想走就走, 你以为你写的代码很牛啊,
                                  我到街上随便拉个杀猪的写得和你一样!)
       
   “懂”多种语言,C、C++、Delphi、C#,牛比吧,"很牛,简直太牛了!" 可是现在他的状况呢,高不成低不就,语言编码不行,架构设计也不行,能做什么呢? IT干了20多年了, 这样的水准,一个月拿个五六千RMB混日子,同行们会怎么看你呢? 关键是再过几年就上50岁了!
   真是想都不敢想, 人算不如天算, 程序界20多年, 漠然回首,不堪入目: 20多年光阴, 按照道理来说, 应该是高手, 更是老手,甚至是千佛手, 可是不然!也许有人说: 怎么能这样呢?不能以技术的眼光看人啊!可是话又说回来, 你就是干技术这一行的, 身边的同行们也一样, 他们就是以技术观念来看你啊!

   在内地IT公司的一些研究室、研究所里,类似的例子还有很多, 惨不忍睹!所以,无论专士、学士、硕士、博士、院士,只要你踏进了IT,从事软件开发,请你不要用混的,你一个人可以混,但国家民族经不起这么多人一起这么混!

    所以在学语言的时候, 语法固然重要, 但语法绝不是最重要的, 重要的是要理解, 要会用, 用得准确, 用得自然! 自抽象性的语言问世后, 后起的语言总是或多或少的借鉴已有的语言, 所以语言之间会有一定的相通性, 当然更多的是差异性, 从相通性入门, 在理解差异性的基础上求提高, 在理解待解决的问题时,抛开语言的差异性理解问题,然后选择合适的语言求解,这样你才会在编码的过程中觉得游刃有余、得心应手!

    "语言的存在就是为了扼杀思想", 读《Generative Programming》时第一次见到了这句话, 后来和一个朋友交流, 他拍案惊奇:"妈的! 这句话讲得太好了! 什么C、C++、Java、Python啊, 原来就是想控制我们的思想, 我们都不要学了, 再学就没有自己的思想了!" 看看现在, 这么多人, 纠缠于语言, 一会C/C++, 偶尔听人说C/C++太难了, 然后Java, 几经展转C#, ..., 反反复复, 说痛苦一点不为过, 所以我的朋友讲得有一定的道理, 当然了, 此话的作者, 本意是着眼于问题, 强调考虑问题应超脱于特定的语言!
无论是C, C++, Java, Python或其他语言, 它们是一种语言, 语言而已, 语言是不应该凌驾于思想之上的, 其实编程的本质应该是对于某个问题, 理解了它之后, 我们有了某种思路、思想, 然后借助某中语言实现这种思路或思想!

    可是, 至少在国内, 很多团队里, 我们不是这样的, 我们总是强调在某个时间差里噼里啪啦敲进了多少代码, 这意味着什么?意味着我们思考了, 但不是在敲代码之前思考, 而是在敲代码时思考了, 说准确一点, 我们用敲代码这种方式代替了我们原本很自然、很流畅的思考, 结果不用自鸣, 这样的方式违背了人体大脑的运行机理, 左右脑协调不好, 结果是原本你能编写的很好的代码, 现在编写得不好或很不好!和国外的程序员交流下来, 很多都知道这个道理, 至少比国内多吧! 说到这里, 比较奇怪! 为什么国外人知道, 而我们很少有人知道? 主要还是一个行业相关的配套措施没有做好!
   国外的大学, 除了软件相关的专业之外, 还有相关的配套专业, 或社会上有相关的附属行业, 从人的各个方面来研究如何保证软件工程的质量和效率! 比如说, 研究开发软件的人员心理、生理, 最直接的是软件测试, 这些都不是软件开发后就有的, 它们都是后来诞生的, 就是因为国外注重研究探索, 所以与软件工程相关的RUP、CMMI等都源自国外, 中国呢, 只有被人牵着走, 在那里等着, 拿来主义嘛, 拿来了以后又用得不是很有效率! 以前拿来主义让国人吃了些甜头, 现在不管用了, 外国人变聪明了, 总是搞一个很深奥的
东西, 即使你拿了、引进了, 你用不好, 只能干着急! 最怕的是盲目引进, 搞得更加没有效率!

    原因只有一个: 那些东西背后的思想, 你体会不到, 自然就用不起来!
    如果我们的IT界能自己发明创造工程性的东西, 我们也就不用崇洋媚外向别人拿了, 而且拿的那么不爽! 如何才能发明创造? 思想最重要, 突破僵化的思维才会有好的思想!
   
    我们考虑问题应该避免到特定语言的实现, 给问题一个最原型、最原始、最野性的解决方案, 最后用某个语言来实现!

    不可否认, 国内有很多关于语言开发的社区, 经常游历于社区, 能学到一些东西, 但如果只依赖于在社区里学到的知识, 恐怕那还是不够的, 至少学的知识不能很好的系统化, 当然了, 应该由自己将所学的知识系统化, 同时一些社区里还是有高手的, 和高手过招也不错! 但要避免直接在帖子上问某个问题用某种语言怎么解决, 然后某个人好心人贴上一段代码, 长时间下去, 整个社区的氛围都变了: 一群人在要, 一群人在施!(这话说的有点过火!)如果自己想提高, 就应该对自己负责, 不要张口就问某某问题怎么解决! 更有甚者直接以"救命"字样为标题!

   我们不要只着眼于国内, 所以我们也要关注国外的论坛社区, 走出去跟老外过招, 所谓国际化,跟国际接轨! 老外交流注重思想, 在那里你可以提高不少, 但记住一点: 千万不要张榜以"Help Me"字样为标题的帖子!

   "高手"、"老手", 恩...见过国内的高手、老手,也见过国外的高手、老手, 我发现两个群体最大的差别
在于: 国内的高手老手们没有国外的那些人那么活跃, 显得有些沉闷, 也许除了IT与其相关外, 别无其他
了! 不过高手老手做到这种境界, 有点悲哀! 君不见大千世界, 万象更新, 风光无限, 挑个时间, 或和孩子
夫人外出游, 或和年迈的爸爸妈妈谈心, 你会感到超脱的轻快, 你的视野会更开阔, 你会发现这会有益于你
今后的工作: 架构的设计会来得更有灵感!
   所谓"当局者迷", 我们有时候一个劲地扑在某个方面,不妨挪开一下关注点, 回归到自然的生活, 生活中的某个驻足停留会帮你找到发光点!
   一切源自生活, 又回归生活! 灵感也不例外!

   Good Luck For Every IT Man! 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值