计算机程序员的工作内容有:
1、负责软件项目的详细设计、编码和内部测试的组织实施;
2、协助项目经理和相关人员同客户进行沟通;
3、参与需求调研、项目可行性分析、技术可行性分析和需求分析;
4、熟练掌握交付软件部开发的软件项目的相关软件技术;
5、负责相关技术文档的拟订。
计算机程序员的招聘条件是:1、21至28周岁;2、具备良好的沟通合作技巧和团队合作能力;3、能独立承担计算机后台程序的开发工作;4、品行端正。
最近几年要说哪个领域最火,无疑是互联网领域,而随着互联网的火热,伴随而来的也是相应的互联网职位的火热,比如炙手可热的程序员和产品经理(或者叫程序猿和产品汪)。我也是一个刚入行不到三年的菜鸟程序员一枚,大学学了四年计算机,毕业以后就一直在写程序。就像很多人说的那样,大部分时间似乎是在为了实现产品经理的需求而写程序,于是程序猿和产品汪之间那些相爱相杀的事情,我也基本都能体会一二。
如果按照主流的做法,作为程序猿王国里的一猿,我应该挥舞起长矛大刀对产品经理口诛笔伐一番,但是这里我却丝毫不想去为了黑而黑,而是一反常态,从自己的角度来谈谈,作为程序员,我们应该从产品经理那里学到些什么能力,而这些能力,程序员往往做得不够好甚至可能是欠缺的。
1、文案能力
对的,没错,就是文案能力。程序员最擅长的是写代码,用文字符号来清晰地表达程序的运行逻辑,简简单单的ifelse、for就能表达很多复杂的运行逻辑,时间久了,对于母语的表达能力渐渐下降,写个注释往往都能词不达意。更何况现在代码风格指南都在强调好的代码不需要注释,于是程序员越来越少写自然语言了。
2、沟通能力
据我的观察,画原型图只占据了产品经理工作时间很短的一部分,剩余的大部分时间是在和老板、开发、设计、测试沟通,推进产品的一次次迭代。所以,在一个程序员眼里,产品经理是要协调各方一起推进产品上线的角色,如果有人对需求产生了认知上的偏差,产品经理是要负很大一部分责任的,至少说明产品经理的沟通没做到位,而这样的产品经理大部分都被辞退了,因为出现沟通问题最严重的后果就是上线延期甚至产品失败,一个产品的失败是对产品经理最大的否定。
总之,产品经理绝不是埋头苦干的原型画家,要去关注外界、关注他人,平衡各方利益并且化解冲突。沟通,本质上也是权衡与妥协的艺术。我看到的和遇到的产品经理,沟通能力普遍都是很好的,至少大部分都不输于程序员。
3、整体思维
现在稍微有点规模的互联网公司都会把各个业务或者功能进行细分,很多程序员往往会专注于自己的业务和细分领域。精细化分工,是现代社会发展出来的一个高效率生产方式,对提高公司的竞争力是大有好处的。但是这有一个负面的影响是,很多程序员往往过于专注自己的一亩三分地,不太关心甚至忽略了整体的存在。
4、总结
一个好的产品经理其实绝不止这些能力,而文案、沟通、整体思维这些能力是我所观察到的作为产品经理最容易被放大和辨识到的能力,也是多数比较容易被程序员忽视的能力,程序员学习到产品经理身上这些最容易被观察到的特质,对程序员本身来说是一个非常好的进步的过程。所以,程序员,请多看看产品经理发给你的文案,是不是比你自己写的更友好,逼格更高?北大青鸟建议多观察产品经理是怎么说服大家接受需求变动的,如果换作是你,你能安抚大家的小情绪吗?多体会产品经理对产品设计和预期的宏观描述,再简单的功能也有它背后的逻辑和存在的意义。
问题一:程序员在公司都干什么? 当然是以开发、编写程序为主,但各个公司的具体工作内容不完全一样。
以下是一些常见岗位职责:
如:销售、用户需求调研、编写代码、测试、系统集成和安装、编写用户 *** 作手册、开拓新市场,等等。
问题二:程序员一般的工作都是干什么的? 程序猿一般从早到晚都在写代码,没有什么特别的了,你现在手机电脑上用的软件应用全部都是程序猿没日没夜制作出来的。
问题三:没开发经验的程序员刚进公司一般先做什么 先去适应公司的环境,和公司工作流程
我们经理经常说的一句话就是:“不适应这个环境,就要走人~”,其实应届生毕业进公司首先要学会谦虚,即使别人不懂而你懂得的东西,也要含蓄的表明,你也不太精通,不过千万不要谦虚过度了,
问题四:做什么职业,也别做程序员 程序员的快乐和痛苦:
编程是快乐的,也是痛苦的,这也将是第一篇用辩证的思维来探讨关于程序员人生的文章。大量的编程工作或许给你的生活带来了很多枯燥和痛苦,但是换个角度,程序员也应该是快乐的,这种快乐往往无法用言语表达,只
编程是快乐的,也是痛苦的,这也将是第一篇用辩证的思维来探讨关于程序员人生的文章。大量的编程工作或许给你的生活带来了很多枯燥和痛苦,但是换个角度,程序员也应该是快乐的,这种快乐往往无法用言语表达,只可意会,不可言传。那么编程会给程序员带来什么样的快乐呢?
1、成就感
“成就感”毫无疑问是程序员快乐的首要原因,编程是一件普通人无法完成的事,尽管很多软件项目都由一个团队小组共同完成,但是作为个人来讲,你在其中完成的工作就是个人劳动的一部分。一段代码、一个函数、一个模块、一个软件都是程序员自我实现的过程。成就感意味着自己做了一件了不起的事,做了一件非常有用的事,做了一件有价值的事,做了一件别人做不了的事。程序编多了,无论是编程的结果还是编程的过程,都会产生这种感觉。
2、被认同感
程序员原来对程序的无知、恐惧心理,通过大量的编程逐渐地克服了。程序员的自信心也逐步强大起来,而周围的同事往往比他自己先一步看到这种的进步,从而率先对他进行认同。尤其是原来自己初来乍到,水平、能力不能充分展示,自己内心也很着急,但是同事并不当回事,对自己不温不火的。随着工作的开展,自己的能力逐渐显示,同事也开始转变对自己看法,从各个方面或明或暗地表现了对自己的认同,这种认同往往会让程序员内心涌出一种满足感。尤其当程序员的上级甚至老板表扬自己工作成果的时候,这种被认同的感觉让人有一种飞上天的感觉。甚至用户对自己的认可都会让程序员倍感高兴。
3、团队氛围
程序员在成长中,一定会和其他程序员以及项目经理打交道。每个程序员和每个项目经理由于个性、能力、经历的不同与之交往的方式和结果都会不同的。随着时间的推移,程序员在这种不断的交往过程之中,增加了团队的意识,增加了软件中团队凝聚力。程序员在团队中一方面能够获得团队成员的帮助和支持,另一方面作为团队一分子,也在为团队整体作出贡献。每当一个项目在千辛万苦之后完工的时候,那种团队集体相拥的开心是难以言表的,有的男女甚至因此而结缘。也有个别程序员不能处理好和其他同事的关系,那工作起来就会感到很别扭。
4、技能熟练
在编程初期,程序员编起程序起来可以用“一步一个跟头”来形容,编程速度慢的不可想象。随着编程大量积累,程序员逐步找到编程工作流程和窍门,编程速度大大加快。到后来他们几乎到了“兵来将挡,水来土掩”的境界。原来要好几天要才能编好的程序,现在只要分分钟就摆平了。有时这种熟练程度连自己都会不敢相信的。
5、学生变老师
程序员开始的时候绝对是一个学生,干着干着学生变成了老师了,而后面进来的则当起了学生。当学生们问起自己曾经问过上一任老师的问题的时候,那种老师的优越感不由你不产生,不由你不认真去解答。有的甚至有主动教学的冲动。
6、扩大朋友圈
编程多了,自然项目就多了,项目多了,接触的人也多了,接触人多了,就会让程序员交友的机会多了,程序员在这个过程中,无论是和程序员同行、软件设计师、项目经理、上级主管、公司老板、用户、合作伙伴甚至是网友都会有所接触,许多程序员因工作需要经常在用户单位进行开发和维护和用户打交道机会很多,因此,会结交上用户朋友。在IT人员稀缺年代,有些用户对看中的程序员,常常会挖墙角,项目验收后,程序员由乙方变成了甲方。
说完了程序员的快乐,再来说说程序员>>
问题五:java程序员新手刚进公司都做些什么 刚进公司先看公司的编码规范,了解公司做什么产品,如何去熟悉业务流程
问题六:程序员刚进公司要做什么?? 1 看代码。
在学校里面接触到的项目,一般代码量比较小,而实际项目代码量要大的多。所以刚开始都会很不习惯,肯定要先看几天代码,习惯下大工程的开发模式。
2 接受培训。
有些公司会有新人培训。主要会介绍针对行业的一些知识。这些知识学校不会教,各个行业也都各有不同。
3 学习编程规范。
大多数公司对编程书写规范,包括格式,命名方法等,均有要求,这些在学校同样是不会教的。所以需要学习。
4 以上几项是基础,做好后,就会安排做一些简单基础的任务。常被称为”体力活“,一些简单重复性的基础代码编写。然后再从一点向外扩,直到整个项目。这个过程有可能需要几年甚至十几年。
问题七:程序员菜鸟进公司一般都做些什么? 给你一个效果给你做 或者小点的项目
问题八:程序员都干啥??? 其它公司不知道,我们公司的主要是开发和维护,开发就是写程序,如果是项目负责人可能还要和客户讨论需求、写文档、做数据设计等,维护就是针对出现的bug找到原因写程序打补丁。
问题九:程序员在公司是怎么样的,要做什么。请详细解答,谢谢 看你什么程序员了一般是项目经理给你分配任务,产品经理给你验货
问题十:程序员要具体需要哪些知识?到公司要做什么样的工作? 这都是看公司的,公司的业务领域不同,要求知识不同。
最普通的,要懂得程序语言,数据结构和算法,数据库,网络,和一些 *** 作系统的知识。
至于做什么工作,笼统础说肯定是编程,但职位之间有差别。无非写写软件,实现某个功能之类的。
在我眼里,也经常会把程序员分成两类:一种是我等这种写业务代码的程序员,另外一种是研究高深算法、造“轮子”的“科学家”
将他们称之为科学家是有些夸张,第一次冒出这样的想法是参加一个技术大会,当别的嘉宾都在分享开发、设计、架构、管理方面的经验时,一名在腾讯工作的算法工程师(应该已经是一个小领导了),他上台分享了一些诸如:滑动平均自回归模型、神经网络基因表达式编程、SVM回归机集成学习坐在台下的我第一次冒出这样的念头:“这是科学家研究的东西吧。”
当然,倒也不能说写业务代码就很 low,写业务代码也不是想象中那么简单的。
写业务相关的代码,必须了解业务流程,还需要了解业务人员心里是怎么想的,也就是业务出发点是什么样子的。
比如我最近遇到一个需求,过程大概是这样的:销售人员在卖一款产品,这款产品非常火,有些优秀的销售人员一周可能能卖出去几百上千单;结果我们接到一个需求,要限制每个代理人的销售数量,比如每人只能卖 10 个(之前已经卖掉的不算);这就让我们非常奇怪,本来卖的好好的,为什么要做这个限制呢?这个需求看起来就非常的不合理。
后来业务人员和我们解释了一下原因:因为这款产品公司不挣钱,销售人员为了推这个产品,花在别的产品上的时间就少了,所以出这个功能,就是让销售人员“收收心”,把精力放在其他产品上。
这么一解释,我们就立刻明白了;所以如果你不明白业务的时候,看着需求敲代码也是非常容易出错的。
有些人会认为业务逻辑就是一堆 if-else,但是我认为在实际工作中,这些 if-else 也是非常难做到的。
业务逻辑是人设计的,业务逻辑难不可怕,可怕的是它不严谨和变化快;业务逻辑和那些确定性的东西不一样,比如我们写好的代码 if-else 两个分支,那么再怎么也不会跳出这个范围,业务逻辑就不一样了,它是非常灵活的、不确定的,业务机会来的快消失的也快,我们很难开发出来一套全面的、完善的、灵活的的系统,去应对将来可能会发生的需求。
所以在开发过程中,如果可以将业务流程拆分成多个组件模型,组件和组件配合完成一个完成的业务流程;当业务发生变化或有新业务的时候,只需要重新编排这些组件,或对某一个组件做少量更改,就可以满足业务变化;如果能做到这个程度,也是非常不容易的。
在这个过程中,你需要做到高内聚低耦合,避免过度抽象,从业务流程和动机出发,已满足业务需要为主;既然做不了“科学家”,我们就努力把业务代码写好把。
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。
首先,我认为写业务代码不“low”,但是大部分不假思索拷贝粘贴的业务代码比较“low”,换句话说就是所谓的五年工作经验就是把第一年的工作重复了五遍。
技术人员成长一般有两条线,一条是成为技术专家,一条是成为领域专家。所谓的转管理我理解也就是领域专家,毕竟不懂得领域知识是无法做好管理的,比如说你是互联网金融某个业务部门的leader,那么你肯定要懂金融。领域知识就是在不断的写业务代码和思考中积累起来。
还有一个问题就是如何定义业务,比如说“实现一个修改订单功能”,这是一个业务需求,看起来很low,但是如果业务需求改成“实现一个修改订单功能,要求在有限资源的情况下并发10k,响应时间不高于10ms”,那这个需求就有挑战。说这个问题想说明白一件事情,如果做业务不要停留的在业务表面,仅仅满足于实现功能,要主动思考。
最后总结一下,没有最好的技术,只有最适合业务的技术。技术是内功,业务是招式,内功不足,后续成长乏力,没有招式,内功也不能发挥威力。这是也很多互联网创业公司做大了之后要技术转型的原因。
作为一个程序员,我也是写代码的,我不觉得写业务代码很low。
1首先大家所认为的业务代码就是一些和业务相关的增删改查,涉及到的技术点相对来说是固定的,写熟了之后,就是复制,粘贴,不存在什么技术阻碍,很多人就觉得非常的简单,没有技术含量,做这些工作的人也显得非常的low,如果你也是这样认为的,那你就错了,因为写业务代码的基本都是初级,中级的程序员,工作经验有限,不具备写一些公共方法和接口的能力,但是并不代表以后能力不会提升,如果持续努力,也会成长为高级程序员或是架构师,谁天生就是高级程序员呢,不都是一点点积累起来的吗?而且就算是写业务代码也不能就是low呀,有些业务场景是非常复杂的,逻辑必须十分严谨,稍有差错可能就会出现bug,对公司造成巨大的损失,不是写业务代码就是很容易的。
2除了业务代码就是非业务代码了,比如开发数据库,开发框架,或是写一些公共的方法或是接口,供初级开发者调用。写非业务代码的人技术也不一定就非常的厉害,因为就算是开发框架或是数据库之类的项目,也不一定都是高级开发,也会有一些水平较低的开发,因为写业务代码还是非业务代码和项目也有关系,如果你们团队开发的是开发框架或是数据库这种的项目,那么你们团队没有人写业务代码,也不能说明你们团队每个人技术都很厉害,只是项目性质不一样罢了。
3业务代码这个词看你的理解吧,我认为其实所有的代码都可以成为是业务代码,无论开发什么产品,都是有业务需求的,有了需求才有开发的动力,对于开发数据库来说,数据库的需求就是业务,对于开发框架来说,框架的功能就是业务,所以我认为广义上来讲都是业务代码,没有非业务代码这一说,所以具体看你认为业务的定义是什么了。不过无论如何也不应该去嘲笑或是去贬低别人吧,嘲笑或是贬低一类人就更不应该了。
业务程序开发相对于底层基础架构层的程序开发有所不同:
业务开发的时间比较紧,变化快。
这个特点导致程序员没有时间重构代码,或者不愿意重构代码,而是用最简单粗暴的复制黏贴的方式快速实现业务逻辑。其实所有的复制黏贴都意味着需要重构。
底层系统的开发,一般是架构师和高级程序员来设计和控制项目时间。相对来说,开发周期长,变化缓慢。会更加注重架构的合理性和稳定性,而且会不断重构和改进。
业务开发一旦完成,只要平稳运行就不会有人再回来补技术债务,不会把它写得更好。除非这个业务爆发了,不得不从新架构以支持更高的并发。如果上线之后表现不佳,很可能下线不再维护。所以公司也不太愿意花太多精力在一个还没有被市场认可的产品项目上。
而底层架构框架的项目会在不同的产品项目中不断应用。不断地进化。就像Spring之类的开源框架一样,不断的升级和完善。
相对来说,业务开发程序员会花大量的时间学习和理解业务知识;而底层框架程序员更多的时间在学习技术架构。如果业务知识在行业内通用,比如财务,金融行业知识。那么长期的积累对业务开发也是很有帮助的。如果业务是很小众的,甚至,这几个月做这个业务,下半年又做另一个业务,做的时候也一知半解,就像很多外包一样,那就没有什么业务沉淀了。
我就是写业务代码的,不过我觉得这很正常啊,不知道你是怎么就觉得low啦?
所以,做为一个企业,支撑发展的肯定是他的业务,不管是卖什么服务,都要通过业务来赚钱,可能针对业务,企业内部还会做一些细化。比如说,有人会是做一些前端,一些人做后端,还有运维,运营,产品的配合。前端再细化,一部分人会做一些页面的展示,呈现,还有一部分人会做一些适合业务的工具,来提升开发效率。
那如果你自己的定位是只是单单写页面的,那只能说你对自己的要求有点低,你没有去考虑如何做一些提升工作效率的事情。举个例子,比如说常见的后台管理系统,因为功能都很类似的,那你有去考虑如何做一个通用的模版吗,还是就是不断地去重复。
这个别人的产出,做了一个vue的后台管理系统的模版,现在的GitHub star在6万多,通过这个项目,他就可以得到更多人的认可,也能得到更多的好的工作机会。
所以,不要觉得业务代码就是low的,要善于去总结,然后再分享自己的经验,没准你也能成为一个领域内的Top。
不要太在意所谓low与不low,需要在意的是做了这个项目或业务后,对自己的能力有没有长进,如果有,那说明不low。如果没有,那说明你只是在机械的劳动而已。
每个大佬都是从业务代码做起的,大佬们注重的是能否成长,学习实践的机会,以及平台的大小和未来是否和自己的目标相匹配。
总结来说,只要能提升自己能力的任何工作,都是值得的。
我觉得首先大家要理解什么是“业务代码”,业务代码是一个相对的概念。
1对于一个一般的物联网应用型公司来说,业务代码就是根据客户需求基于一个MCU或者MPU的应用控制逻辑的实现。
2对于一个做纯上层应用的公司来说,业务代码就是基于一个 *** 作系统为客户量身定制对应的app,并实现对应的应用逻辑。
3对于一个微型控制器设计厂商,业务代码就是底层架构裸机的具体实现和各个外设驱动的框架设计。
4对于一个设计 *** 作系统的开发人员来说,业务代码就是架构设计、内存管理、调度机制优化、优先级管理、进程间通信机制优化、线程管理和内核完善等等。
所谓”业务代码”都是相对的,没有参考系怎么谈。像 *** 作系统,站在 *** 作系统内核提供方的角度看,上层所有的应用框架,进程服务,都是业务代码,我是为他们服务的。技术只是工具,业务实现才是目的,站在不同供应商的角度,只要涉及代码的地方都可以称之为业务代码。所以站在这个维度,如果要说业务代码“LOW”,那就没有代码是不"LOW"的了。
不过,真正接触底层或者实现RTOS底层业务框架的工程师其实是很少的。大部分工程师基本上都是对于客户需求做一些非驱动底层非 *** 作系统框架的应用型的开发,所以大多时候“业务代码“又单一的被指向了那些只是对客户的上层应用的需求做开发、调整或者迭代的代码。
而这部分代码究竟"LOW"还是不"LOW"呢,我的答案是:不"LOW"。但是现实却是很“LOW”,之所以会被想成LOW,是因为:
1判断一个程序员的优秀程度已经不单单看你写了多少应用型的代码,设计了多少应用框架,而是你懂不懂底层驱动逻辑,懂不懂 *** 作系统内核,懂不懂内核裁减等等。所以这种情况会经常出现在面试过程中,面试官会因为你不懂底层驱动、不懂内核而给你比较低的薪水。
2懂得写业务代码的人,他的程序员基础并不一定就牢固。因为上层应用可能对业务比较看重,但是对于一些特定的语言的编程并没有那么严谨。能用就可以,所以会自然而然的认为这样的程序员“LOW”。而一个会写底层驱动的人,他考虑更多的是基础代码的安全、严谨性和容量问题等等,他们的语言基础相对来说要牢固很多。
3技术负责人一般都是全能型的人。会写底层驱动或者更懂 *** 作系统内核的人更容易成为技术的领头人。而那些只会“业务代码”的人,放在大部分公司,一般都不会有太多的上升空间。
根据以上分析过后呢,做“业务代码”的程序员基本上会被想的很“LOW”,但是结合我的亲身经历,不同的人对于这个事情却会有不同的看法。
比如对于领导来说,那就不一样了。你将“业务代码”的需求迭代了,完善了,提前任务完成了,客户很满意。那领导不会认为你是一个很“LOW”的程序员。你很高级,领导很欣赏,“后果”很舒服。但是对于一个面试官来说,你就会点上层应用的调用和设计。我为什么要给你这么多薪水?虽然会被想成很"LOW",但是也是现实。
业务代码不一定low,能完成用户需求的代码就是好代码。
另外,对于我们搞嵌入式软件、EDA工具软件的来说,业务软件反而是更有技术含量的,更具科学意义的代码,而软件可能只是载体,你啥时候透过代码理解了它们背后的物理概念、数学公式,你就超越了程序员,能向科学家又迈进一步。
互联网软件其实也一样,软件实现的是一个业务流程的自动化,你完全可以透过你写的程序还原甲方用户的业务流程,而这种流程是老板制订的,认识会上一个层次,将来可以向老板迈进
我发现很多程序员对于处理业务逻辑都是「嗤之以鼻」。感觉自己天天写业务逻辑代码,改 Bug 都没有时间学习,没有时间实现个人成长?
但是,作为程序员来讲,如果不是做底层基础技术研发的话,大部分的工作不就是做这些拧螺丝的工作吗?其实拧螺丝有那么容易吗?可能拧螺丝很容易,但是拧好螺丝就不那么简单了。
别小瞧业务逻辑代码,如果真正写好,要把逻辑写得清晰简单易用,功能健壮稳定,性能同时达到要求的话,其实是挺难的。
其实很多程序员都跟他一样,都在痛苦的编程,一方面对自己有更高的要求,一方面又嫌弃现在写的代码没有技术含量。又有更高的要去和希望,又嫌弃现在的工作,就是不思考出现的原因,不去付诸行动。还不停的抱怨: 感觉自己天天写业务逻辑代码,改 Bug 都没有时间学习,没有时间实现个人成长?
到这里,我们不禁一问:那我们该如何摆脱这种现状呢?其实很简单,我们应该摆正自己的态度和观点,正确看待写业务逻辑这些代码就行了。
坚持不懈的写好业务逻辑代码
就像我在上面说的: 别小瞧业务逻辑代码,如果真正写好,要把逻辑写得清晰简单易用,功能健壮稳定,性能同时达到要求的话,其实是挺难的。
所以,我们要正确看待写业务逻辑的代码,应该摆正心态,坚持不懈的去写,所谓量变引起质变,就是这个道理。写业务代码,积累代码量,一力降十会,在积累了巨量的代码量之后,几乎任何所谓的有技术含量的东西都构不成挑战性。当然,要想真正的通过自己写业务代码,写好业务代码还应该有接下来的这个思考。
业务逻辑代码同样可以玩出很多花样
其实业务逻辑代码一样可以玩出很多花样,而这才是能够提升你能力的本质。比如:你写了一个处理单任务的业务逻辑,虽然满足了用户的需求,但是你这时能不能对自己有一个更高的要求呢?单任务虽然是功能实现了,但是效率可能不行,处理慢,那搞个多任务处理的逻辑怎么样?任务池、线程池、内存池、并发、同步等等这些技术点都来了。如果你对自己有这样的要求,而你自己有追求的话,就会进一步思考如何去做到这些,你做到了,你能力就提升了。
同样,很多人感觉处理业务逻辑,就是一些各种循环,条件判断,只要逻辑稍微严谨点,功能就都没问题,就都实现了,确实是这样的。这就是你对于业务逻辑没有兴趣的根点所在。
那你为什么不想想: 如何使用循环和条件判断可以提升效率呢?满足了功能的那些需求,是不是有些地方可以优化一下呢?是不是可以提升一下性能呢?
其实,这个技术的进步和积累,就在于自己内心对自己有没有更高的要求和追求。这是大实话,也是大白话。很多人就感觉只要实现了功能需求就够了,满足了用户就行了。然后,这个项目完事了,下个项目遇到差不多的逻辑,还是这么处理,又完事了,每个项目,每个功能都是这样重复的处理,从来不思考最优的实现方式,你感觉能够进步吗?你能不烦气吗?十年如一日的工作,10 年也就积累了一年的工作经验,在重复使用。
业务逻辑的最优方式,就是思考如何大道至简
通过一个业务逻辑实现一个功能,基本上只要是程序员,脑子不笨,都能做出来,做出来是一回事,但是做好是另外一回事。大道至简,我们要做就得想办法做到最好。这里的好有很多层意思。
比如: 你写的业务逻辑代码 是否能够做到准确,稳定,高效,易读,易扩展,易维护,兼容性强呢? 问自己一句,如果你能做到这些,那确实是好。如果做不到,你还是处理初级水平,当然不行,这就是你在工作中提升能力的机会。别说没时间,都是借口。
精益求精是对代码大道至简的永恒的追求,也是我们在处理业务逻辑代码中不断提高自己能力的过程。
明明自己水平初级,就容易骄傲自满,感觉可以了,我想学更高的技术,那么更高的技术是自己在处理业务逻辑中一步一步积累出来的,不是干了初级的活,不用积累,直接学高级的技术,就能高级了。
我特别喜欢网上有个网友写的一段话:
其实很多技术大牛和技术专家,都是从业务逻辑做起,慢慢积累思考起来的。比如:在处理业务逻辑之前,会思考如何设计这个架构,可以让代码更好的扩展和维护。在处理业务逻辑的时候,思考如何的处理才能提高性能和效率?一步一步的实验和总结,积累,才成就了今天的成绩。
所以,不要对处理业务逻辑嗤之以鼻,不要以为能够满足需求就够了。你重复不思考的粘贴和复制肯定是不行的,必然会对编程失去兴趣,自然无法更好的成长和进步。应该在编程的过程中追求更高的要求,寻找更高的兴趣,这样才能让你持续进步,从而进阶。
林子大了什么鸟都有,不知道你说的有人是指多少比例的人。我的理解代码可以分为两类:1:工具栏或者框架类2:业务类。写工具类偏重于健壮可拓展可复用;写业务类偏重于逻辑严谨没有漏洞,化繁为简。毕竟有些时候需求或者业务都不甚清楚他们想要的逻辑。有时候复杂的业务流程你捋都不顺,更别说代码写的好了。当然,工具类到高深,工具好用,框架优秀确实需要的技术功底深厚,比业务类要考虑的东西也多,但不代表写业务类代码很low。当然,不管写什么代码,完全复制黏贴而不去考虑与实际场景结合,不去想为什么?有没有更好的处理方案是比较low的
我一个学了一年程序员的姑娘来答下。工作职责: 1,设计一个程序(如程序语言和Python,等),用于各种不同场景下。2,编写并运行程序。3,编写出具有约束力的库或类。4,解决系统或产品上出现的各种问题。5,解决项目组的疑问,以及系统开发人员提出的问题。6、开发一个程序,用于其他领域。7,编写程序。8,编写技术文件。9,开发程序,并且发布程序。10,设计出程序和库。11,编写控制规则。12,编写工具和命令。13,设计
如果你也认同我的观点,欢迎点赞+关注,及时获得最新信息推送。
以上就是关于计算机程序员主要是做什么工作的全部的内容,包括:计算机程序员主要是做什么工作的、程序员应该向产品经理学习哪些能力、程序员在公司都做什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)