`
sunxboy
  • 浏览: 2832073 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

有助于你编程而立即要做的10件事

阅读更多

【IT168 技术文档】 我们一直努力又努力去掌握那些对于我们来说是全新的东西。那么,我们做什么来帮助学习?下面是一个关于如何使你编程更迅速合理的10件事情的列表。我更习惯与使用Ruby on Rails,但下面的观点也适用于其他环境。

  1.升级单元测试

  你的编程没有测试?你应当随时进行测试,即TATFT ( testing all the fucking time )。当然你应当选择比仅是单元测试更好的方式。RSpec和Shoulda是两个可以选来使用的工具。

  2.试用TDD

   既然你在测试,那你就应当记录下这些测试。不要记录代码并用后来的测试覆盖它,而应当是方法的记录。TDD ( Test Drive Development ) 可以使你编出更好的代码,TATFT最重要的基础就是 TDD。进行TATFT并不难,首先你写下你所能做的最简单的测试并运行,观察测试的失败,然后写出执行语句以便使测试通过,不停地重复这样的过程就可以 了。

  3.自动化部署

  自动化是你最好的朋友,想要实现自动Capistrano是相当好用的工具。在你配置部署好你的项目后,第一个要装的东西就应当是Capistrano。从第一天起就可以自动化部署将会节约你大量的时间。

  4.安装 SCM

  安装 SCM并学习使用它,这样做的好处是可以使那些超重的库中的代码不再那么冗繁,目前有大量的工具可以选择,我每天使用的是Git。Git是一款很特别的分布式SCM,即DSCM。DSCM是很有前景的,它可以同有其他库的用户们协同工作。

  5.审查持续集成

  现在我们已经测试了代码并将其安全的存放在库内。比起不停地测试,什么是更好的方式?自动测试是个不错的选择。很感激有cruisecontrol.rb的存在,这个应用工具自动运行了那些琐碎的测试。

  6.了解你的代码

  写代码是一回事,但是更重要的事情是了解代码。可以用四种自动化工具来帮助你了解代码:flog、 tarantula、rcov 和saikuro。这些工具分别有其独到之处,我很乐意向你介绍它们。

  Flog,可以按字母排列的顺序来记录复杂的结果。

  Tarantula,根据相关性原则和一些灵活的创意设计的。它所做的是spider 你的Rail应用以便去搜索坏链接。这真是令人得到解脱,使我受益匪浅。

   Rcov,这是一个在Ruby界相当受欢迎的工具。它是一个C0范围工具,换言之,它精确的测定出你的代码中哪些部分在被测试,哪些部分没被测试。唯一 的缺陷是它不能测试诸如:“if condition_a && condition_b || condition_c”. 这样的语句。

  Saikuro,可以测量出你代码环的复杂性,即可以计算出你代码branche 和path的数量。当然你代码的复杂性越低,它运行的越容易。

  7.升级你的Fixtures

   Fixtures 是看起来很有创意的事物之一,但有诸多的弊端。对于Fixtures,只有极少的替代,我选择使用Rails Scenarios,原因是它在测试中工作起来像Fixtures一样,但是允许我做比YAML更好的DSL。我也可以在一个文件内指定多重的 Scenarios,这将使事情变得更有组织性。

  8.收集分析对象

  在Rail平台上搭建新的系统。每周都会有新的监控工具出现,这样我们有很多的选择,在这里我介绍我已经使用过的工具:HopToad 和 TuneUp。

  HopToad对于异常报文有不错的能力,它可收集间断应用并用简便的方式显示收集结果。还有,这是一个免费软件~

   TuneUp用另外一种方式获取数据,它计算每一处分别花费多长时间去组合自身。你的页面是不是花费了很长时间去组建?但你又不知道是因为什么缘故花费 了这么久,使用TuneUp来查一下吧,你会发现一些你以前从未想到过的事情。另外,TuneUp是一款开源软件,你可以登陆进他们的托管服务分享你的结 果。

  9.阅读其他人的代码

  你想成为更优秀的程序员吗?那一定要多读代码,这包括好的、坏的、你自己的、其他人的代码等。阅读代码是一项很多程序员都不重视的技能,但其实能够快速阅读他人的代码并理解其中的含义是一种极其需要的能力。

  10.写博客的习惯

  就我个人来说,当我阅读博客的时候我可以找到所有的信息。大部分时候我是会撰写跟技术相关的要点,偶尔讨论点轻松的话题。写博客是出于分享的原因,你可以写下能够帮你节约时间的技术技巧,也可以是一些你想要记住的技术难点和命令之类。

分享到:
评论

相关推荐

    Windows Phone 7游戏高级编程:使用XNA Game Studio 4

    书中清晰的讲解和丰富的代码示例有助于你深刻理解Windows Phone 7设备,使你能够立即开始创建自己的游戏。 主要内容 ◆ 包含3个完整的游戏,并就如何将自己的游戏发布到Windows Phone 7 Marketplace提供了极有帮助的...

    LINUX命令、编辑器与SHELL编程PDF.part01

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程PDF.part02.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    CruiseYoung提供的带有详细书签的电子书籍目录 http://blog.csdn.net/fksec/article/details/7888251 该资料是《Oracle SQL高级编程》的源代码 对应的书籍资料见: Oracle SQL高级编程(资深Oracle专家力作,...

    你需要立刻突破的十大编程禁忌

    从错误中不断的学习,锻炼好的行为习惯有助于事业上的稳定。程序员在编程的时候难免会犯错误,但如果不从错误中吸取教训,那么习惯成自然,你会经常犯错的。从错误中不断的学习,锻炼好的行为习惯有助于事业上的稳定...

    MFC网络编程之自制浏览器

    网络编程,当然要用到Windows Socket(套接字)技术。Socket相关的操作由一系列...因此,建议初学者学习编网络通信程序时,暂且不要用MFC提供的类,而先用Winsock2 API,这样有助于对异步、非阻塞Socket编程机制的理解。

    LINUX命令、编辑器与SHELL编程.part10.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part05

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令编辑器与SHELL编程(中文)01

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part03.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part04.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part11.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part12.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part08.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part07.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part09.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    LINUX命令、编辑器与SHELL编程.part06.rar

     大量练习将有助于提高读者的动手能力并获得自信心;  介绍了如何使用Apt、yum和BitTorrent自动更新系统;  还介绍了gawk、sed、find、sort、bzip2和正则表达式等内容。 内容简介要想真正高效地使用Linux,就...

    编程开发+PHP系列课程+项目实战+系列课程

    课程分为三个精心策划的部分。...无论您是初学者还是有经验的开发者,本课程都将为您提供宝贵的知识和技能,助您在PHP领域取得成功。立即加入我们,开启您的PHP学习之旅,与全球PHP社区共同成长!

Global site tag (gtag.js) - Google Analytics