高级技术人员必须具备的三大思维模式没有比这更好的了。用户思维代码的抽象来源于现实世界。产品未来的受众一定是给人看的。与人交互的内容必须以用户为中心。除了行业内的一些,其他的产品一定是面向大众的,不管是C端用户还是B端用户,我要让用户看得懂,用得着,用得着,用得着。例如,在交互页面验证必填项时抛出异常:“IDisrequired”。这是一个必填ID的提示,大部分用户看到都会一头雾水。正确的做法应该是做一点处理和包装,然后反馈给前端用户,比如“请输入身份证号”,简单明了,客户很容易发现问题所在。普通用户不具备专业使用软件的能力,所以我们要尽量站在他们的角度去思考,否则开发出来的东西使用门槛很高,用户群体必然少。目前产品迁移的成本很低,因为单一的颜色问题可能导致用户大量离开。如果用产品思维写代码的人只看到代码,那还是比较低的水平,只见树木不见森林。代码集合就是功能,功能集合就是系统,系统集合就是产品,产品集合就是生态。我们必须清楚地看到代码背后的价值。这堆代码的最终使用者是谁,能产生什么价值?它可能是个人价值、商业价值或社会价值。还有一点需要注意:把产品看成是一个完整的产品,可以交付给用户,而不是一个独立的功能,这是一个很重要的概念。独立功能再强大,不完整的产品也不会被用户使用。举个例子:很多产品场景都需要实名认证,提供了扫描身份证自动识别功能。识别率高并不代表没有错误。当出现异常情况时,应允许用户手动调整信息。如果没有提供入口,这个函数的不完整性导致无法完成后续的一系列操作。工程思维中软件工程的一个奇怪之处就是它的生命周期可能很短,返工率很高。与路桥水坝工程不同,规划完成后,需要配合大规模的实施队伍,动用大量的工程机械。严格的施工需要花费大量的时间、资金和劳动力。这些项目遵循现实的物理规律,如力、电、热、能量等,而软件工程除了硬件设施外,基本上是由看不见的、无法量化的因素构成的。心理思维活动的构成更多的是时间成本。在建设之初,需要以软件工程的思想来指导实际工作。任何违反软件工程基本规律的实施过程都不可避免地会对项目或产品产生反应。一定要先设计再编码,不然后面写的过程中会发现很多错误。合理,难免会导致返工。如果前期研究不到位,必然会产生一堆没有市场的东西。质量、速度、成本是软件工程的不可能三角,只能平衡不能打破。这是职业法则。抓住了重点就相当于找出了脉络,从哪里来就更容易回答了。规律可以指导实践,实践可以反哺经验,不断提高水平,完善小技术格局。以上三点并不难做到。稍加注意和练习,您稍后就会习惯它。
