产品术语 | 开发口中的“写死”是什么意思?
编辑导语:技术一定要写死程序吗?本文就
写死代码有什么优缺点做了详细阐述,一起来看看吧!
有个产品说:明明不写死会有很多好处,不明白为什么技术一定要写死程序。好家伙,程序员听了都要被气哭。
程序员并不知道要把什么功能写活,写死才是常态。如果所有的功能都要写成动态的,就不是业务程序,而是像在开发什么新的编程语言了。
一般产品未写明时,态度好的开发还会来问一下:这里要写死吗?如果开发不问的话,大概率就按照产品的需求来写,也就是怎么方便怎么来了。
所以某个功能需要写活,一定要说清楚,不然后面免不了一场撕逼大战的。再说如果开发预判了你的需求,提前写活了后端逻辑和前端页面,万一你没有修改的需求就是浪费人力了。你可能还会怪开发代码写得慢,这就会造成项目延误等后果。
那什么是写死呢?
形容某个产品功能,被开发小哥哥直接用代码死死钉成某个样子,以不变应万变,日常使用中你我都不可以通过配置来变化内容。也可以说是让开发小哥哥直接写在代码里,不是从数据库读取数据或者从接口拉取数据,只限定一个固定常量,不接受变量。
所以在程序实现的时候,程序员问是否要写死,其实是探求这里是否会变化。如果不变,那就写死。有写死,那么就会有写活,其实写死和不写死二者并不是互斥的,有的时候是要一起配合的,既要本地写死,也要云端可控。
goodcase
badcase:
最后采取的解决办法:修改客户端代码,将折扣修改并完成测试后提交应用市场审核,为了覆盖已发布的版本,只能开启强制更新策略,对用户体验非常不友好。
需求方一定要充分明确需求的目的,才能充分判定某业务是否要写死,写死和写活的优劣势都很明显,在权衡中做出正确的选择很重要。
比如你要做修改用户个人主页背景图的功能:
写死:用户只能从预设的10张图片中选择,而不能自己上传字个人图片到App中使用,开发完成就没有其他的问题了。
写活:用户可以选择自己喜欢的图片做背景图,那么开发时就必须考虑以下问题:
- 图片格式要限定还是可以任意格式,要支持动图吗
- 图片的尺寸要限定还是任意,任意尺寸的图片还得做相应的裁剪处理,否则可能会出现变形/图片未铺满等体验不好的情况
- 图片上传后还得在后台建立一个数据库的功能,下次启动还得自动读取用户最后设置的背景图
- 图片上传后,还得建立审核系统,否则用户上传不合规图片会导致App下架
…
程序写死是个大大减少开发工作量的方法,但是很不利于后期App的更新和拓展,比如后面基于商业化变现,还想针对背景图做付费或者活动获取等运营模式。
需求业务是不断变化的,当前业务在考虑长远发展的同时考开发工作量,基于这些做出性价比最高的选择,你就能清楚什么情况应该写死/写活了。
本文由 @西瓜姐姐 原创发布于人人都是产品经理。未经许可,禁止转载
题图来自 Pexels,基于 CC0 协议
写得很好,通俗易懂
学习,之前一只觉得写活好。
作为一个前端,对我来说,既可以写死又能写活的状态,你不告诉我我肯定写死,毕竟写死不用考虑太多。
哈哈,这篇文章有意思,语言很生动很接地气,给作者赞一个。
喔嚯,代码写死即用户不能灵活修改,不过也了解到了新的知识点。
也许这就是能更新和不能更新的区别?看来无论什么都是需要能进步的