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

簡(jiǎn)單思維

? ? ? ? 簡(jiǎn)單思維就是找到事物最底層最基本的原理或規(guī)律蘑斧,然后基于此,通過組合须眷,架構(gòu)竖瘾,規(guī)范,進(jìn)行演化迭代柒爸,形成豐富的積累准浴,最終得到想要的結(jié)果。即基于簡(jiǎn)單的本質(zhì)來(lái)構(gòu)建一切事物捎稚。

關(guān)于“增乐横、刪求橄、改、查”

? ? ? ? 以前時(shí)不時(shí)就會(huì)聽人說一句話葡公,“研發(fā)就是做增罐农、刪、改催什、查”涵亏。 開發(fā)工程師有時(shí)候這樣說,往往是做久了蒲凶,自嘲的話气筋;外行人聽多了這句話,有些人就信以為真旋圆,也這樣說宠默。 以前聽了這句話,我首先就會(huì)認(rèn)為這個(gè)人肯定是個(gè)外行灵巧,壓根不懂技術(shù)搀矫,不懂項(xiàng)目研發(fā);如果他是個(gè)工程師刻肄,我就會(huì)附和著說瓤球,是啊,就是增刪改查敏弃,每個(gè)項(xiàng)目都一樣卦羡,都做一樣的事。 其實(shí)即使是研發(fā)工程師权她,對(duì)增刪改查的認(rèn)識(shí)也是不一樣的虹茶。 很大一部分工程師逝薪,做了很多個(gè)項(xiàng)目隅要,發(fā)現(xiàn)了在每個(gè)項(xiàng)目研發(fā)中,日常做的最多的就是增刪改查董济,大同小異步清,做了很多次重復(fù)了,最終有感而發(fā)虏肾,說出“研發(fā)就是做增廓啊、刪、改封豪、查”谴轮。還有一部分工程師,工作時(shí)間2-3年的吹埠,工作后一直忙著加班做研發(fā)第步,然后有一天發(fā)現(xiàn)每天就是跟數(shù)據(jù)庫(kù)疮装,做的就是增、刪粘都、改廓推、查,這個(gè)時(shí)候迷茫了翩隧,甚至覺得這或許就是真實(shí)的研發(fā)工作樊展。

“增、刪堆生、改专缠、查”的真相

? ? ? ? 研發(fā)真的就是做增、刪淑仆、改藤肢、查嗎?在討論這個(gè)問題之前糯景,我們不妨先來(lái)了解下一門語(yǔ)言 “SQL語(yǔ)言”嘁圈。

? ? ? ? SQL語(yǔ)言里對(duì)數(shù)據(jù)進(jìn)行操作只定義了幾個(gè)關(guān)鍵詞,分別是INSERT, DELETE, UPDATE, SELECT. 這四個(gè)關(guān)鍵詞蟀淮,對(duì)應(yīng)著 插入( 增)最住,刪除,更新(改), 查詢 四種SQL語(yǔ)句怠惶。 為什么sql數(shù)據(jù)操作只有這四種語(yǔ)句涨缚?因?yàn)橹恍枰@四種語(yǔ)句,這四種語(yǔ)句已經(jīng)把數(shù)據(jù)操作的全部行為包含進(jìn)去了:產(chǎn)生新數(shù)據(jù)策治,刪除舊數(shù)據(jù)脓魏,數(shù)據(jù)信息變更,查看數(shù)據(jù)通惫。 從數(shù)據(jù)的視角看茂翔,研發(fā)的實(shí)質(zhì)是數(shù)據(jù)管理,這也是現(xiàn)在“數(shù)據(jù)驅(qū)動(dòng)” 流行的主要原因履腋,數(shù)據(jù)的重要性越來(lái)越受重視珊燎,人們也傾向于把盡可能多的數(shù)據(jù)保存下來(lái),因而誕生了大數(shù)據(jù)遵湖。數(shù)據(jù)管理分兩部分:數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)操作(數(shù)據(jù)分析與挖掘 一般不包含在業(yè)務(wù)項(xiàng)目中悔政,通常會(huì)另設(shè)項(xiàng)目滿足)。數(shù)據(jù)存儲(chǔ)根據(jù)業(yè)務(wù)的特點(diǎn)延旧,選擇用關(guān)系數(shù)據(jù)庫(kù)(如Mysql)或者Nosql數(shù)據(jù)庫(kù)(如MongoDB)谋国,數(shù)據(jù)操作就是增、刪迁沫、改芦瘾、查闷盔。 現(xiàn)實(shí)里的業(yè)務(wù)項(xiàng)目中,90%以上的功能就是新增旅急,刪除逢勾,修改,查詢藐吮,導(dǎo)出(尤其是管理后臺(tái))溺拱,即使是復(fù)雜的功能,也只是增刪改查的各種組合而已谣辞,因此“研發(fā)就是做增迫摔、刪、改泥从、查”句占,這句話其實(shí)是對(duì)的,這就是研發(fā)的真相躯嫉,研發(fā)就是這么簡(jiǎn)單纱烘。

如何行動(dòng)?

? ? ? ?既然已經(jīng)知道了研發(fā)的真相祈餐,而真相又如此簡(jiǎn)單擂啥,就是“增刪改查”,那應(yīng)該如何行動(dòng)呢帆阳?

? ? ? ? 項(xiàng)目研發(fā)管理核心是要做好三點(diǎn):1. 提升效率哺壶;2. 保障質(zhì)量;3. 降低成本蜒谤;如果提升效率和保障質(zhì)量做好了山宾,成本自然就會(huì)大大下降,所以實(shí)際只需要解決提升效率和保障質(zhì)量這兩個(gè)問題鳍徽。這跟“增刪改查”有什么關(guān)系呢资锰? 當(dāng)然有關(guān)系。既然研發(fā)就是做增刪改查旬盯,那只要把增刪改查研發(fā)的效率提升上去了台妆,則總體效率自然就提高了翎猛。 “增刪改查”的功能開發(fā)效率又能提高到什么程度呢胖翰? 前人已經(jīng)做過很多嘗試了,比如Java開發(fā)中Mybatis代碼自動(dòng)生成器切厘,可以把跟數(shù)據(jù)庫(kù)操作(即增刪改查)的常用代碼生成好萨咳;市面上還有一些開源的代碼生成器;還有類似與萬(wàn)能表單代碼生成器(可建表疫稿,自定義配置字段等) 等培他。我早期的時(shí)候曾花了很長(zhǎng)時(shí)間研究代碼生成器鹃两,用于提升研發(fā)效率,經(jīng)過很多次的實(shí)踐舀凛、調(diào)整俊扳、驗(yàn)證,始終覺得不滿意猛遍,最終放棄了這種思路馋记。?

? ? ? ? 代碼生成器雖然能在一定程度上提升研發(fā)效率,但弊端也很明顯懊烤,主要有:

? ? ? ? 1. 出現(xiàn)大量相似(甚至相同)代碼(生成的代碼相似度通常都90%以上梯醒,甚至相識(shí)度達(dá)到99%),維護(hù)代價(jià)大腌紧;

? ? ? ? 2. 往往只是局部代碼茸习,沒有完整功能;

? ? ? ? 3. 往往沒法支持復(fù)雜的邏輯壁肋,若需要支持復(fù)雜業(yè)務(wù)邏輯号胚,需要做大量變更開發(fā)工作;

? ? ? ? 這些弊端浸遗,導(dǎo)致其在一個(gè)公司內(nèi)部中大型項(xiàng)目中涕刚,基本不再被使用。

? ? ? ? 那應(yīng)該怎么做乙帮? 我的思路是:把“增刪改查”做成無(wú)需開發(fā)的功能杜漠,只需要配置即可。配置的形式可以根據(jù)不同語(yǔ)言而定察净,比如PHP驾茴,可以直接用數(shù)組形式進(jìn)行配置。 我把這個(gè)思路定位為“配置驅(qū)動(dòng)開發(fā)”氢卡,把所有常用的功能锈至,組件,包括特殊功能等译秦,都做成可配置項(xiàng)的形式峡捡,最終做到除復(fù)雜的核心業(yè)務(wù)功能需要重點(diǎn)開發(fā)外,90%以上的功能無(wú)需開發(fā)即可完成筑悴,可以極大的提升研發(fā)效率并保障研發(fā)質(zhì)量们拙。

注:下一篇我將重點(diǎn)講解“什么是配置驅(qū)動(dòng)開發(fā)”。 請(qǐng)各位讀者多給些反饋阁吝,覺得寫得不錯(cuò)的給個(gè)贊砚婆,覺得寫得爛的拍個(gè)磚。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末突勇,一起剝皮案震驚了整個(gè)濱河市装盯,隨后出現(xiàn)的幾起案子坷虑,更是在濱河造成了極大的恐慌,老刑警劉巖埂奈,帶你破解...
    沈念sama閱讀 216,997評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件迄损,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡账磺,警方通過查閱死者的電腦和手機(jī)海蔽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)绑谣,“玉大人党窜,你說我怎么就攤上這事〗柘” “怎么了幌衣?”我有些...
    開封第一講書人閱讀 163,359評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)壤玫。 經(jīng)常有香客問我豁护,道長(zhǎng),這世上最難降的妖魔是什么欲间? 我笑而不...
    開封第一講書人閱讀 58,309評(píng)論 1 292
  • 正文 為了忘掉前任楚里,我火速辦了婚禮,結(jié)果婚禮上猎贴,老公的妹妹穿的比我還像新娘班缎。我一直安慰自己,他們只是感情好她渴,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,346評(píng)論 6 390
  • 文/花漫 我一把揭開白布达址。 她就那樣靜靜地躺著,像睡著了一般趁耗。 火紅的嫁衣襯著肌膚如雪沉唠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,258評(píng)論 1 300
  • 那天苛败,我揣著相機(jī)與錄音满葛,去河邊找鬼。 笑死罢屈,一個(gè)胖子當(dāng)著我的面吹牛嘀韧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播儡遮,決...
    沈念sama閱讀 40,122評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼乳蛾,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了鄙币?” 一聲冷哼從身側(cè)響起肃叶,我...
    開封第一講書人閱讀 38,970評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎十嘿,沒想到半個(gè)月后因惭,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,403評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡绩衷,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,596評(píng)論 3 334
  • 正文 我和宋清朗相戀三年蹦魔,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片咳燕。...
    茶點(diǎn)故事閱讀 39,769評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡勿决,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出招盲,到底是詐尸還是另有隱情低缩,我是刑警寧澤,帶...
    沈念sama閱讀 35,464評(píng)論 5 344
  • 正文 年R本政府宣布曹货,位于F島的核電站咆繁,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏顶籽。R本人自食惡果不足惜玩般,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,075評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望礼饱。 院中可真熱鬧坏为,春花似錦、人聲如沸镊绪。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)镰吆。三九已至帘撰,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間万皿,已是汗流浹背摧找。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留牢硅,地道東北人蹬耘。 一個(gè)月前我還...
    沈念sama閱讀 47,831評(píng)論 2 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像减余,于是被迫代替她去往敵國(guó)和親综苔。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,678評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容