为什么说大多数程序员都缺乏基本功?

时间: 2019-08-22阅读: 89标签: 程序员

什么是程序员的基本功

有人说:“初级程序员才比招式,高级程序员只看内功。”什么是程序员的基本功?不是那些高大上、新潮的技术、框架,而是程序员每天做的基础工作。

所谓基本功,就是说抽空都要练习的。就像一个学武之人一样,每天早上要跑步、扎马步,也像一个京剧演员样,一大早就要吼几嗓子,我们程序员也得每天练习基本功。

广义的基本功涉及到生活的方方面面,丰富的想象力,缜密的逻辑思维、学习能力、恒心和毅力、沟通能力....这些时时刻刻都能练。今天,我们主要说的是狭义的基本功:数据结构,基本算法、编程思想和设计模式、至少精通一门语言等。

程序员都知道程序=数据结构+算法,可见数据结构和算方法对我我们程序员来说是何等重要。举个实际的例子,假如浏览一个网页,本来需要1秒的时间能够打开,结果由于程序员的失误或粗心,或者说基本功力不足,使得整个过程变成2秒,你可能认为这个无所谓,不就是多了一秒么,应该没什么大不了的。如果你真这么想就大错特错了。

就拿个一般的网站举例,每天1WPV,那么浪费的时间就是每天166.67分钟,1年就浪费60834.55分钟。约等于42个昼夜!而且这个对计算机的损耗,以及浪费的电能等都还没有计算。

除此之外,编程思想同样是程序员应该着重修炼的基本功之一。重视思想、重视问题的本质,不要浮在表面看待问题。

以我们前端开发岗位面试为例,假如面试时被问到一个web开发的基础问题:说说session的原理。这个对于搞web开发的人来说,是个很基本的问题。如果连session的原理都搞不清楚,说明这个人不是很喜欢思考。平时开发肯定都用别人说的,别人怎么说,他就怎么做。至于为什么一个用户能够登录成功,他始终是不清楚的。

当然,不明白session的原理不是说就不能搞程序开发,一个项目也需要一些纯的coder。纯的coder就是按照要求填写代码的,基本不需要思考。相信每个有追求的程序员都不会甘愿成为一个纯的coder,那么,请在遇到实际问题的时候,多深入思考思考,多问几个为什么,一直深入到问题的本质。这样坚持下去,你绝对是一个有思想的程序员。碰到问题就很容易拿出一个靠谱的方案。


重视程序员的基本功,会给我们带来什么好处呢?

程序员掌握扎实的基本功有多重要?我们先来看看基本功扎实的程序员都具备的素质:

1.具备良好的沟通能力。沟通不仅仅是说话或者写文档,程序员还应该能用自动化的测试作为媒介,准确地框定需求范围。

2.他应该能有效地拆解任务,要把任务拆解成可以落地,可以逐步实施的小块。

3.应该能在保证质量的情况下把拆解好的任务快速实现出来,让每一行代码都是有测试覆盖、有质量保证的。

4.基本功能力就是代码质量要好。写完一段代码之后,应该回头看一看,有没有坏味道,用适当的重构方法把坏味道消除掉,让代码质量保持在良好状态。

5.做前面几件事情的速度要快。只是头脑里知道怎么做,没有用。因为一旦有压力的时候,就很难施展出来,所以要反复的练习,保证快速完成这一系列的动作。

其实你看,上述每一点都很简单,要求也不高,但是往往就是做起来就很难。这也是我们与高级程序员之间的距离。


程序员如何修炼基本功

程序员的基本功通常不是可以速成的。虽然说,你可以在一两年看完相关的书籍或论文,但是,这些基础技术是需要你用一生的时间来学习的,因为基础上的技术和知识,会随着阅历和经验的增加而有不同的感悟。

不过想修炼基本功,小渡可以提供给大家几点小建议:


提高学习能力

所谓学习能力,就是能够很快学习新技术,又能在关键技术上深入的能力。只有掌握了上述基础知识,你才能够拥有好的学习能力。

学习必须持之以恒。开始很容易,但要坚持,却很难。所以,请务必要坚持下去,每天学习一点点,时间一长,你的能力就会质的提升。


保持激情

首先要热爱学习,把学习当成一件快乐的事。

第二要给自己找自己奋斗的理由。比如想给家人更好的生活,想有更好的工作,所以我一定要出人头地,所以我要努力学习。


高标准要求自己

只有不断提高标准,你才能越走越远。

吃透基础技术、提高学习能力、坚持做正确的事、高标准要求自己,不仅会让你全面提升技术技能,还能很好地锻炼自己的技术思维,培养技术前瞻性和决策力,进而形成技术领导力。


可能我们在学习的时候,会有一段时间感觉好像自己什么都知道了,于是开始自满停滞不前。但知识就像是车轮,学得越多,这个车轮就越大,转一周所需要的行程就越长,而你会发现,车轮变大的同时,所接触的东西也是越来越多了,然后猛然发现,不会的东西变得更多了。如果一个人没有问题问,只能说明知道的太少了。

其实不仅仅是程序员的工作这样,其实所有的事情都是一样的道理:越是简单的东西,大家往往越不重视,而往往越是这些基础的东西才是真正决定能否成功的关键。

作为专业的程序员,IT行业发展迅猛,新的思想和新的东西不断涌现。如果我们不睁大双眼去观察,去了解,我们就会被逐渐淘汰。我们需要在日常工作生活中,一点一滴不断去修炼自身的基本功。基本功扎实之后,想不掌握更高维度的技术都难!


链接: http://www.fly63.com/article/detial/5463

初级程序员如何提升自己?

无论各行各业,基础是最关键的。好比你是个大作家,结果老提笔忘字,提笔忘词,那么你又如何写出精美的文章呢。做程序开发也是如此,既要清楚基本技术,也要深刻领悟其原理

北漂程序员的真实奋斗史:有辛酸,更有成长

最近很流行的一句话成年人的世界没有「容易」二字,其实程序员的世界更没有『容易』二字。不是计算机专业出身的我初入行的时候,每晚在楼下的全时便利店敲代码到深夜 1 - 2 点。但这其实仅仅是开始,努力了几个月以后成功面试

为什么很多大龄程序员说技术不重要?

从业之初,有个似是而非的问题总会冒出来,程序员是不是吃青春饭的?过了而立之年要不要转行?这个问题就像达摩克里斯之剑时刻悬在技术人的头顶。码农肯定是吃青春饭的,码精、码神完全不用担心这个问题,真正有技术含量的人不存在转行之说

北漂那么多程序员,到了35岁以后该怎么选择往后的路?

有个同事在和媳妇都是做软件开发,媳妇主要做的是软件测试,同事做的是视频后台服务器开发,目标就是在北京能定居下来,想要下一代成为北京人,运气还不错摇车号以及摇到了经济适用房,算是在北京有了自己一个小窝

如何确定自己是否适合做程序员?

在这个经常和各路工程师沟通的岗位上,我发现大家有以下共性,可以作为「如何确定自己是否适合做程序员?」的一些参考:单纯地讲「热爱」这个词很难想象什么是热爱,所以这里举一些工程师日常生活的一些言谈举止

低效程序员的 5 个坏习惯

有些程序员比其他程序员更优秀。事实上,程序员群体也符合一个普遍的统计分布规律:只有少数人真的是聪明绝顶,有一些人很优秀,而大多数人至少算是能力尚可,有一些人几乎没啥能耐,还有一些人真的糟糕透顶。

中年程序员对核心竞争力“不可替代”的重新认识

过去成功的项目经验才是职场上真正不可代替的,你有成功的项目经验,能解决当前团队面临的最大问题,这个才是不可代替的;所以频繁跳槽的人通常要比在一个公司待长时间的人更有竞争力

程序员,你想不想进大厂?

“怎么可以进大厂” 这个问题,跟“怎么可以在30岁前赚到1000万” 和 “怎么可以在40岁前赚到一个亿”本质是一样的,不存在一个明确指引,可以指引一个人一定可以成功,如果有这种武功秘籍,我早就发达了!

当我开始编程时,我希望知道的 30 件事

如果你想成为一名程序员,这个建议可以帮助你走上正确的道路。程序员不是一个容易的职业,每年都有许多人从国内顶尖院校的计算机科学专业毕业,这是任何人都能从事的竞争最大的职业之一。同时,编程也是令人兴奋的。

程序员应该怎样提高自己?

经常有小(我 20 岁左右的)朋友问我,作为一个程序员该怎样提高自己。每个人的经历不同,所处环境不错,其实这个问题很难具体回答。不如好好写一篇总结,以后就不必每封 email 都重新写一次了。

fly63.com版权所有,内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权,请与小编联系!情况属实本人将予以删除!

广告赞助文章投稿关于web前端网站点搜索站长推荐网站地图站长QQ:522607023

小程序专栏: 土味情话心理测试脑筋急转弯幽默笑话段子句子语录成语大全