开发者资讯

 首页 > 开发者资讯 > 程序员生活 > 细数被程序员吐糟的9大困难

细数被程序员吐糟的9大困难

分享到:
【字体:
导读:
           本文是PHP100中文网原创翻译,转载请看文末的转载要求,谢谢合作! 那些非程序员认为软件开发是非常困难的,确实如此,但这种困难不像那些外行人理解的那样。最近在Quora上的一次讨论,程序员分享了他们认为工

 

 本文是PHP100中文网原创翻译,转载请看文末的转载要求,谢谢合作! 


       那些非程序员认为软件开发是非常困难的,确实如此,但这种困难不像那些外行人理解的那样。最近在Quora上的一次讨论,程序员分享了他们认为工作中的最大困难,在这里为大家呈现出其中的9个。你可以看到,写代码并不是最难的事情,如果你也在从事软件开发,看看哪些内容你认为也是很难的。

 


 

1. 设计解决方案

任务描述:给你一系列的需求,你被要求设计和构造技术上的解决方案。这包括了设计数据结构,算法,逻辑上的封装等等,还要考虑到用户安全方面的因素。

挑战:确保你的设计可以满足客户需求,让客户认为合理。当然还要在项目时间允许范围内。

 

2. 写测试

任务描述:写单元测试,确保代码中每一个小部分的功能正确。这样做可以让你尽早发现bug,让你后续的回归测试变得更容易。一些开发的方法论甚至鼓励开发者在编写程序之前就可以写好测试程序。

挑战:为每一部分进行测试是一件很枯燥乏味的事情,让人感觉是在做多余的事情。

 

3. 编写文档

任务描述:撰写文档,说明你代码的含义并解释应用的工作原理。这包括了独立的文档文件和代码注释,让更多的人理解你的代码。
 

挑战:这是一件耗时的工作,如果没有人去读它们的话就是纯属浪费时间了。相比于写文档,程序员还是更爱写程序。(注释和文档很重要,PHP100曾告诉过你不要这样注释你的代码)

 

 

4. 实现那些你不认可的功能

任务描述:有时候你会不得不去实现一些功能和特征,它们不是你的本意,你觉得它们不应该出现在这个项目里,但是客户一定要坚持如此。
 

挑战:你需要抛开一切个人的感觉和意见,把时间和精力专注于客户提出的功能需求。

 

 

5. 维护他人的代码

任务描述:有时候你需要维护和调试其他程序员的程序,或一部分代码。

挑战:你需要用尽一切办法理解前任开发者的意图,他是如何设计的这些代码。特别是当这些代码写得很差,也没有注释和文档可以帮助到你时,那就很糟糕了。(所以你要使用工具是不是更好,PHP100推荐给你6个好用的Web开发工具)

 

6. 与他人打交道

任务描述:作为开发者,你要从客户那里得到需求,向经理提交报告,和测试人员一起工作,更要和其他工程师讨论项目。

挑战:你需要向外行人解释技术上的事情,有时候你的工作会依赖于他人的认可或辅助。期间也会出现你和QA人员或其他工程师有不同意见的时候。

 

7. 预估项目工期

任务描述:项目一开始的时候,你要预估这个项目的完成需要多长时间。

挑战:一般情况下你要预估的是一个你之前没有做过的项目,而且你只能基于那些模糊的需求,再给未来可能发生的问题分配些时间。


 

8. 解释我的工作

任务描述:向周围的非程序员朋友,家人,同学解释你的工作是在做什么,不做什么。

挑战:你爱的那些人可能不理解你在做什么,而且你还不断的被问及计算机相关的一切问题。

 

9. 程序中的命名

任务描述:想出一些名字,为你程序中的变量、过程、函数、类、对象、数据库等命名。

挑战:即使是很小的程序或应用都需要给很多东西命名,你要想出那些适合的,简洁的,可以表达正确含义的一些名字。(PHP100曾经告诉过你如何给程序中的变量起个好名字)






原文:http://www.itworld.com/article/2823759/enterprise-software/124383-Arg-The-9-hardest-things-programmers-have-to-do.html
译文:http://www.php100.com/html/it/focus/2014/1126/7908.html
(翻译:PHP100_Zeroing)

分享到:
优秀程序员与普通码农的区别
       现在深深的体会到,不仅仅人与人的差别是巨大的,程序员与程序员之间的差别同样是很明显的。        普通的程序员仅仅是完成自己的任务,完成任务后不思进取,不再修改自己的代码,不再去想有没有更好的实现方式,其实重构自己的代码真的是一件很重要的事情,他们完成任务,满足于现状,或者仅仅只是为...
一张神图为你展现程序员一天的生活
       无论你在开发领域是何种职位,不管是首席黑客官还是代码魔术师,或者就是普通的软件开发人员,你的一天生活都基本上和下图展示的是一样的。如果说有什么不一样,也就是把红牛换成了咖啡或其他咖啡因饮料,然后可能会骑着滑板车上班。但有一点可以确定,一天中的大部分时间你都在与代码打交道。你可能在用Angul...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……