大多数非程序员都认为软件开发非常困难,这是事实,但是这种困难并不是外行所理解的。
在最近关于Quora的讨论中,程序员分享了他们认为是工作中最大的困难。
这是其中的9个。
如您所见,编写代码并不是最困难的事情。
如果您还从事软件开发,请查看您认为困难的部分。
1.最佳解决方案是什么?任务描述:为了给您带来一系列要求,要求您设计和构建技术解决方案。
这包括设计数据结构,算法,逻辑封装等,并考虑用户安全因素。
挑战:确保您的设计能够满足客户需求,并使客户认为这是合理的。
当然,它必须在项目时间范围内。
2.编写测试任务说明任务说明:编写单元测试以确保代码的每个小部分都能正常运行。
这样做将使您能够尽快发现错误,并使以后的回归测试更加容易。
一些公司甚至鼓励开发人员在编写程序之前先编写测试程序。
挑战:测试每个零件是一件很无聊的事情,感觉就像在做不必要的事情。
3.编写文档任务描述:编写文档,解释代码的含义并解释应用程序的工作原理。
这包括独立的文档文件和代码注释,使更多的人可以了解您的代码。
挑战:这是一项耗时的任务,如果没有人阅读它们,那将是浪费时间。
与编写文档相比,程序员仍然更喜欢编写程序。
4.实现您不认可的功能。
任务描述:有时您将必须实现一些功能。
他们不是你的意图。
您认为它们不应出现在该项目中,但客户必须坚持这样做。
。
挑战:您需要撇开所有个人感受和意见,将时间和精力集中在客户提出的功能要求上。
5.维护其他人的代码任务描述:有时您需要维护和调试其他程序员。
程序或部分代码。
挑战:您需要尽一切可能去理解以前的开发人员的意图以及他如何设计代码。
特别是当代码编写不当,并且没有注释和文档可以帮助您时,那就太糟糕了。
6.与他人打交道。
任务描述:作为开发人员,您必须从客户那里获得需求,向经理提交报告,与测试人员一起工作以及与其他工程师讨论项目。
挑战:您需要向外行解释技术问题。
有时,您的工作将取决于他人的认可或帮助。
有时您会与质量检查人员或其他工程师有分歧。
7.预计项目工期。
任务描述:在项目开始时,您必须估计完成该项目需要多长时间。
挑战:在通常情况下,您需要估计的是您之前从未做过的项目,并且您只能基于这些含糊的要求为将来的问题分配一些时间。
8.解释我的工作描述:向非程序员的朋友,家人和同学解释您在做什么和不做什么。
挑战:所爱的人可能不了解您在做什么,并且不断地向您询问与计算机有关的所有问题。
9.在程序中命名变量和函数的任务。
任务描述:给出一些名称,并为程序中的变量,过程,函数,类,对象,数据库等命名。
挑战:即使是小型程序或应用程序,也需要命名很多东西。
您必须提供合适,简洁和正确的名称。
免责声明:本文内容经21ic授权后发布,版权归原作者所有。
该平台仅提供信息存储服务。
本文仅代表作者的个人观点,并不代表该平台的立场。
如有任何疑问,请与我们联系,谢谢!