程序员:“菜鸟”和“大神”差距在哪

“菜鸟”和“大神”

刚刚走出就业的程序员,技术是刚刚起步的基点。那下面我们就聊一聊有关技术的东西。首先请您先想想这几个问题。现在社会上有很多程序员,那您是否可想过程序员为什么会有不同的水平?你又是哪一类的程序员?“菜鸟”程序员和“大神”程序员差在哪里?真是差在技术上了吗?那不是差在技术上那差在了哪里?

上面很多一连串的问题,没有把你搞晕吧!那就听我一一给您分析这个问题背后的答案。确切的说程序员分为“菜鸟”程序员和“大神”程序员。

一个程序员有多优秀,就得看他写的代码!程序员自己的代码才是自己工作状态的真实体现。

“菜鸟”程序员和“大神”程序员到底有什么区别哪,那我们就来看看。

代码的展现,网络的应用

展现题目:一个很小的功能,比如说一个当鼠标移动到一个标题下,在下面显示其可选菜单。

“菜鸟”程序员的代码是什么样子,自己想一下。“菜鸟”程序员的代码往往会会写的比较冗余,而且这些代码不是从书上找来的就是从网上找来的还有可能就是自己会这一部分代码(仅存记忆的提取,真正的原理似懂非懂,好像雾里看花)。

“大神”的代码会写成什么哪?“大神”程序员的代码,当你看的第一眼:简洁;第二眼:真“N”。用最少的代码,把这个程序写的非常精辟了,体现的自己的思维思路。

为什么会出现这样的现象,同样一个小的功能,放在不同的手里就产生不同的结果。这个难道不值得我们去探究原因吗?

真正的原因是:“菜鸟”程序员没有将自己的思维融入代码,代码是程序员思维智慧的结晶。当我们拿到这一个小功能的时候,我们首先一看,这方面的知识自己准备不足,于是就上网找去了。假如我们去想一下如何去解决,我们解决的方法一般会有两种,第一种是自己会从网上或者是书中找到类似的代码,第二种就是请教别人指点,这种方法感觉不太可能,因为在工作中,大家都很忙,相互讨论帮忙很少的。上网搜的时候我们会经常出现这样的现象:看到这个要编写的程序,感觉自己没什么思路,自己从网上找,找了半天我们收获不大,看了很多实现的方法,但是我们花很长的时间去理解,这样虽然把问题搞出来了,然后就去玩去了。有些时候运气好,想找的问题正好有这类问题的解决方法,那我们就直接把代码搬过来,搞定!所以我们就一直这样循环下去,到最后我们什么也没有留下,下面一幅图就显示我们”菜鸟”程序员的现状.

“大神”程序员首先拿到这个程序,自己做的第一件事情,就是思考!自己先思考如何实现这个问题,与原来相关知识可以借鉴,列出解决问题的可能性,考虑解决问题的最难点,所以上网搜的时候,直接搜问题的解决问题点,将其转换成自己的思想,用自己的思维写出自己想要的代码来,这就是代码是思维的结晶的精华。

“菜鸟”背后的答案

通过这一个问题的对比,我们可以发现我们为什么成为”菜鸟”,因为我们没有思考,没有去仔细研究找到其中的规律,找到问题的本质。本来想建立自己的思维程序,自己没有这个意识,所以自己就一直停留在“菜鸟”的水平上去。

“大神”程序员那样做通过认识几个重要的知识点,就把这个问题就解决了,所以技术对于他们来说,没有任何难度而言,因为他们经过了不断的思考,所以我们就应该认清我们“菜鸟”和“大神”之间的差距在哪里?我们不应该逃避这个问题,因为这个问题决定我们解决问题的态度,决定着我们的人生价值。

在程序员当中,为什么人家能整八千一万而自己却只能挣四五千(在程序员里最低),这就是根本原因。思考,解决问题的能力!它就是你到了一家企业的价值,其实在企业中不在乎你拿走多少薪水,关键在于你创造了多少价值。就是因为这四五千收入差值,出去生活的基本消费,等都退休时,你会发现一个富翁,一个穷光蛋。我们都想成为富翁,所以我们如何才能成为富翁,我们可以把问题下移一下,我们如何成为一个“大神”程序员,我们必须要变,我们改变我们自己,首先当我们遇到这样的问题的时候我们应该改变我们的思维方式,我如何才能解决这个问题,而不是遇到问题就上网找答案,这个问题和我以前的知识有什么关系和区别,这样我们就在学习中解决了这个问题。如何培养自己的编程思维,编程只有我们有自己的思维,我们才叫一个独立体,我们才能创造意想不到的价值,对于自己这样做本身是百利而无一害,因为现在的编程风格(源于自己的思想)不知道哪一种会“火”起来,这样编程的世界才能百花争艳。

通过这样一个小的实例就可以说我们为什么还是“菜鸟”,因为我们整个学习技术体系存在问题,我们的学习方法存在着很大的漏洞。

反思自己

回想自己的往事,当初自己在做牛腩新闻发布系统的时候:自己照着视频上一点一滴的敲完了,自己感觉很兴奋,但是等到运行的时候自己又胆怯于测试,自己做完了这个系统跟自己没有关系了。真的没关系了吗?首先来说自己连自己的做出来的东西测试自己都不敢这就是最大的问题。其实测试测试我们真正学习到知识的时候,这一点我自己做的不好。自己更没有将系统在每个浏览器上测试一下,自己没有这个勇气,也有可能是自己没有想到这个问题的严重性,但是当我从事网页项目开发的时候才知道,每个浏览器兼容问题使我们必须要考虑的。这有解决好这些问题,这就是我们最大的进步。把兼容问题写成总结,这对于我们来说以后从事网页项目开发就是一笔宝贵的财富,为将来我们在做开发的时候提供更加有力的保证,所以当初自己的做这个系统的时候,自己没有好好的把握,自己现在意识到当初自己的失败,但是失败并不可怕,当我们意识到了这个问题的时候我们如何改变我们自己才是我们要前进的方向和目标。当今天这个问题惊醒我的时候,让我措手不及,所写下这篇博客以示警戒。

“菜鸟”转变“大神”之思

菜鸟们(我自己也是),我们该醒醒了,我们如何适应企业,如何适应将来的发展,如何生存是我们每个程序员必须面临的问题。我知道想当管理者的程序员很多,但是别忘了,从事软件业是从程序员一步步做起来的,我们连做好程序员的底子都没有,那我们如何受到同事的尊重,领导的重视,这个问题离我们很近了,我们现在应该转变我们的观念,学习的观念,适应企业的观念。

总结思考解决问题的方法,不要滥用手中的工具,建立自己的编程思维,开发自己的创新力,展现自己的编程精华。

时间: 2024-10-04 04:31:59

程序员:“菜鸟”和“大神”差距在哪的相关文章

转发---十大编程算法助程序员走上大神之路

十大编程算法助程序员走上大神之路 本文为转发,源地址:http://linux.cn/article-3613-1.html 算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见.事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来. 快速排序使用分治法(Divide and co

十大编程算法助程序员走上大神路

算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见.事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来. 快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists). 算法步骤: 1 从数列中挑出一个元素,称为 "

十大编程算法助程序员走上大神之路

概述:编程算法,是完成程序逻辑的主要途径.本文推荐十大编程算法,有利于程序员的编程逻辑. 算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法.在平均状况下,排序 n 个项目要Ο(n log n)次比较.在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见.事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来. 快速排序使用分治法(Divide and conquer)策略来把一个串行(lis

【同行说技术】Java程序员小白变大神必读资料汇总(三)

在之前的Java技术汇总文章里,向大家介绍了Java入门学习的基础资料,今天小编汇总了5篇Java技术进阶实操的干货,赶紧来看看吧!另外,喜欢写博客的工程师博主可以加工程师博主交流群:391519124,分享你的博文,和大牛们一起交流技术~ 一.Stack Overflow 上人气爆表的10个 Java 问题 Stack Overflow 上面精华的10Java问题解析,帮助你认识一些误区 二.高级Java程序员值得拥有的10本书 想找高级点的Java书籍,又不知道哪些适合自己,推荐这10本高级

"菜鸟"与大神程序员之间的差别(转载)

前段时间看到一篇文章,写得很好,针对菜鸟与大神之间的差别做了很客观.很透彻的分析,现在将文章转载过来,原文地址:http://www.apkbus.com/forum.php?mod=viewthread&tid=239356&highlight=%E8%8F%9C%E9%B8%9F “菜鸟”和“大神” 刚刚走出就业的程序员,技术是刚刚起步的基点.那下面我们就聊一聊有关技术 的东西.首先请您先想想这几个问题.现在社会上有很多程序员,CSDN就是我们程序员的家,那您是否可想过程序员为什么会有

菜鸟”和“大神”

菜鸟”和“大神” 刚刚走出就业的程序员,技术是刚刚起步的基点.那下面我们就聊一聊有关技术 的东西.首先请您先想想这几个问题.现在社会上有很多程序员,CSDN就是我们程序员的家,那您是否可想过程序员为什么会有不同的水平?你又是哪一类的程 序员?“菜鸟”程序员和“大神”程序员差在哪里?真是差在技术上了吗?那不是差在技术上那差在了哪里? 上面很多一连串的问题,没有把你搞晕吧!那就听我一一给您分析这个问题背后的答案.确切的说程序员分为“菜鸟”程序员和“大神”程序员. 一个程序员有多优秀,就得看他写的代码

程序员福利各大平台免费接口,非常适用

电商接口 京东获取单个商品价格接口: http://p.3.cn/prices/mgets?skuIds=J_商品 ID&type=1 ps:商品 ID 这么获取:http://item.jd.com/954086.html 物流接口 快递接口: http://www.kuaidi100.com/query?type=快递公司代号&postid=快递单号 ps:快递公司编码:申通=”shentong” EMS=”ems” 顺丰=”shunfeng” 圆通=”yuantong” 中通=”zh

程序员的十大烦恼

10. 注释 - 只解释了"how"却没有解释"why"入门级的编程课程通常会教育学生们写代码前先写注释.而且要尽量多注释. 这种教育的出发点是"多注释肯定比少注释好.少注释肯定比没注释好".可不幸的是,很多的程序员把这当成了一种任务,对每一行代码都注释一下. Java code? 1 2 3 4 5 6 r = n / 2; // 让 r 等于 n 除以 2     // 当 r - (n/r) 大于 t 时进行循环   while ( abs

程序员菜鸟必备——作为独立开发者如何系统的学习编程

接触一个行业,前期最好来一个系统的学习,有完整的框架一点一点的把基础吃透,不能左一耙子,右一锄头,以我的从业经验给大家分享如何系统的学习编程开发,刚入坑的程序员菜鸟注意了,迅速占领高地,迅速收藏了. 总体大致分为以下几类: A.教材上的知识 这部分内容来自计算机专业的课程教材.也有可能会涉及一部分来自其他相关专业或者相关课程的内容. B.编程语言 每一个程序员只有在会使用一门语言的情况下才有可能从事开发工作,所以学习并掌握一门语言是最低要求了. C.SDK 光有一门语言是不够的,从事任何实际的软