+ -
当前位置:首页 → 问答吧 → 一个老程序员和学生对作为PHP程序员的你们说的话

一个老程序员和学生对作为PHP程序员的你们说的话

时间:2010-04-11

来源:互联网



我,一个老程序员,也是一个学生,把玩过甚多语言,大多不精。我既非名牌学校,也不是高学历,仅代表一部分比较蛋疼的人。
接触PHP也是很早了,从04年的OFSTAR开始的,到现在六年了,期间也接触过不少的语言。从脚本JS到底层的C语言。
坦诚的说,我不是个高手,但是我相信自己比大多数人接触的知识面要宽广,深刻些吧。
同时我也是一名学生,从东南大学到西电,对计算机的爱好一波三折。
我这里想说几个问题:
1.语言,语法重要吗?
     不重要。重要的编程的基本思想。语言是不相通的,相通的是思想。PHP作为一门WEB语言,很多童鞋太过于关注其语法,总是天天翻函数,看语法,是的,他们的PHP
能力提升了,可如果叫他们转行做PY或者C,甚至是NET,那就是要了他们的命。为什么呢?就是因为他们单纯地接触PHP,而PHP只是一门脚本语言,
抹杀了许多算法和数据结构的东西,而重点强调的是函数。结果让大部分童鞋专注于语法层面,而编程思想得不到提高,很难转行。
这就是JAVA转PHP很容易,而PHP转JAVA很难的原因。这也是有四五年经验的PHPER仍然感觉自己水平提升不咋地的原因。
他们精通PHP,但除此之外,啥都不懂。这够了吗?不够。
我发现论坛里不少人总喜欢钻研函数,发现一个函数好用就沾沾自喜好久,而不知道自己已经落后高级程序员很大一截了。
斐波那契数列,如果用递归解答,100分的话,我给0分。
这说明这个人没有任何编程思想,不会理清思路,不会推理,不适合搞计算机。
就和约瑟夫环一样,一旦逻辑稍微复杂,有人就头晕了。
至少,高中数学不及格。
我测试新人,必然用约瑟夫环考察潜力和逻辑,一旦做不出来,直接全卷0分,对不起。

2.算法和数据结构在WEB开发中重要吗?
      很重要。很多人总是说WEB中算法不重要,而不肯钻研这一块。才会出现一个树形结构难倒80%的PHPER,在他们眼里,一个无限分类就是算法的最高境界。一个递归难倒一半PHP新手,一个很简单的斐波那契数列难倒80%的PHPER(他们不知道循环解法才是最有效的办法,而这在任何语言里面都是经典例子,而绝大部分PHPER不知道,稍微聪明点的会用递归),不知道其他语言的程序员,特别是JAVAER会怎么想的。算法无论在什么中都是重要的。现在论坛里很多人对算法都是一窍不通,还是看看吧,绝对错不了。
3。学历重不重要?
       重要。学历就是你娘,有个好娘家,不愁嫁,至少也轻松些。我发现有许多人,抱着“越穷越光荣”的心态,喜欢嘲笑高学历的人才(研究僧,烟酒生。。),正如论坛里那篇北大博士生会不会PHP的那篇文章一样的心态。让我想起来,没有文化真可怕这句话。
人家博士的知识深度和学习能力,是你无法匹及的,你只能仰望的。人家玩的是编译器。
所以,虚心点,你有你的工作经验,人家有人家的项目经验,不会比你差。出名的那些人有几个不是高学历。李开复,美国博士,联想总裁,军校。
尊重知识。
4.教材重不重要?
        看什么教材了。有的人喜欢笑话学生看死书。我想告诉你,写教科书的人都是博士,教授,能看懂书的人,很牛叉。当然了,现在某些吹牛大王出的
什么XX开发王啦,XXX开发宝典的就无法相提并论了,纯粹是赚版费的,和正规的教材不是一个档次。
5.山寨很可耻吗?
        不可耻。PHP被看做最草根的语言,没什么可耻的。PY不也是草根吗?但是为什么PY能得到IT界的认可,而PHP不能呢?
很多综合性的IT网站,PHP只是很小的一个版块,甚至没有。
出身不好不可怕,怕的就是不争气。
6。我有必要学习其他语言吗?
有!PHP是一门优点和缺点特别突出的语言,所以他并不适合作为一门入门型的语言来学习,它也不是一门综合性极好的语言。这就是为什么现在大学的教材选择C语言,FORTRAN,JAVA而绝对不会选择PHP作为教材的原因。学习了其他语言,开阔了自己的视野,你才会发现自己是多么渺小,才会学会谦虚。
7。我有必要进培训机构吗?
没必要。培训机构的实力不敢恭维,快餐教育只会培养出一个代码工人,而不是程序员。综合我上面的观点,你应该知道咋做了。
      建议:
1.不要停止学习。
2.不要停止思考。
3.不要停止进步。
4.不要浮躁狂妄(很多搞技术的人容易陷入其中)
5.踏实。我老看到很多人对C语言一窍不通就开始讨论或询问PHP的变量机制。我不了解这个对你有啥用,就算你一知半解了,除了显耀外,还能怎样。
   我们必须知道学习是一个过程。快餐吃了会营养不良的。

同是穷二代,这就是为什么有人觉得生活很美好,有人天天骂娘;
有人感谢教育,有人天天痛骂学校的原因。
为什么名牌大学的学生感谢新学校给了他一分工作,而下流大学的对学校痛骂不已;
因为有人靠知识改变了命运,有人没有。
什么算法数据结构和语言一点关系也没有,说明作者也就半桶水出来气气这帮phper壮大一下.net的声势 ...



经验!=技术

    你认为没关系,那是你内功和层次不够。功夫的修炼有一个层次的。
简单的,比如说对于一个数组排序,只有1000个元素的数组排序和10亿个元素的数组的排序一样吗?
求10000以内的素数和100亿以内的素数一样吗?
你不要跟我说他们的算法是一样的,也不要跟我说排序么不就是SORT函数么。更不要说后面的情况你遇不到。(你网站规模一大,必须考虑这个东西。底层操作无非就是数字运算)
你更不要跟我说我一个MEMCACHE就就解决了。
这就是大公司比如百度和小公司的面试题为什么很大区别,为什么大公司愿意招没有经验的应届生也不肯招有经验没技术的人,更愿意招科班出身的人,也是为什么一个应届生的薪水能超过几年工作经验的人。原因不是学历,而是他们有一个系统的学习,从算法到编译原理,从数据结构到C语言,从软件工程到离散数学,从应筹学到微积分。这个系统的学习体制保证了他们的快速上手和深入理解能力。你有三年工作经验,但对于同一个陌生的东西,你坑能要半年,而他只要两个月。故,我强调一个系统的学习,做 programmer而不是coder。
也是你进不了大公司,做不了核心的原因。
你说算法和WEB无关,
     那你是不是认为斐波那契数列就仅仅是玩游戏的,求老兔子生小兔子的?
    你是否知道余弦定理在搜索中的应用很广,而不是高中生拿来算算三角形夹角那样的简单?

记住:靠一门语言可以吃10年饭,靠数学可以吃1000年。

作者: 那个故事   发布时间: 2010-04-11

作者: zooro   发布时间: 2010-04-11

围观了………………

作者: 我为ぁ琴狂   发布时间: 2010-04-11

好文,  

作者: xiaokai   发布时间: 2010-04-11

思考中,不错

作者: lxylxy888666   发布时间: 2010-04-11

作者: 那个故事   发布时间: 2010-04-11

很好

作者: witer666   发布时间: 2010-04-11

作者: chunfeng   发布时间: 2010-04-11

楼主把高学历的人捧的很高呀,我承认这里面确实有高手。但大多数都是应试教育下的产物,没什么真本事的。

这也是为什么大家有时笑一些高学历的原因,一个事物存在,肯定有他的原因。

另外大多数人选用PHP就是为了快速开发WEB,又不是搞系统研究的,当然效率是第一位的。。。

如果你没有那个能力搞系统研究,会发现到最后是浪费时间的,人生不过数十载。。。可消耗不起!!!!

当然有能力搞系统软件的,则另当别论了!

作者: chengc   发布时间: 2010-04-11


楼主把高学历的人捧的很高呀,我承认这里面确实有高手。但大多数都是应试教育下的产物,没什么真本事的。
...
chengc 发表于 2010-4-11 22:23



    1.相信大部分高学历的人都是很牛的,最高深的技术诞生在科研机构和实验室,而不是职场。
我认识一个瘫子,不会说话也不会走路,很多人笑话他,但是他和爱因斯坦齐名,他叫霍金博士。
所以我很尊敬我的老师,哪怕又是我觉得自己在某些方面超过了他们。更不敢妄言叫兽,啵死。
    2.我说了,搞WEB是可以快速开发,但WEB得发展必然朝着一个复杂的方向发展的,对JS,RIA的要求越来越高,这也必然对IT行业从业者
的素质要求越来越高。JS和RIA里面对算法的要求越来越高,至少比PHP高十倍。将来PHP的发展要么是继续走低端路线等死,要么是高端(现在有这个趋势)弄死一部人,
反正不管怎样走,我们写程序的不能死。掌握算法必须的。你说效率第一,而PHP恰恰做不到效率第一,到时候转换语言你咋办?只要你掌握了编程的思想,那就是轻轻容易的事。
而这个对许多PHPER而言,正是最缺乏的。这是脚本最大的优点,也是最大的缺点。

作者: 那个故事   发布时间: 2010-04-11

真正掌握核心技术的大牛还是少数的,,一万个博士生里面,最多也就是十几个左右,这个比例还是很低的好不

为什么你总喜欢拿小概率的事情来说事!

我承认后台技术越来越复杂,,但不要忘记,开发的效率是越来越高,越来越容易,这是因为这些很稀少的大牛们做的贡献,他们推动了世界。

至于转换语言什么的,你无需担心,市场的需求推动一切!!!

作者: chengc   发布时间: 2010-04-11

开发的效率是越来越高,越来越容易。
这个不敢苟同。你不觉得开发工具越来越复杂了吗?
等到市场推动的时候,就来不及了。

作者: 那个故事   发布时间: 2010-04-11

回复 lxylxy888666


        说的很平实的话,但是很实用,呵

作者: duxingzheli   发布时间: 2010-04-11

是越来越容易吧。。。

我倒觉的是心态浮澡,实际上你静下心来看,,现在的技术都是为了简易开发。。。

作者: chengc   发布时间: 2010-04-11

未雨绸缪是好事,可是技术的发展和经济发展一样不是人能预测出来的。

但是只要你有智慧,能去分辨,你是不可能过时的。。。

BTW:能产生市场效益的技术才是好技术,才有好发展!

作者: chengc   发布时间: 2010-04-11


是越来越容易吧。。。

我倒觉的是心态浮澡,实际上你静下心来看,,现在的技术都是为了简易开发。。。
chengc 发表于 2010-4-11 22:44



    简易开发的背后恰恰是复杂逻辑。

JAVA简易吧,对象之间的逻辑衍生关系,设计模式不简单吧,比几年前复杂多了吧。
拖拖拽拽就能写程序的net不是那么简单的吧?
PHP5貌似不比PHP4简单吧?就算你用了框架,那框架逻辑呢?如果效率要求高呢?
PY也说简单,模块复用,貌似不简单吧。
说个简单的吧,一棵无限菜单树,就可以卡掉一大把人。

开发只会越来越难

作者: 那个故事   发布时间: 2010-04-11

总归有些开发好的轮子可以拿来使用,不是简易是什么?

这恰恰符合社分工不同嘛,有人做核心的,有人直接拿来用。

你不知道嘛,现在开发一个网站的周期时间,可比几年前要少了几倍呀。。。

作者: chengc   发布时间: 2010-04-11

PHP一样能面向对象!~

作者: jacker   发布时间: 2010-04-12

PHP一样能面向对象!~
jacker 发表于 2010-4-12 08:57



    此对象非彼对象。

作者: 那个故事   发布时间: 2010-04-12

其实越来越复杂、越来越精细、越来越难未必是坏事,这些门槛能保证在竞争中获得优势。
如果很简单谁都会用,估计PHP行业和服务员也相差无几了。

作者: 602000   发布时间: 2010-04-12

其实越来越复杂、越来越精细、越来越难未必是坏事,这些门槛能保证在竞争中获得优势。
如果很简单谁都会用 ...
602000 发表于 2010-4-12 09:33



    每个行业都在提高自己的准入门槛,必须的。
IT里面,这也是个趋势。还死抱这简单开发势必被出局。

作者: 那个故事   发布时间: 2010-04-12

要适当地停下来思考

作者: 扑街仔   发布时间: 2010-04-13

这个不得不顶

作者: lurkerming   发布时间: 2010-04-13

混饭吃而已 不要太介啊
      生活????  看我的签名

作者: adqin1984   发布时间: 2010-04-13

希望更多人看到

作者: 那个故事   发布时间: 2010-04-13

1.不要停止学习。
2.不要停止思考。
3.不要停止进步。
4.不要浮躁狂妄(很多搞技术的人容易陷入其中)
第四项我陷入了, 痛苦中。
前面三项就是一位战士, 永远不要忘记前进, 英勇的战士们,冲呀。

作者: sarphp   发布时间: 2010-04-13

1.不要停止学习。
2.不要停止思考。
3.不要停止进步。
4.不要浮躁狂妄(很多搞技术的人容易陷入其中)
...
sarphp 发表于 2010-4-13 12:47



    怎样才能做好第四条?
学习。
学习的越深入,才会知道自己懂得越少。

作者: 那个故事   发布时间: 2010-04-13

赞同第一条!如果学语言,最好还是先学习c的基础,我学习c#比学php多(当然水平级差啥也写不出来),编程语言的思想要比程序本身重要,而且非常重要。php相对来说容易入手,语法也简单,本身web开发,也是市场普及和催化的结果,那么自然而然,就有一种面对低技术水平开发的编程语言来适应这种市场趋势。说道学历,我倒想调查下phper的学历比例,我对学历没有太多关注,但貌似phper低学历较多一点,大约是学校没有教php的,离校后都转行了自学的,技术嘛,好好学学了都很牛。

作者: 任燕青   发布时间: 2010-04-13

不知道LZ写过什么软件,参与过什么项目,能否让我等民工开开眼界,见见世面!~

用PHP做的CMS也行,我就看看!~

作者: jacker   发布时间: 2010-04-13

不知道LZ写过什么软件,参与过什么项目,能否让我等民工开开眼界,见见世面!~

用PHP做的CMS也行,我就看 ...
jacker 发表于 2010-4-13 13:34



    你又犯了第四条建议了。很遗憾。

作者: 那个故事   发布时间: 2010-04-13