对于程序员来说写代码并不是最难的事情!

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

1,怎样才是最佳解决方案

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

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

2,写测试任务描述

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

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

3,编写文档

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

挑战:这是一件耗时的工作,如果没有人去读它们的话就是纯属浪费时间了。相比于写文档,程序员还是更爱写程序。

4,实现那些你不认可的功能任务描述

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

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

5,维护他人的代码

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

挑战:你需要用尽一切办法理解前任开发者的意图,他是如何设计的这些代码。特别是当这些代码写得很差,也没有注释和文档可以帮助到你时,那就很糟糕了。

6,与他人打交道

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

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

7,预估项目工期

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

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

8,解释我的工作

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

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

9,程序中变量函数的命名

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

挑战:即使是很小的程序或应用都需要给很多东西命名,你要想出那些适合的,简洁的,可以表达正确含义的一些名字。

本文来自企鹅号 - 玩转嵌入式媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏杨建荣的学习笔记

一句玩笑之后的思考(r6笔记第68天)

今天在微信上碰到某大师,简单聊了下。我和这位大师的关系也蛮有趣,最开始通过其他的渠道认识,还没有见过面,我向他推荐了我的一名前同事,没想到这位大洋彼岸的前同事竟...

2775

我们如何在大数据时代构建更智能的搜索引擎?

看起来,创新似乎来自意想不到的地方(毕竟,如果它来自预期的地方,那它会被称为创新吗?)。如今,许多事情已经聚集在一起,将搜索及搜索引擎置于全新的角度,来自意想不...

1371
来自专栏AI科技评论

独家丨基于规则和检索的聊天机器人引擎

AI 科技评论按:本文作者王海良,呤呤英语开发总监,北京 JavaScript/Node.js 开发者社区的运营者,曾就职 IBM 创新中心。本文为系列文章第二...

3718
来自专栏数据结构与算法

20:话题焦点人物

20:话题焦点人物 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB描述 微博提供了一种便捷的交流平台。一条微博中,可以提及其它...

2759
来自专栏Python小屋

Python计算信息熵

信息熵可以用来判定指定信源发出的信息的不确定性,信息越是杂乱无章毫无规律,信息熵就越大。如果某信源总是发出完全一样的信息,那么熵为0,也就是说信息是完全可以确定...

3004
来自专栏域名资讯

编程猫融资1.2亿 启用域名codemao.cn

少儿编程平台编程猫近日完成了1.2亿元人民币B轮融资,本轮融资由高瓴资本领投,清流资本、清晗基金跟投,天使轮投资者猎豹移动继续跟投。今年5月,上市公...

3680
来自专栏小巫技术博客

关于《代码大全2》那点事

522
来自专栏BestSDK

谷歌发布Poly API,直接在VR中寻找3D资源

Poly是一个免版税的3D对象和“场景”库,开发者可以将相关内容应用至VR或增强现实应用,游戏和其他程序。谷歌希望为创作者提供填充世界的3D对象,从而提高他们的...

3145
来自专栏电光石火

mysql替换某个字段中的某个字符

Msql里面的某个表的某个字段里面存储的是一个人的地址,有一天这个地址的里面的某个地

1736
来自专栏一名叫大蕉的程序员

给大数据入门小伙伴的几个小挑战No.28

我是小蕉。 子曰:视其所以,观其所由,察其所安,人焉廋哉?人焉廋哉? 子曰:不患无位,患所以立;不患莫己知,求为可知也。 ---- 今天突然神来之笔,有小伙伴...

17610

扫码关注云+社区