编程本质上也是一种设计工作,而设计思想在不同类型的设计工作上,往往是相通的。
分享个最近体会到的case:
我们在做ai视频向产品,其中一些必要的配置,比如分级、剧集类型、屏幕类型等,我们需要用户在第一步确认好。从用户反馈来看,这其实是个很糟糕的设计,因为用户在创作视频时,往往在刚开始并没有清晰地想好分级,草草选择,执行到后面流程却又无法修改。好的设计应该是,用户已经想清楚的setting,及时设置好,用户还没有想清楚的setting采用就近原则,直到流程中真正需要用到这个setting时才去询问用户填充。
类比程序设计,《代码大全》中曾经提到变量声明的就近原则,有异曲同工之妙。这里就近原则是指:在变量第一次被使用的地方附近声明它,并立即初始化,目的是最小化变量的作用域,提高代码可读性,避免意外修改,减少维护困难,使代码更清晰、更健壮。
产品设计也好,编程设计也好,能尽量用第一性的设计原则去指导执行,理想设计巧思,是一件很酷的事情。