代码农民提高生产力

俗话说。天下武功。唯快不破。也就是说要练成天下高手的话,出招速度一定要快,这样才干在江湖上立足。不至于掉了脑袋。

而程序猿要在IT界混出个名堂,也要有高效的工作效率才行。

IT行业时时刻刻都产生着新知识、新技术。

ArticleId=31722567" width="1" height="1" >要想跟上变革肯定要有几把刷子。

而我本人非常喜欢各种各样的方式来提高自己的工作效率,能够分享给大家一些经验。

  1. 键盘功底要扎实。敲键盘时要使用标准指法。

    可能你觉得这是程序猿的基本功。但是我发现事实上非常多程序猿都做不到这点。看着他们写程序时那笨拙的指法我就心急。

    事实上炼成标准指法不难,相当年我还是一指禅,打字极慢。痛定思定。在一周内我打字必用标准指法。再别扭也要坚持。一周后就适应了标准指法了。如今不说运指如飞也算是略有小成。练习指法和键盘速度能够给大家推荐一些站点:http://10fastfingers.com/typing-test/english,这个就是练习标准指法的。我能够轻松上60
    WPM(每分钟60单词),有个外国同事能够达到130以上,那才叫恐怖。http://typing.io/lessons。专门供程序猿练习写程序的站点,融合了各种括号和标点,

    ArticleId=14124707" width="1" height="1" >难度有点大。

  2. 要熟悉IDE的各种快捷键及特性

    IDE基本上是码农们上班中使用时间最长的软件。首先要选择一个趁手的IDE,俗话说,工玉成其事,必先利其器嘛。

    俗话又说了:人有多大懒。才有多大闲。假设是C#阵营的那肯定是最新版的Vistual
    Studio了,假设是Java阵营的话当然是Intellij了(eclipse作为开源IDE,真心比只是Intellij)。

    我如今使用Intellij能够在95%的情况下不用鼠标。全键盘完毕开发过程中的大部分操作。

    我认为没有什么经常使用快捷键、不经常使用快捷键之分。仅仅要你知道的快捷键就要拿来用。尤其是各种重构快捷键必需要熟练掌握,当我看到码农改动变量名时不用重构快捷键,而是自己手动在引用的地方一个个改,然后编译查错时,真为他们捉急。还有各种inline。introduce的快捷键真是好用到爆,掌握了这些快捷键能够说对代码进行不论什么重构都不费除灰之力,我们的注意力也从手动改动代码转移到怎样发现坏味道了。

    Vistual
    Studio中推荐安装ReSharper,其开发公司与Intellij开发公司是同一家。

    除了重构快捷键,还要掌握一些IDE的特性,比方调试时能够插入指定条件来命中断点等。这些就要平时的积累和学习,另外还有好奇心。我敢说你如今挨个看IDE菜单,至少有30%功能你从没用过或不知道是干什么用的,事实上里面有些功能是很有用的,仅仅是你没尝试而已。

  3. 至少熟练掌握一种shell终端。作为程序猿老用图形化界面咋行。要用那种古老的命令行界面才干显示出你的高深嘛!鼠标点界面谁都会。而命令行界面不是谁都能驾驭。有些功能在命令行下要比图形界面下高效N倍。比方我使用git提交文件时都是在命令行下查看哪些文件被改动了,哪些是新加入的。改动的部分是哪些等。

    使用图形化界面要用鼠标点来点去,效率实在太低。

    Linux系统下的终端太多了。就不推荐了。Mac系统下推荐使用iTerm2这个壳,其比MAC自带的terminal多了不少有用的特性。也能方便切换自己喜欢的配色。Windows下当然首推Windows
    Power Shell了。Windows Power Shell本身集成了经常使用的有用工具,而且与.net framework无缝结合。这点是那些在Windows上的类Linux模拟器(比方Cygwin)是远远比不了的。

  4. 具有一定编写shell脚本的功底。光会用现有的脚本还不行,还要会依据情况编写脚本来实现自己特定的一些目标。

    比方我使用MAC机上的终端时。常常须要在不同文件夹间跳来跳去。每次都打一串的cd …..非常麻烦。后来我就自己写了一个小工具,能够给指定的文件夹起别名。想要跳到这个文件夹仅仅要敲别名就可以(參见http://www.huangbowen.net/blog/2013/02/16/gtshell/)。

    还有我在Windows系统上工作时。也常常编写一些Power
    Shell脚本,比方一个命令就启动指定的FTPserver,一些小命令用来实现高速在不同项目源代码间切换并运行构建命令等。这些命令编写起来都非常easy。在提高工作效率方面非常好帮助,由于一些经常使用的费时的操作每天反复N次。让人非常厌烦,假设可以使用脚本将其自己主动化起来。岂不是就把自己给解脱了?

  5. 多语言编程。在这个世界有太多太多的编程语言,但凡略微流行的编程语言都有自己独特的优势,而我们要善于利用每种编程语言的特点。而不是整天吵闹那种语言更强大。我自己熟悉C#、java语言。也用JavaScript、Ruby、Python、Groovy做过一些东西,甚至为了理解函数式编程还专门学习了Haskell语言。这些语言都给我带来了有用的效果。

    比方我用Ruby写了一个插件,能够自己主动把我主站上的博客同步到博客园中的博客来。

    我使用Groovy给我的Java代码写单元和集成測试。比使用Java语言编写要快非常多。

    我用Python和WebDriver写了一个论坛灌水工具来刷积分。你掌握的语言越多,你的视野就越广,你对编程的理解就会越深入。当然我不赞成盲目的求多,至少你要有2到3门精通的语言,从语言语法、语言执行时、语言特性、语言API等方面都要有深入学习和见解,当你再学习其他语言时也不会浮于表面的了。

  6. 这是最重要的一点。时刻保持一颗好奇心。一颗坚定不移的提高工作效率的决心。非常多人都抱着差点儿相同态度,心想“我虽不是标准指法,敲键盘速度也差点儿相同”,“我IDE快捷键用的不多,也没认为那里影响到我开发”,“我仅仅会C#一种语言。还不照样干到如今了吗?”之所以有这样的想法,是是由于你没有见到真正高效的人。我曾看到某IT界牛人那出神入化的VIM操作,简直已经超越了指哪打哪的境地,已经达到了键随心动的境地。

    我也看到某高级程序猿使用IDE快捷键三下五除二就把一段丑陋的代码给收拾的服服帖帖。耳濡目染之下让我坚定了这个决心。不做差点儿相同先生。所以平时我和同事一起工作时,就留心他们有哪些方法和工具来提高自己的工作效率。假设他们使用了一些好用的快捷键而我不知道,那我就会记下来下次自己用(快捷键熟练程度上我早已是我们项目组的number
    one)。

    假设看到他们使用了一些好的工具我也会立刻回去下载下来自己用。(比方前两天我看到同事使用SuperPutty来连接远程主机,其支持多tab方式,这正是我想要的功能。我回去立刻下载下来,抛弃了曾经的Putty)这样时间长了,集众人之所长,你自然也成为效率达人了。

要我追崇高效率?我觉得最大的好处是让我的大脑从繁重的重复劳动中解放出来,因此,它可以专注于更有价值的思考值事情。而不是干扰一些噪音。

时间: 2024-10-14 09:30:21

代码农民提高生产力的相关文章

[每天一个知识点]23-软件工程-有什么必要要提高生产力

不管是主管还是员工,都一直口口声声要提高效率提高生产力,实际上效率几乎没有可以看得见的提升.原因有很多,今天单拿一条来说,提高生产力之后给员工带来了什么好处.任何的效率提升,无非改变的是减少等待时间.减少交互时间,对于信奉西班牙人理论的项目经理们来说,是员工有了更多的剩余价值可以压榨剥削了,而绝不会说效率提高了50%那么下班时间就可以从晚上22点提前到下午18点,提高的永远是单位时间内的效率,而非减少工作时间.在这个前提下的任何改进,都不会有实际的效果(也许会有形式上的效果).

雷观(十五):提高生产力和程序员价值的2种方法

Web项目,尤其是Web管理系统,被很多程序员认为没有技术含量.这种项目,主要功能就是增删改查,尤其是查询方面,更是多种多样. 因为这种项目本身的业务就是简单的CRUD,没有太多复杂的业务逻辑.然而,CRUD这种功能却又是最基本的功能,如果只是复制粘贴修改,程序员和建筑民工没啥区别了. 建筑民工本身就是体力+简单的智力,高级的建筑工人会有自己的一套建筑方法,做起事来高屋建瓴,井井有条. 低级程序员-码农也是体力+简单的智力,高级程序员除了知识比较广比较深外,更主要的他们能够避免重复的劳动,提高生

1.3 用函数式编程提高生产力

很多人觉得函数式编程优雅或甚至是漂亮,但这很难成为在商业环境中使用的一个好理由.优雅不能当钞票,真的不幸.用函数风格编程的主要原因是让你和你的团队工作更高效. 在本节,我们将看到函数式编程带来的主要优势,解释它是如何解决一些现代软件开发最重要问题的.在探索具体的好处之前,我们先宏观地来看一下.函数式编程并未严格界定,因为函数式思想可以有不同的形式. 1.3 用函数式编程提高生产力

降低成本,提高生产力—8句话讲清RPA的部署

如何提高生产力同时降低成本,是企业在深入发展中所面临的挑战.RPA(机器人流程自动化)的出现,可以帮助企业提高业务流程效率,实现创新发展.RPA机器人模拟人类的操作方式,通过用户界面与应用程序交互,遵循简单的规则做出决策并执行常规业务流程,企业也无需为此改变原有IT架构或重新设计基本流程. 但RPA的部署与实施绝非一蹴而就.如果在没弄清各方问题而仓促实施的话,可能会给企业带来更多的问题,甚至部署失败.为了高效.成功的部署RPA,同时最大限度的发挥其功效,企业在规划RPA部署时,应该着重考虑以下8

深受程序员喜爱的4款Web开发工具,可极大的提高生产力

对于开发人员而言,时间始终是稀缺资源. 从严格的最后期限到多个项目——到出乎意料的需求——我们的时间总是有需求的.因此,我们一直在寻找有助于提高生产率的工具和流程. 接下来小编就将介绍4种Web开发工具,希望它们能够给身为程序员的你带来一定的额外生产力. 一起看看吧 一.通过Oh My Zsh掌握命令行 Windows和OS X的默认命令行界面(命令Prompt和Bash)可能令人生畏且难以自定义.如果你不是这方面的专家,你可能会重复那些可以自动完成的琐碎工作. Oh My Zsh是一个基于Zs

如何提高生产力(一) -养成交换的习惯

最近集团董事长在自己的朋友圈看到其他老板在晒自己公司的微信平台,这年头公司没有一个微信平台,都没脸见人,董事长马上要求要有我们要整一个微信平台,把企业网站上的内容搬过去,我知道这个东西,搭架子容易,要是做的漂亮专业,满足大领导的奇葩的审美,还得找专业公司做.我马上调研了几家本地的移动平台开发商,选中了一家,报价一万多,云后台,管理后台有很比较好的的模版支持,基本满足要求.结果经理不同意,很单独通知人力,要招聘一个能开发企业网站和微信网站的人,人力不会写招聘要求,又转到我手里,让我帮忙写.我当时差

如何提高生产力

最近集团董事长在自己的朋友圈看到其他老板在晒自己公司的微信平台,这年头公司没有一个微信平台,都没脸见人,董事长马上要求要有我们要整一个微信平台,把企业网站上的内容搬过去,我知道这个东西,搭架子容易,要是做的漂亮专业,满足大领导的奇葩的审美,还得找专业公司做.我马上调研了几家本地的移动平台开发商,选中了一家,报价一万多,云后台,管理后台有很比较好的的模版支持,基本满足要求.结果经理不同意,单独通知人力,要招聘一个能开发企业网站和微信网站的人,人力不会写招聘要求,又转到我手里,让我帮忙写.我当时差点

用block做事件回调来简化代码,提高开发效率

我们在自定义view的时候,通常要考虑view的封装复用,所以如何把view的事件回调给Controller就是个需要好好考虑的问题, 一般来说,可选的方式主要有target-action和delegate,以及这次要强烈推荐的block. target-action和delegate方式有个很不方便的地方,就是配置代码和action代码不在同一个地方,你肯定要多写一个selector方法或者delegate方法,这就带来一个问题,一旦代码比较长或者selector方法比较多,找起来就很不方便.

用php写一个管理外借设备的小工具--技术提高生产力

我学网站编程属于半途出家的类型,本是搞运维的,进了现在的公司后意识到学习一门编程语言的重要性,便从平时的工作时间里抽出部分来做学习和练习. 公司做技术的都是属于编程出身的,从网站设计到手机程式设计,好像大多数的人都在走这样的一条道路. 公司的部分业务是做手机游戏开发的,测试设备也越来越多,管理权归我们运维两个人所有,一直以来都是用个小笔记本做外借的登记,每天都有不同的测试人员过来借设备,ipad,iphone,android机,借了又还,还了另外一个人过来借,不用多久,那笔记本已经累积到厚厚的一