加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

正确的开发姿势,做一个成功并高效的开发者!

(2016-07-01 16:50:37)
标签:

杂谈

http://jiasuhui.com/wp-content/uploads/2016/07/Y0koaXjHnJSrzB6vK4STqQ.png

抽时间学习开发,这并没有你想象的那样困难!

没时间,这不就是你的借口嘛?时间一去不复返,时间也不再会给你重新弥补过去的机会。没时间去完成代码测试。没时间去写文档或为那个读不懂你所写内容的人去撰写备注。没有时间去思考。没有时间呼吸。干什么都没时间!

那么......如果你花时间来阅读这篇文章,我保证你会发现其实你能够为一些重要的事情抽出更多的时间。

我曾经以为,只有疯狂的工作才能让自己成为一个伟大的开发者。我的健康、友谊、和家人都因为我曾经的这个想法而备受折磨。对于开发人员而言下面5条时间管理的方法非常重要,因为他们曾挽回和拯救了我。

第一,你没必要去学习任何一件与你研究领域有关的新事物。

http://jiasuhui.com/wp-content/uploads/2016/07/nlHiraEMnpECFoi3_nIV4g.gif

真的没必要。

对于一个好的开发人员而言,活到老学到老是很宝贵的一种品格,但如果你在某一领域投入了大量时间和精力,那么这将会让你在这个领域上保持一种领先的姿态。

“旧事物已经被淘汰了。而新事物也将会成为旧事物!”

首先,不要被博客头条那些所谓的新技术而蒙蔽了头脑,多数的新科技、新框架和新功能都不会像这样被进行大肆的宣传。这些新技术从研发到推广经历的时间比博客上所说的长得多,希望你能够认识到这一点。所以,不用担心,高科技并不会取代你的工作,你的职业是安全的。

你应该根据如下的先后顺序来将你的注意力分散到如下3个领域:

1、基础:当你拥有扎实的基础知识和能力的时候,学习一种新的技能往往会相对轻松。例如,如果你能够熟练地掌握JavaScript,那么你就可以很快地掌握任何一种JavaScript的新框架。如果你对面向目标程序设计有着深刻的理解,那么你就可以快速掌握一种新的目标程序的语言。扎实的基础能够10倍的提升你的学习效率,基础才是最重要的环节。

2、最新版本的堆栈技术中,有大部分都是你以前使用版本的功能和操作。当所使用的工具有新版本发布的时候,多花点时间和精力去学习和了解他们还是很值得的。

3、有潜力的高科技都是由强力的领导者和公司在背后做支持的,如果一个大规模的,且建设完善的公司,像谷歌、Facebook、微软推出新的产品和科技,这些科技和产品都是值得研究的。而往往一些小的科技公司的或是名气不响的公司产品往往只是在制造噪音来混淆视线。

学习时间应该是你日程安排中的一部分。每天都设定一段固定的学习时间,时间不需要很长,但它将每天都会给你带来新知识。

第二,编写一段好的代码花的时间比糟糕的代码时间要短,即便你并没有体会到这点。

http://jiasuhui.com/wp-content/uploads/2016/07/2.gif

时间是一个椭圆。

当你开始运行你的代码,并且这些代码可以工作的时候,你可能觉得你花费在一个新研究上的时间终于结束了。但是,这段设计代码的时间只是你投资的一个开始,这既包括你花时间来调试新功能,也包括你在试用新功能产生问题后进行修改修复所花费的时间。所以说花时间来减少错误和进行更好的设计才是你正确的选择!

做好这两件事你就可以减少代码设计中的不足并做出更好的设计。

1、使用测试驱动开发。先写测试方法,然后再写满足测试的代码。这不仅使你有一个更好的更好的设计,而且你还可以根据测试方法来写代码,这样你就可以更好的减少代码设计中的不足。

2、使用迭代设计方法。在你的代码可以运行之前,你不要花费过多的时间在完善你的代码上面。没有运行测试之前,你永远无法找出代码中的全部错误。你必须让这些代码运行起来,然后再去发现问题。问题是,开发者往往会犯两种常见的错误;要么花太多时间去思考,导致没有足够的时间去做,要吗他们没有花足够的时间来提高他们的首选解决方案。Kent Beck曾说过:“让它工作,使它正确,使它快”这才是正确的研发顺序。

第三,不间断的工作并不能确保你有成就!

http://jiasuhui.com/wp-content/uploads/2016/07/3.gif

回家接着工作!

以前这种工作方式几乎杀了我。我曾经会对我的老板或客户有求必应,因为我害怕说“不”。我怕让任何人失望,所以我会尽我所能去完成这些任务。我已经习惯在我的办公桌下睡觉,喝着咖啡并进行着超过40小时的马拉松式代码编写。

起初我会得到大家的赞赏,让我觉得自己像个英雄。但我不敢去给我自己设定一个预期,因为我害怕失败。最后,我的身体开始透支,我不能在截止日期前完成任务。我的声誉受到的损失,这对我而言绝对是个沉重的打击。我终于认识到那些认真学习并能够有条不紊,持续做出贡献的人才是真正的强者。他们会像英雄一样去履行他们的诺言。

你需要把握好你的时间,明确的时间表可以帮助你提高工作的质量。起初,合理的规划时间是很困难的一件事。这意味着必须对推后而说“不”。

一开始,你的老板或客户不会被你的坚持所震撼到,但一旦你证明你是值得信赖的、可靠的,一切都将开始改变。随着时间的推移,其他开发人员会迟到早退,会马虎工作,或身体透支而变得不那么可靠。随后,你就会成为你们团队中真正的英雄。其实,时间规划让我成为最好的市场咨询员之一,而我也已经建立了良好的声誉。

第四,并不是投入时间就一定会有对等的投资回报率。

http://jiasuhui.com/wp-content/uploads/2016/07/4.png

花时间是一种投资。和其他的投资一样,时间投资也是有合理的预期投资回报率。

我们所讲的“正确、快速、高效的工作!”这是一个很好的口号,但这也是一个陷阱:“正确”,并不意味着完美,而“快速”并不意味着没有上限的速度要求。

“正确”是指代码能正常工作,且易于重构。 “快速”意味着代码的运行速度不会对用户的整体体验带来负面影响。最重要的是,用户还应该能够快速的接触和使用到你的产品。

所以,不要浪费时间去研究一个几乎不会被客户使用的功能,或试图争取比竞争对手快那么几毫秒。不要浪费时间去重新布置工作内容,如果你只是学到了一些新的技术或方法,却说服自己重构之前的工程,并将新技术运用进去,这样只会浪费时间。

第五,规划好时间可以提高你的工作效率!

http://jiasuhui.com/wp-content/uploads/2016/07/0.gif

放松,兄弟。

想想当你并没有把你全部的时间都花在工作上的时候,你如何才能提高效率呢?

根据弗吉尼亚联邦大学针对工作和员工积极性的研究表明:“我们的认知资源是非常有限的。当你不断地消耗你的资源的时候,你并不一定是在尽可能的提高生产效率。如果你透支了,你的业绩就会下滑。你的意志力和持久力就会下降,你解决问题的能力也随之会变弱。”

长期在紧张的环境中工作,你会感到紧张,疲劳并衍生消极情绪。这会耗尽你的精力,透支你的身体、损害你的各种情感。这些脑力的损失,必须得到补充。否则,大脑将会受到损伤,在处理问题的时候可能会遇到困难。

因此,规划好时间,这样平时休息的时候,你就不会想要去工作或感到内疚。当你需要工作的时候,你也能更好的投入到工作中去。

加速会注:希望你看完这篇文章能学到点什么,同时也不要忘了通过推荐和分享它来帮助别人!



本文来自:加速会

原文地址:http://jiasuhui.com/archives/83267

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有