作为开发者,你都听产品经理的,做的累不累?

四.产品设计不够整体化考虑


好多时候产品经理提出新的功能或者需求都会去参考其它的app,如果是一个经验不太够的产品,他每次设计出来的东西和整个产品都不一定能对应上,比如 :好几种颜色的标题栏,首页风格经常会变 一会九宫格布局 ,一会儿tab标签栏布局(一种是activity跳转,一种是fragment碎片),好几种风格的筛选数据的效果。

我们一般开发很多功能都有一个共用的概念,比如程序的标题栏等都是继承一个,如果效果不一样,我们就要单独处理,导致程序可维护性不高。

当然有很多时候这都是没办法的事情…大部分时候都是要按照需求做…

更有夸张的时候,我们做完马上要发布了,要求重新做一版…

五.产品开发时间卡的非常死


很多情况,我们开发的时候都会排一个时间表,大家严格按照时间表执行,但是这个时间表上面罗列出来的功能和我们真正的开发时间往往相差很多。一个支付功能问你做过没有,你说做过,那可能只给你1天时间,第二天产品经理就过来问 支付调通了没有…

让你负责整个项目,列出一大堆功能,问你20天能上线吗?你这就是赤裸裸的让我加班啊…

就算是开发时间够,开发过程中难免出现这样那样的问题。总要有一些处理其他问题的时间吧,万一开发环境突然搞乱了,或者电脑出了问题需要重装环境。又或者大家一起合作有同事把代码提交错了,覆盖了自己的代码。各种情况都有可能耽误开发时间。有的公司还各种开会,一个会一上午就没了…

有些负责人还要去面试,面试回来就被问进度怎么样了?要不就是带些新人,帮助他解决问题或者讲解业务 这都需要时间啊!

有排计划的时候把这些都考虑进去的吗?产品负责人只会说,这点功能怎么这么久还没跑通?

六.简单功能复杂化


举个例子  一个选择城市的功能,可能公司产品就支持3个城市,大家在做这个程序的时候,一般有点经验的都会考虑 这个城市以后增加了怎么办,肯定不可以在程序里面写死,这个必须动态控制,不能以后增加一个城市我们就提交一次app吧。 这么想讲道理没有问题,然后获取一个城市列表(3个固定城市)加一次网络请求服务器。然后产品经理过来发现,你这么做有问题啊,就这么三条数据每次进这个界面还有正在加载数据(一般网络请求如果网络慢的时候,都有加载中提示…),然后让你改,说体验不好…然后你就要想办法了,这个不能写死,还不能每次都加载,那么只能第一次加载完存本地了,下次判断本地有就不请求服务器了…好然后高兴的写去了,写完想想有漏洞,如果服务器这个时候有增删改就麻烦了,比如 多个城市,少个城市,改了其中一个城市的名字…这个本地就和服务器对应不上了,然后还要再添加对本地数据更新的逻辑…

后来,这个app再也没有支持过别的城市,白白加了这么多复杂的逻辑…

我总觉得功能尽量越简单去实现越好,不要为了一个简单的小功能去影响整个产品的体验…

我在第一家公司的时候,老板提出这样一个概念,就是做一款可以配置的app,就一个项目…听好是一个项目,不允许拷贝多个项目然后修改,因为不好维护…

老板大概意思就是   首页的图片文字,主界面的模块功能点等都是动态的 所有的能看到的界面都可以在后台服务器配置…

说白了就是:app上所有的地方都要从后台请求字段 ,然后根据定义好的字段的值 去控制app的显示…这样就会产生出来很多app… 餐饮,医疗,交通,购物…

老板的概念是:定制化全能app…

大家想一下这个难度有多大,然后缺点有多少.

这个产品的缺点:

1.app内逻辑以及请求太多,影响app的流畅度及体验

2.从产品角度考虑,配置出来的app缺乏个性化,功能界面效果很单一。

3.产品过于复杂,导致app本身过大。(基本所有第三方的sdk都会用到,jar包就几十个)

我理解的好的产品应该是: 设计简单、操作流畅、功能简单易用、稳定性高、用户体验好, 这些都很关键。

所以一些功能从产品经理设计出来的那一刻就注定是失败的,开发多努力都毫无意义…

程序员成功的关键有很多因素,碰到一个好的产品经理设计出一款好产品,你就算做的工作很少,也一样可以成功。

但是你碰到坑人的产品经理设计出坑人的产品,你多优秀都会被埋没…想必这也是很多大神都愿意去大公司的原因…的确产品好,自己做的也没有那么累…

小公司什么奇葩都有…

说了这么多,我总觉得基本几年的开发都碰到过类似的情况,那么我们开发如果总是被产品牵着鼻子走,做的累不累?

我们开发要怎么面对这些问题呢,我提出我自己的几点看法(有问题及时提出指正):

1.我们尽量要参与需求的制定及讨论,尽量对一些不合理的地方及时从开发的角度提出自己的意见。

2.当需求制定出来的时候,我们拿到效果图,不要着急做,要脑子里面先想想哪里有问题,不合理,整体流程能不能跑通。想通了在做。

3.当产品上线前,尽量不要做一些没有太多意义的小功能。精力都放在处理关键bug,问题上。功能能不加就不加。

4.提前制定好计划,当需求反复改的时候,要及时和上级沟通交流,调整时间计划,避免后期时间计划对应不上。

最后

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助

因此我收集整理了一份《2024年Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
为你打开新的学习之门**

如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术性,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值