之前买书的时候,发现大家基本没考虑设计方面的书籍,感觉大家对设计这件事不够重视。所以技术分享的第一段,先讲几句做好设计、学好设计的重要性。
一 为什么重视设计(面向对象设计)
1. 业务驱动与技术驱动的区别是什么?
技术驱动是“怎么做”一直在变,并且由“怎么做”带动“做什么”发生变化。
例如,以往我们出门,不认识路了,我们会开口问路人甲。现在呢?掏出手机查地图。以前我们买东西结账,会掏钱包数零钱。现在呢?掏手机刷二维码。这是技术驱动的“怎么做”在变。由“怎么做”的变化,进而带动了“做什么”的变化。最显著的就是余额宝,让大家从去银行做活期存款变为购买货币基金。
业务驱动是“做什么”一直在变,并且由“做什么”带动“怎么做”发生变化。例如,我们之前做过青岛银行,很快就跟进了华润银行;最近的,我们正在做展期,把5期扩展为10期;但说不定哪天就会出现“缩期”,从10期缩短为5期。这些都是“做什么”方面的变化。“做什么”变了,“怎么做”就难免要跟着变化。如果“怎么做”变化得太大、太频繁,开发人员就很痛苦了。
我们的系统属于业务驱动、业务系统,技术上并不高精尖,但是业务逻辑上复杂、多变。做业务系统的首要考虑是满足需求——满足当前的业务需求、以后的扩展需求、开发人员不加班的需求。换句话说,就是要我们做好设计、做好设计和做好设计。
2. 大家的职业规划是什么?
——技术路线走到黑,从程序员、到设计师、到架构师,程序设计、系统设计、架构设计,设计都是基本功。
——技术转管理,可以从面向对象设计思想中汲取营养。面向对象设计思想本质上就是管理复杂度、管理流程和模块、管理资源和代码。
——技术转产品、业务,可以借助面向对象设计来学习和锻炼抽象思维,对用户、客户、市场、业务进行抽象建模,找到业务的运营模式、产品的盈利模式等等。这些都需要有抽象能力。而抽象是面向对象设计的核心思想和方法。
——彻底转行,那就别在这儿浪费时间了。