聊聊业务逻辑设计和交互设计

这是发给团队的一封邮件

今天和肖哥,喆哥电话讨论了1个多小时,抛开问题本身不谈。我想谈一下业务逻辑设计和交互设计的不同。不对之处大家多斧正。如果你想在架构师甚至是代码编写这块更精进一些,其中之一是需要明白业务逻辑设计和交互设计的不同之处。业务逻辑设计不管从敏捷开发,瀑布式开始,还是领域驱动设计,追求的设计本质其实没有什么不同,就是抽象、抽象再抽象。

所谓的抽象,就是指从具体问题中,提取出具有共性的模式,再使用通用的解决方法加以处理。

开发软件的时候,一方面,我们总是希望使用别人已经写好的代码,另一方面,又希望自己写的代码尽可能重用,以求减少工作量。而在做新的需求的时候,尽量不要改原来的代码,也就是所谓的封闭开放原则(对谁封闭,对谁开放,大家可以考虑一下)。要做到些目标,这需要"抽象化"。不管是前端还是后端,我们写代码的时候都要追求抽象化。如果一个程序员只是对实际业务进行代码翻译。就落了下乘。

而交互设计的原则也很简单,就是自然、自然再自然。有一种说法是最好的产品设计不需要说明书,用户会很自然的按照天性进行操作。大家一向是通过苹果手机来说明这个观点的,果粉同学此处应该点赞,呵呵。然而,任何一个产品都是由业务逻辑和交互设计组成的。换句话说极简的业务逻辑抽象表现出极繁的交互界面。可以很容易推理,这中间一定是需要承载者的,现在复杂的系统流行的承载就是在所谓的大前端上,而我们现在是没有大前端的,这些功能就被迫分解到前端一部分和后端一部分,往往也会产生分歧。我们在做这些分解的时候很多时候不是按照对错来做的,其实黑白分明才是极其罕见的,方案是目前我们的能力、人力和时间所能承载的一个折中选择。

这也是我一直希望不管前端、还是后端的童鞋都要多理解业务,多参与设计的一些讨论的原因,这样,多讨论多争论,才能在众多的方案选择当前最合理的做法,我们的产品也在大家的合力的情况下进步,大家在编程和设计的水平也会不知不觉中得到提升。


一句话,前后端要加深业务理解,多沟通,勤沟通。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,349评论 25 708
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,958评论 2 59
  • 包 主要是一些相关的过程、函数、变量、常量和游标等等 PL/SQL 程序设计元素的组合。因为包,类似于面向对象的特...
    _拾年丶阅读 175评论 0 0
  • 标题有点大,其实就是很鸡毛蒜皮的小事情。从昨晚就开始期待今天十点开始的天猫超市聚划算活动,多芬沐浴露1.3kg,3...
    hiroko阅读 199评论 0 0
  • 藏逝一段时光 辗转一念过往 落幕一寸花香 谁怜? 今非昔比 你我身在江湖 亦是相忘
    Young七黎阅读 372评论 0 2