重新理解 “增/删/改/查”

简单思维

        简单思维就是找到事物最底层最基本的原理或规律,然后基于此,通过组合,架构,规范,进行演化迭代,形成丰富的积累,最终得到想要的结果。即基于简单的本质来构建一切事物。

关于“增、删、改、查”

        以前时不时就会听人说一句话,“研发就是做增、删、改、查”。 开发工程师有时候这样说,往往是做久了,自嘲的话;外行人听多了这句话,有些人就信以为真,也这样说。 以前听了这句话,我首先就会认为这个人肯定是个外行,压根不懂技术,不懂项目研发;如果他是个工程师,我就会附和着说,是啊,就是增删改查,每个项目都一样,都做一样的事。 其实即使是研发工程师,对增删改查的认识也是不一样的。 很大一部分工程师,做了很多个项目,发现了在每个项目研发中,日常做的最多的就是增删改查,大同小异,做了很多次重复了,最终有感而发,说出“研发就是做增、删、改、查”。还有一部分工程师,工作时间2-3年的,工作后一直忙着加班做研发,然后有一天发现每天就是跟数据库,做的就是增、删、改、查,这个时候迷茫了,甚至觉得这或许就是真实的研发工作。

“增、删、改、查”的真相

        研发真的就是做增、删、改、查吗?在讨论这个问题之前,我们不妨先来了解下一门语言 “SQL语言”。

        SQL语言里对数据进行操作只定义了几个关键词,分别是INSERT, DELETE, UPDATE, SELECT. 这四个关键词,对应着 插入( 增),删除,更新(改), 查询 四种SQL语句。 为什么sql数据操作只有这四种语句?因为只需要这四种语句,这四种语句已经把数据操作的全部行为包含进去了:产生新数据,删除旧数据,数据信息变更,查看数据。 从数据的视角看,研发的实质是数据管理,这也是现在“数据驱动” 流行的主要原因,数据的重要性越来越受重视,人们也倾向于把尽可能多的数据保存下来,因而诞生了大数据。数据管理分两部分:数据存储和数据操作(数据分析与挖掘 一般不包含在业务项目中,通常会另设项目满足)。数据存储根据业务的特点,选择用关系数据库(如Mysql)或者Nosql数据库(如MongoDB),数据操作就是增、删、改、查。 现实里的业务项目中,90%以上的功能就是新增,删除,修改,查询,导出(尤其是管理后台),即使是复杂的功能,也只是增删改查的各种组合而已,因此“研发就是做增、删、改、查”,这句话其实是对的,这就是研发的真相,研发就是这么简单。

如何行动?

       既然已经知道了研发的真相,而真相又如此简单,就是“增删改查”,那应该如何行动呢?

        项目研发管理核心是要做好三点:1. 提升效率;2. 保障质量;3. 降低成本;如果提升效率和保障质量做好了,成本自然就会大大下降,所以实际只需要解决提升效率和保障质量这两个问题。这跟“增删改查”有什么关系呢? 当然有关系。既然研发就是做增删改查,那只要把增删改查研发的效率提升上去了,则总体效率自然就提高了。 “增删改查”的功能开发效率又能提高到什么程度呢? 前人已经做过很多尝试了,比如Java开发中Mybatis代码自动生成器,可以把跟数据库操作(即增删改查)的常用代码生成好;市面上还有一些开源的代码生成器;还有类似与万能表单代码生成器(可建表,自定义配置字段等) 等。我早期的时候曾花了很长时间研究代码生成器,用于提升研发效率,经过很多次的实践、调整、验证,始终觉得不满意,最终放弃了这种思路。 

        代码生成器虽然能在一定程度上提升研发效率,但弊端也很明显,主要有:

        1. 出现大量相似(甚至相同)代码(生成的代码相似度通常都90%以上,甚至相识度达到99%),维护代价大;

        2. 往往只是局部代码,没有完整功能;

        3. 往往没法支持复杂的逻辑,若需要支持复杂业务逻辑,需要做大量变更开发工作;

        这些弊端,导致其在一个公司内部中大型项目中,基本不再被使用。

        那应该怎么做? 我的思路是:把“增删改查”做成无需开发的功能,只需要配置即可。配置的形式可以根据不同语言而定,比如PHP,可以直接用数组形式进行配置。 我把这个思路定位为“配置驱动开发”,把所有常用的功能,组件,包括特殊功能等,都做成可配置项的形式,最终做到除复杂的核心业务功能需要重点开发外,90%以上的功能无需开发即可完成,可以极大的提升研发效率并保障研发质量。

注:下一篇我将重点讲解“什么是配置驱动开发”。 请各位读者多给些反馈,觉得写得不错的给个赞,觉得写得烂的拍个砖。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,817评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,329评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,354评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,498评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,600评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,829评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,979评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,722评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,189评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,519评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,654评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,329评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,940评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,762评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,993评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,382评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,543评论 2 349

推荐阅读更多精彩内容