这么一解释,我们就立刻明白了;所以如果你不明白业务的时候,看着需求敲代码也是非常容易出错的 。
有些人会认为业务逻辑就是一堆 if-else,但是我认为在实际工作中 , 这些 if-else 也是非常难做到的 。
业务逻辑是人设计的 , 业务逻辑难不可怕 , 可怕的是它不严谨和变化快;业务逻辑和那些确定性的东西不一样,比如我们写好的代码 if-else 两个分支,那么再怎么也不会跳出这个范围,业务逻辑就不一样了,它是非常灵活的、不确定的 , 业务机会来的快消失的也快,我们很难开发出来一套全面的、完善的、灵活的的系统 , 去应对将来可能会发生的需求 。
所以在开发过程中,如果可以将业务流程拆分成多个组件模型,组件和组件配合完成一个完成的业务流程;当业务发生变化或有新业务的时候,只需要重新编排这些组件 , 或对某一个组件做少量更改,就可以满足业务变化;如果能做到这个程度,也是非常不容易的 。
在这个过程中 , 你需要做到高内聚低耦合,避免过度抽象,从业务流程和动机出发,已满足业务需要为主;既然做不了“科学家”,我们就努力把业务代码写好把 。
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注 。
首先,我认为写业务代码不“low”,但是大部分不假思索拷贝粘贴的业务代码比较“low” , 换句话说就是所谓的五年工作经验就是把第一年的工作重复了五遍 。
技术人员成长一般有两条线,一条是成为技术专家,一条是成为领域专家 。所谓的转管理我理解也就是领域专家,毕竟不懂得领域知识是无法做好管理的,比如说你是互联网金融某个业务部门的leader,那么你肯定要懂金融 。领域知识就是在不断的写业务代码和思考中积累起来 。
还有一个问题就是如何定义业务,比如说“实现一个修改订单功能” , 这是一个业务需求 , 看起来很low,但是如果业务需求改成“实现一个修改订单功能,要求在有限资源的情况下并发10k , 响应时间不高于10ms”,那这个需求就有挑战 。说这个问题想说明白一件事情,如果做业务不要停留的在业务表面 , 仅仅满足于实现功能,要主动思考 。
最后总结一下,没有最好的技术,只有最适合业务的技术 。技术是内功 , 业务是招式,内功不足 , 后续成长乏力,没有招式,内功也不能发挥威力 。这是也很多互联网创业公司做大了之后要技术转型的原因 。
作为一个程序员,我也是写代码的,我不觉得写业务代码很low 。
1.首先大家所认为的业务代码就是一些和业务相关的增删改查,涉及到的技术点相对来说是固定的 , 写熟了之后,就是复制,粘贴,不存在什么技术阻碍,很多人就觉得非常的简单,没有技术含量,做这些工作的人也显得非常的low , 如果你也是这样认为的,那你就错了,因为写业务代码的基本都是初级,中级的程序员,工作经验有限,不具备写一些公共方法和接口的能力,但是并不代表以后能力不会提升,如果持续努力,也会成长为高级程序员或是架构师,谁天生就是高级程序员呢,不都是一点点积累起来的吗?而且就算是写业务代码也不能就是low呀,有些业务场景是非常复杂的,逻辑必须十分严谨,稍有差错可能就会出现bug,对公司造成巨大的损失,不是写业务代码就是很容易的 。
2.除了业务代码就是非业务代码了 , 比如开发数据库,开发框架 , 或是写一些公共的方法或是接口,供初级开发者调用 。写非业务代码的人技术也不一定就非常的厉害,因为就算是开发框架或是数据库之类的项目,也不一定都是高级开发 , 也会有一些水平较低的开发,因为写业务代码还是非业务代码和项目也有关系,如果你们团队开发的是开发框架或是数据库这种的项目,那么你们团队没有人写业务代码,也不能说明你们团队每个人技术都很厉害 , 只是项目性质不一样罢了 。
推荐阅读
- 手机射击游戏手游大全免费,手机射击游戏排行榜2020前十名
- 怎样推广微信公众号视频,微信公众号怎么推广产品
- 网络游戏的产物有哪些,网络游戏的产生
- 直播培训直播话术,直播培训宣传
- vb.net环境变量 vbs环境变量
- gis应用于旅游方面,gis技术在旅游业中的应用研究
- u盘连不上电脑怎么办,u盘连不上电脑怎么办
- 重庆地产营销总监待遇如何,重庆地产营销总监招聘
- php脚本大量数据优化 php处理大数据量数据的思路