计算机程序语言与英语

来源:互联网 发布:美国手机音乐软件 编辑:程序博客网 时间:2024/05/22 15:25

              自从学习计算机编程到工作现今,也有10余年了。所常用到的程序语言:C/C++/C#。其中c语言用到最多。虽然干了这么多年,但是还是觉得自己处于code水平。为什么呢?因为一直觉得自己没有设计思想,不能从宏观看问题,分解问题。我所遇到的困惑是虽然代码了不少,语法学习了不少,但是远没达到架构师的水平。晚上一人深思,突然回想起自己学习英语情景,算下来学英语也有15年了,也是可以看懂单词,读懂句子,但是要我随心所欲的写与说却是很困难。我惊人的发现自己在这两个语言上的困境是惊人的相似之处。 一个牛逼的人,不光是肯努力,还要有所领悟能力。计算机的书和英语书浩如烟海,其中良莠不齐。有的人似乎没读几本,却成就非凡。这其中主要差别就是领悟能力。

  以下是我自己总结的几点领悟,十分初级,相信不少人也犯了同样的错。

1.先要有想法,后才有代码。 没有代码实现不了的,所以在设计阶段不要考虑code实现。我在软件设计时,总是不由自主的想到代码的实现细节,常因为想不通细节问题,而痛苦,最后设计做的很差,比如接口如何定义,子类何时生成,消息机制如何实现等。其实这些都不是设计时才考虑的,这些甚至是设计阶段时的束缚。马云提出支付宝时,就是概要设计了。如今的IT行业的不少大腕们,他们虽然不会写code,但是无形中掌握了比程序员们数 十年都难以突破的能力----设计思想。

               思想无定法,所以不是看几本书等就能解决的。程序员们的思想常被一些框框束缚,不能突破,充其量只是把工具玩得很熟悉的技工,谈不上设计型人才,更可悲的是以为自己一直在做程序设计相关的工作。须不知道自己只是流水线上的工人。最有价值的部分----设计理念,自己没法掌握。


2.语言应该是随心所欲,信手拈来。学习十年,二十年英语的中国人,有多少人能运动自如?每当看读写英文语时,不由自已控制的,分析起语法,脑子里查找对应的中文意思。如果按照字典的解释逐步的理解英文,将是十分别扭,且对自己思维也是折磨。同样的,我最先学习的是C语言,后来运用C++时,常用C语言的思想来阅读c++的代码,也常感到痛苦。c语言一个是面向过程,思维是从上到下的线性结构,使用代码阅读工具,可以看到前后的因果关系。c++是面向对象思想,对象之间是相对封闭,思维方式不是线性的,可能是分类的(我自己定义的),所以使用c语言的思想来理解c++是很痛苦的。

         当你使用英语时,请忘记中文的思维,尽力使用英语系的人的思想;当你使用c++时,请忘记c语言的设计方法。


3.当你学得很痛苦时,请停下来,不要继续按照老路子学习,该换个思维了。树挪死,人挪活。此路不通时,一定要想法找别外的路。如果写代码你觉得很痛苦,三种方式:

(1)继续坚持,但是要换个思维方式。(2)换到行业,比如非专业性的软件公司,例如,制造行业,金融行业等,这行业需要软件+专业背景方面的人才。(3)不写代码了,搞QA或是其它的。




0 0