这是个老生常谈的问题。产品经理是个很杂不专的行业,在实际工作中也是最容易背锅的,因为它依赖他人而实现价值,而实际只对产品管理。又引发另外一个问题,在中小型公司的实际工作中,管理层对执行层实际工作中往往帮助不大,特别是那些啥不懂往往造成面和心不和,而产品和开发矛盾其实也是如此。
产品主要职责是市场分析与策划设计,我们知道从组织效率与质量讲,策划与实现分开,形成互相督促,效果相对好些,但有一定特殊性在于产品经理没行政权力领导开发,也就是你的话语权来自于你的专业与人格魅力,这一定程度也体现互联网的平等思维,有利于更好的沟通。在与同行交流时候发现入行的真是啥专业都有,没啥计算机基础都可以做产品,还说人人都是产品经理,只要逻辑思维能力强,业务了解强,这种能力不是开发最擅长?写代码实现肯定是最了解业务,要知道实现各种功能在学习相关语言时候视频老师就告诉你相关注意事项,啥产品结构图,流程图在软件开发时候确实需要但程序员在软件工程时候是最熟悉的,然后说开发做产品往往纠结实现上,没产品思维,嗯,刚开始不是说人人都是产品经理?产品难道本身不是纠结细节,用户体验和市场人群分析真的很难?难道做了程序员就不是消费体验者,不会从用户角度看问题?而沟通过程中BAT的PM也很多不懂技术,还是从自身层面维护立场。
在美国很少有产品岗位,取代的是增长岗位居多,其实很说明问题。市场分析比不上专业的经济证券分析师,当然一般他们站在行业角度,而产品站在用户角度,公司层面,当然我也不是说产品真没啥价值,只是说明开发对于产品其实很了解,其能力迁移能力相对普通产品来说要强很多,所以不可否认学习编程对于做产品的帮助。为啥腾讯是产品基因,阿里是运营基因,还不是源于创始人对于技术的理解程度。不过相对来说产品帮助开发更高效工作也是真的,毕竟开发精力全力集中在实现层面才不浪费大的人力成本,不然真的从市场分析到用户调研,从竞品到需求,从原型到实现,那种工作量实在太累。
当然,毕竟不是实现的,对于技术了解的程度是需要探讨的。对于之学过Java,数据库,jsp+sevlet,三剑客以及计算机网络连框架没学的我其实要谈广度往往存在很多漏洞,推荐看这个:https://mp.weixin.qq.com/s/kCECHEjM2XjRNHySPDNVdw。还是谈谈就具体实现一个注册登录需要了解的东西。这也是我最熟悉的功能,也相信在学习中写的最多的,HTML版,jsp版,数据库版,框架版,每深入一层看到角度确实不同。
首先关于盒子概念(div+css)的了解,在写个前端页面时候,在大盒子套小盒子,控制颜色字体,尺寸位置,链接文本,相关的关键字,这个其实学起来很快,之后就是静态交互js,对于事件控制,对于一个控件存在哪些行为变化,用户点击时,移入移出时各种弹窗提示符,js入门容易但精通难,当然在注册登录上掌握很简单;就是用户名字符格式,数量控制,通过数据层传输,对比获取对象与数据库中数据对比,判断是否已注册,用户密码正确执行登录。而在过程中,定义注册登录表对象,比如注册表需要用户名,密码,验证码,定义数据类型与字符长度,形成一个对象,方便通过对象调用数据对比。而在传输过程,通过转发与重定向语句获取页面数据,连接服务器,开数据库,数据库中增删改查,查询数据库相关数据,进行对比验证正确性判断是否登录行为。
而这过程中分为表现层,业务层,持久层的MVC结构。M-Model,模型,一般表现为提交的表单内容,请求参数等,是服务器与客户端交流的数据载体;·V-View,表现层,用来展示客户端请求的结果,服务器返回的数据经过渲染展示给用户;·C-Controller,控制器,是客户端与服务器的中间连接枢纽,它负责将客户端发来的请求分配到指定的方法,执行相应的业务逻辑,然后将服务器返回的数据分配到指定的view,view好经过渲染展示给用户。流行的组合:·SSH:·Struts(表示层)+Spring(业务层)+Hibernate(持久层)·SSM:·SpringMVC(表示层)+Spring(业务层)+Mybatis(持久层)
业务层也是承接层,用来处理业务逻辑,通常使用数据库中的事务来进行,按照web层的要求来对数据层进行增删改查。
·service是业务层,是使用一个或多个模型执行操作的方法:
·封装通用的业务逻辑、操作。如一些数据的校验,可以通用处理;·与数据层交互;·其他请求:如远程服务获取数据,如第三方api等。
持久层数据大概可以分为三个部分:DAO、文件系统和其他应用数据。
·DAO由一下几个部分组成:
·DatabaseConnection:专门负责数据库的打开与关闭操作的类;·VO:主要由属性、setter、getter、方法组成,VO类中的属性与表中的字段相对应,每一个VO类的对象都表示表中的每一条记录;·DAO:主要定义操作的接口,定义一系列数据库的原子性操作,如增加、修改、删除和查询;·impl:DAO接口的真实实现类,完成具体的数据库操作,但是不负责数据的打开和关闭;·Proxy:代理实现类,主要完成数据库的打开和关闭操作,并且调用真实实现对象的操作;·Factory:工厂类,通过工厂类取得一个DAO的实例化对象。
把相关关键词概念以及做出个小功能就算产品常说的:只要能和开发沟通就好!!!!!!!!!!!!!