一晃,十月份几近月底,除了工作上的事情外,感觉自己变懒了,之前计划的是无论时间怎么挤都保证一周一篇文章的输出,但现在看来,这个计划已经被大大折扣而变得遥遥无期。
最近在做一个新的项目,完全从0开始,其实作为产品来讲除了按照固有的套路解决业务问题外,更多时候需要静下心来沉淀,我们是否找到了产品的最优解?
前段时间在研究央视网的接口时候无意间发现了这样一个js文件,当然不止一个js是这样的:
http://p1.img.cctvpic.com/photoAlbum/templet/common/DEPA1452765360136771/cnt_nav.js
代码:
function cnt_nav(){
if(video_ad_channel_id=="CHAL1450952056131267"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv1");
$("#xiaodaohang").text("CCTV-1综合频道");
}else if(video_ad_channel_id=="CHAL1450952448022284"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv2");
$("#xiaodaohang").text("CCTV-2财经频道");
}else if(video_ad_channel_id=="CHAL1450952493215293"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv3");
$("#xiaodaohang").text("CCTV-3综艺频道");
}else if(video_ad_channel_id=="CHAL1450952507945305"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv4asia");
$("#xiaodaohang").text("CCTV-4中文国际频道");
}else if(video_ad_channel_id=="CHAL1450953026950326"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv5");
$("#xiaodaohang").text("CCTV-5体育频道");
}else if(video_ad_channel_id=="CHAL1450953056640335"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv6");
$("#xiaodaohang").text("CCTV-6电影频道");
}else if(video_ad_channel_id=="CHAL1450953074552346"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv7");
$("#xiaodaohang").text("CCTV-7军事农业频道");
}else if(video_ad_channel_id=="CHAL1450953090171355"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv8");
$("#xiaodaohang").text("CCTV-8电视剧频道");
}else if(video_ad_channel_id=="CHAL1450953105800367"){
$("#xiaodaohang").attr("href","http://tv.cctv.com/cctv9");
$("#xiaodaohang").text("CCTV-9纪录频道");
}
...
...
}
这似乎是一个频道判断函数,如此多的分支用Switch替代是不是好点呢。。。
很多时候对产品经理来讲也会遇到类似的问题,在决策上一样面临多方案的选择,和程序不一样的是产品方案主观性更强。我们可以显著的认为if..else语句在处理较少分支时有性能上的优势,Switch...case语句在处理较多分支时有优势,这不是一个基于主观的判断。但是产品方案并不能这样显著区分,产品方案没有对错,只有更优或更好。
一直认为,好的方案一定是来源于对生活现象的高度提炼,熟话说得好,源于生活而高于生活。我们只是把生活中的故事系统化,在系统中以另一种语言重新讲一遍故事,在不断的迭代升级中逐步完善这个故事的结构,内容...吸引更多的听众,一点点延长故事的生命周期。与故事不同的是,故事可能终有一个结局,而理想的产品应该是在不同的形态中切换适应用户的需求。记得之前设计一个面向B端用户的系统,当时要做一个大量文档批量扫描入库的功能,由于业务的一些特殊性,该功能的设计必须要满足大量批量文件的快速入库,传统的做法是一个个顺序扫描然后校验入库,对审核员要求较高,稍有不慎可能就错了。基于当时的需求一个是做了文档条码识别,主文档条码识别包含部分附件信息,附件不具备条码属性,二是文档入库流程控制上借鉴了线下的流水线概念和超市购物车的概念,这也是整个系统一个非常大的亮点。
可能我们在做传统线下业务线上系统化的时候,除了理解线下业务核心的业务流外,更多时候要去思考业务边界问题,我们的系统是否一定要把某个线下流程线上化?当没有案例做参考的时候,决策会显得更加谨慎而重要,产品决策也更多依赖于对线下流程的理解程度。