• 生活小妙招免费各类生活中的小问题知识以及音乐简谱等,是你了解世界未知知识的好地方。

对程序员来说最难的是写代码吗?

十万个为什么 空空 2024-4-03 22:58:02 7次浏览

关于问题对程序员来说最难的是写代码吗?一共有 5 位热心网友为你解答:

【1】、来自网友【一叶障目 0001】的最佳回答:

一般软件开发的过程包括需求分析,软件设计,编码实现,测试,交互,售后迭代。编码时间只占整个项目时间很少一部分。

最难的还是跟客户沟通各种需求,客户简单的一句话可能拆分开来会很是很大一块,比如客户说我想要一个系统把公交管理起来。这里面涉及到这个管理系统需要实现哪些功能,预算是多少,开发工期是多少,最后系统的操作方式是否能被客户认可,最后要提供多久的维护。这些与人沟通谈判的才是最复杂也最花时间的。至于这些都谈好了,剩下的都是水到渠成。只需要一些程序员按照预案把代码写出来就行了。

就像盖一个大楼,最难的永远不是搬砖,码砖

【2】、来自网友【摇椅小琦】的最佳回答:

对资深程序员来说,一万行代码一天就能码完,写代码是最没技术含量的事情。

对程序员来说,最难的是理解需求,把自然语言转成数学语言的过程,术语叫作形式化,早期程序员需要直接对接用户,花很多时间与用户沟通,把用户要求的功能性能抽象出来,整理整个系统的数据字典。现在很多公司这部分工作交给产品经理了,是好事也是坏事,程序员就很难成长跨越成老板了。

其次难点是系统架构,包括通信协议,结构分层,软件复用以及算法这些,一家公司总需要有人做这件事,但可能也只需要一个人来做,一般是技术总监。

【3】、来自网友【IT 人刘俊明】的最佳回答:

谢谢邀请!

对于不同阶段的程序员有不同阶段的任务,所面临的难点也并不相同,但是对于程序员来说,代码本身的难度只在学习的初期有所体现,随着编程经验的增加,代码本身的难度会逐渐下降,因为编程语言本身就是工具,只要多使用必然会越来越熟练。

通常情况下,编写代码的难度体现在以下几个方面:

第一:算法设计和实现。

编程的核心问题是算法问题,编程问题说到底就是个数学问题,这就是为什么很多人认为编程难的原因,难在算法上而不是在编程语言本身上。算法实现还涉及到数据结构的应用,所以编程也被认为是算法设计加数据结构。算法设计和数据结构涉及到程序的执行效率,这对于大型系统来说尤为重要。对于研发级程序员来说,通常需要具备扎实的数学基础。

第二:架构的选择。

架构设计、模块化、数据交换、资源规划、分布式处理、并发处理等问题是程序员面临的又一个难点,相对于算法来说,这部分难点需要大量的经验积累和对技术本身的深刻认知,所以往往架构师都需要有丰富的实践经验。如果说算法解决的是核心问题,那么架构解决的就是整体协调性问题。如果把算法设计看成是优秀的球员,那么架构设计就相当于教练员,只有有效的配合才能取得好的成绩。

第三:技术验证和调试。

研发人员重要的任务是验证,验证技术是一个漫长且复杂的过程,要模拟出实际的应用场景,然后通过不同的方案设计来验证执行效率,这通常也是一个比较难的工作。技术验证和调试需要一个团队的配合,一个技术的验证过程往往有众多经验丰富的技术专家来进行,所以这是技术含量比较高的工作之一。

程序设计工作是一个门槛相对较高的职业,通常情况下,程序员在整个职业生涯的过程中也需要不断的学习。

作者简介:中国科学院大学计算机专业研究生导师,从事 IT 行业多年,研究方向包括动态软件体系结构、大数据、人工智能相关领域,有多年的一线研发经验。欢迎关注作者,欢迎咨询计算机相关问题。

【4】、来自网友【陕西文都智链】的最佳回答:

大多数非程序员认为软件开发是非常困难的,但是却不是最难的,在这里给大家呈现 9 个程序员“难事”,如果你也从事软件开发,哪个是你的痛点?

1.选择最佳解决方案

给你一系列需求,要求设计和构造技术上的解决方案,这包括了设计的结构搭建,算法,逻辑封装等等,还要考虑用户的安全性能。

难点:设计的产品满足客户需求,让客户认为合理,在项目的时间允许范围内。

2.写测试任务描述

编写单元测试,确保代码中每一部分的功能正确。这样做可以尽快发现 bug,让后续的测试变得更加便捷。

难点:枯燥乏味,让人觉得在做多余的事情。

3.编写文档

说明你代码的含义并详解应用的工作原理,为了让更多人理解你的代码,这里包括独立的文档文件和代码注释。

难点:编写文档非常耗时,如果没有人看那就是浪费时间,相比于写文档,程序员更爱写程序。

4.实现开发人员并不认可的功能

在工作中,客户会要求实现一些并没有用的功能,你不得不实现,尽管它们并不是你的本意,甚至觉得不应该出现。

解决方法:甲方说什么就是什么,把时间和精力专注于客户提出的要求上。

5.维护他人代码

维护调试别的程序员写的代码。

难点:理解前任开发者的意图,前任开发者是如何设计这些代码的,如果这个代码写的很差,也没有注释和文档,那就很糟糕了。

6.互相沟通

作为程序员,沟通也是非常重要的,从客户那得到需求,给经理提交报告,和测试一起工作等等。

难点:你需要与别人进行技术上的沟通,当你和 QA 或者其他工程师出现不同意见,沟通就非常重要了。

7.预估项目工期

项目一开始,就要大概预估多久可以完成。

难点:一般情况下你是从来没有做过这个项目的,你只能基于模糊的需求来估算结束的日期,还需要给意外情况分配时间。

8.解释工作

向周围的朋友,家人解释你的工作内容。

痛点:当别人知道你是程序员的时候,第一句话永远都是那你会不会修电脑。你的亲人可能不理解你在做什么,而且还要不断的被问及计算机的相关知识。

9.程序命名

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

难点:命名并不是随便起一个就可以,需要想出合适的,简洁的名称,想一个可能很简单,想多个就比较麻烦了。

【5】、来自网友【极客宇文氏】的最佳回答:

谢邀。我是一名 Java 后台开发,还是一名工作没多久的“码农”。写代码作为工作的一部分其实不算难,甚至程序员写代码的时间比其他事情花的更少。我就分享一下咱们 Java 后端开发的小体会吧:

初级程序猿大部分都是写增删改查的业务代码,增删改查最需要技术含量的是查,归根结底都是写 SQL 语句,有的业务逻辑复杂一点就 SQL 语句复杂一点,或者数据库里不好处理就在 Java 代码里处理。只要数据库学的还行,MySQL 比较会用,Java 功底有一定基础,基本上都能胜任敲代码的工作。

文|热心哥哥宇文笑

业务复杂

,有的系统尤其是一些 toB 的系统,比如一个上市公司的超市人力管理系统,这是非常复杂的,人事组织,薪资社保,还要针对不同地区分公司不同类别的员工进行不同的代码处理。

需求变动频繁

,有些项目的顾问或者产品经理没把控好,导致需求被客户拖着走,搞产品的可能觉得也就变化一点点东西,实际上有的功能代码需要后端重写,数据库的表结构一变,那改动也是得跟着变。咱们敲代码的朋友最不喜欢的就是返工,我们宁愿去接受更多的开发新任务也不想再去重写自己以前写的代码。(不用说什么重构,这些业务代码重构其实并没有什么技术上的突破)

代码优化

,其实比较难得住人得,尤其是难住我们这些刚入行的程序员。有的业务数据量庞大,就得先考虑数据库优化,代码多线程优化,总之优化代码倒是一件比较进阶的拆事,比敲代码难。

来说说,作为程序员的你,最难的什么呢?

以上就是关于问题【对程序员来说最难的是写代码吗?】的全部回答,希望能对大家有所帮助,内容收集于网络仅供参考,如要实行请慎重,任何后果与本站无关!

喜欢 (0)