程序员应该常问常思考

http://www.techug.com/post/programmer-should-ofter-thought-and-ask.html?utm_source=tuicool&utm_medium=referral

程序员怎样不断进步?看更多的编程书籍,学更多的开发技能,做更多的项目,这些方法的本质其实都一样:让我们保持提问,保持兴趣,保持思考,学会提出问题解决问题。那程序员想要进步,还有什么方法呢?提问。通过提问不断鞭策、不断提醒自己是否够努力。常常问自己这些问题,加以反思才能不断进步。

你想成为一个开发者/程序员么?

那是时候放下《24小时学会超级骗子语言》之类的书了。相反地,每天问自己一下10个问题,并养成一个习惯吧。

是否有某种模式?

探寻可行与不可行中的模式,能发现(事物)背后的原理,这些原理则驱动着看似无关的概念和行为。要想对你做的工作有更深的理解,养成问自己“是否有种模式存在?”的习惯吧。

这不仅仅适用于你的代码。在各类商业需求的变化中有某种模式吗?技术进步的方式中有某种模式吗?你看到同样的错误反复地蹦出来吗?

理解就是领悟模式。 —— 以赛亚·伯林

我该如何使它变得更简约?

通常作为web开发者,我们想提出复杂且可扩展的解决方案。做一些极其复杂的东西,会让你觉得自己就是宇宙的主宰。而问题是你永远不能预测到产品和业务今后会怎样变化。

“架构”和编写代码更像是园艺而不是建筑。你需要有能力去适应不断变化的环境,解决方案越复杂,越难以适应。

简约是复杂的最终形式。 ——列昂纳多·达·芬奇

为什么它是那样工作的?

知道事情运作和知道它运作的原因,这是两件完全不同的事。如果你知道事情为什么是那样(运作),那么你就能够做出更好的决策。

一个优秀的程序员和懂一点编程语言的人,差别在于理解缘由的深度。

同样的原则也适用于修复某个问题。“只需重启一下服务。” “你试过重启吗?”当问题发生时,我们经常会想到这些话。每次你这样说时,你就失去了一个绝好的学习机会。

理解问题的原因,能让你解决根本原因,并且永久消除这类错误。最起码,你将不再犯同样的错误。

之前有人做过吗?

无论何时,如果你发现自己正在发明一个复杂的算法,你很可能就是方法不对。除非你正忙于研究博士论文,一般已经有人解决了这个问题。

需要编写一个给离用户鼠标最近的item添加标签的算法?看看Voronoi Tesselations(泰森多边形法,多边形密度)。想要找到卡车送货的最短路径?看看Dijkstra算法吧。想要找到用户输入内容的近似标记?试试计算它的 Levenschtein距离吧。

这些只是几个简单示例,但相信我,还有很多很多。

如果我看得更远,那是因为我站在巨人的肩上 ——艾萨克·牛顿

谁最先提到它?

你以为你知道REST吗?

你有读过Roy Fielding描述REST的论文原文吗?你真的明白它的用意吗?那种比你多 5分钟经验的家伙,在IDE v7工具中用 REST API生成向导写出来的博客,可不算数的。

帮自己一个忙,尽可能试着去读某种概念或理论的原始文档吧,然后通过各种手段去了解行业领袖的最新发展动态。如果你不知道他们是从哪开始的,你怎么跟得上他们的步伐呢?

我热爱现在所做的吗?

编程不简单,咱们承认吧。

除了难以外,编程还总在不断发展。最先进的框架从2年前的“笨重恐龙”已经发展到今天的标准。想要一直站在你的“游戏”顶端,你需要树立终生学习和研究的观念。

如果你不热爱你所做的,那么你就没有跟上其他家伙的希望。所以找到那种让你激情燃烧的编程类型吧!不要因为市场缺口或者收入不菲而决定成为一名安全专家,不要因为一篇文章说用户体验是最热门的科技工作而决定成为一名用户体验专家。

再说一次,做你热爱的。


1、资源项目源码均已通过严格测试验证,保证能够正运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、下4载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、下4载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值