編程思想之——"人是活的掐隐,程序是死的"

姓名:王紫圣 學(xué)號(hào):16130140355

【嵌牛導(dǎo)讀】編程的思想衫冻,不能只知道一條路

【嵌牛鼻子】換一種方式去想

【嵌牛提問】編程的時(shí)候要懷有怎樣的思想?

【嵌牛正文】

轉(zhuǎn)載自:原創(chuàng) 2017-03-03 追隨微笑 博客園

"人是活的蛮拔,程序是死的"這句話我時(shí)常提起孕荠,可能很多人不是很理解我為什么會(huì)這樣說,下面我就簡(jiǎn)單來談?wù)勎覍?duì)這句話的理解阿迈。

1.不要因?yàn)榧夹g(shù)而技術(shù)元媚,技術(shù)選型的初衷是需求。

現(xiàn)在很多人在做項(xiàng)目的時(shí)候苗沧,開口就提項(xiàng)目用的NoSql刊棕、大數(shù)據(jù)處理、分布式系統(tǒng)等等技術(shù)待逞。技術(shù)真的這么重要嗎甥角?

技術(shù)在軟件開發(fā)過程中的地位是不言而喻的,但是一個(gè)項(xiàng)目選擇合適的技術(shù)去實(shí)現(xiàn)是很有必要飒焦,也是一個(gè)很好的學(xué)習(xí)機(jī)會(huì)蜈膨。

比如做一個(gè)簡(jiǎn)單的人事管理系統(tǒng),簡(jiǎn)單的說就是對(duì)數(shù)據(jù)的添加牺荠、刪除翁巍、修改。

但是隨著NoSql的普及和運(yùn)用休雌,很多人在設(shè)計(jì)的時(shí)候可能會(huì)想用緩存可以減輕數(shù)據(jù)庫壓力灶壶,增加數(shù)據(jù)的讀取速度等等優(yōu)點(diǎn)。

圖片發(fā)自簡(jiǎn)書App

從設(shè)計(jì)圖可以看出基本的設(shè)計(jì)杈曲,設(shè)計(jì)之初就想到NoSql的好處驰凛,但是很多問題都沒有考慮到,比如:數(shù)據(jù)的同步策略担扑、簡(jiǎn)單數(shù)據(jù)用NoSql效率真的比直接用數(shù)據(jù)庫高恰响,高好多等等問題?

所以說技術(shù)和需求是相輔相成的涌献,單一的需求或者技術(shù)就是咩有意義的胚宦,那么在需求變更過程中選擇恰當(dāng)?shù)募夹g(shù)解決問題很重要、很重要?

2.做功能之前請(qǐng)不要先說效率枢劝,請(qǐng)先完成功能在進(jìn)行優(yōu)化效率井联。

編碼的運(yùn)行效率直接影響到系統(tǒng)的運(yùn)行速度是非常重要的,但是當(dāng)你遇到一個(gè)問題的時(shí)候您旁,一起討論問題的時(shí)候烙常。你是否最先想到的如果去解決問題,而不是看別人意見的缺點(diǎn)(這樣效率高不高鹤盒、影響性能高不高蚕脏、安全性等問題)?

我這里不是說考慮這些不好侦锯,而是當(dāng)你在想到一個(gè)比較的成熟的處理辦法之后蝗锥,你在去想這些問題÷蚀ィ可能會(huì)有人提出質(zhì)疑,這樣做是不是太片面了汇竭、不利擴(kuò)展性等等問題葱蝗?是這邊必須承認(rèn)有這樣的問題,但是一個(gè)功能都沒有做出來细燎,想這些問題有用两曼?

比如在遇到webapi請(qǐng)求后,根據(jù)actionID去判斷執(zhí)行對(duì)應(yīng)的fun時(shí)候

1.用if去完成

if(ActionID==1)

? functioin1();

else if(ActionID==2)

? functioin2();

else

? functioin3();

可能就會(huì)有人說這樣寫玻驻,萬一ActionID太多不利于擴(kuò)展性悼凑,不夠靈活。

2.好吧我換成swith

Swith(ActionID)

? case 1:

? ? Function1();

? ? break;

? case 2:

? ? Function2();

? ? break;

? default:

? ? break;

可能還是會(huì)有上述的問題璧瞬。

3.好吧我再換一種吧

Dictionary<int,Action> fun =new Dictionary<string,Action>():

fun.add(1,function1);

fun.add(2,function2);

fun.add(3,function3);

if (Fun.ContainsKey(protoid))

? ? ? ? Fun[protoid].Invoke();

可能會(huì)有說這樣用影響性能啥的户辫。

其實(shí)最后我只想說一句,這些方法你都用過嗤锉,嘗試過渔欢?曉得會(huì)影響擴(kuò)展、安全瘟忱、性能奥额?如果真有,你有更好的解決辦法访诱?如果有更好垫挨,如果沒有那么還是建議你先一步一步的先去解決當(dāng)前的問題,那么在考慮下一步的其他問題吧触菜?

3.太過死板九榔,不懂靈活。

當(dāng)遇到一個(gè)問題的時(shí)候,一味的去新的方法或者新的東西上面去想辦法帚屉,不能仔細(xì)的回看自己原來做過的東西是否可以修改/重用谜诫?

比如一個(gè)如下的簡(jiǎn)單div組裝的TREE樹形結(jié)構(gòu)圖

<div id=‘SF’>

? ? <div id='1001'>四川省<div>

<div>

<div id='SJ'>

? ? <div id='10010'>成都市<div>

<div>

<div id='SJ'>

? ? <div id='10011'>綿陽市<div>

<div>

<div id='SJ'>

? ? <div id='10012'>德陽市<div>

<div>

當(dāng)知道一個(gè)市級(jí)的ID去查詢省級(jí)的ID

很多人覺得按照規(guī)范應(yīng)該是根據(jù)市級(jí)DIV然后去查詢父級(jí)的DIV然后在查詢ID,這個(gè)方法可行的攻旦,但是如果樹N多層數(shù)喻旷,不是需要查詢父級(jí)的父級(jí)...

其實(shí)認(rèn)真觀察之后會(huì)發(fā)現(xiàn)每個(gè)市級(jí)的ID 和父級(jí)ID 是有關(guān)系的,可以直接操作ID變化牢屋,組裝父類ID且预,但是如果父類和子類沒有關(guān)系...

一個(gè)div標(biāo)簽其實(shí)不但可以ID,還可以用其他屬性表示其關(guān)系或者對(duì)應(yīng)的ID烙无,然后根據(jù)其他屬性查詢锋谐,但是可能在規(guī)范性會(huì)有點(diǎn)小問題...

在初始化的時(shí)候 ID 可以是 SJ+ID這樣組合,然后切割I(lǐng)D就可以查詢組裝...

如果上述都不行截酷,可以不用DIV組裝用JqTree等等

這個(gè)例子其實(shí)就是想表達(dá)一個(gè)其實(shí)解決一個(gè)問題的辦法多種多樣涮拗,一種不行換一種,條條大路通羅馬迂苛。

上述都是個(gè)人的認(rèn)識(shí)和理解三热,僅僅代表個(gè)人觀點(diǎn),有更好觀點(diǎn)歡迎斧正三幻,謝謝就漾!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市念搬,隨后出現(xiàn)的幾起案子抑堡,更是在濱河造成了極大的恐慌,老刑警劉巖朗徊,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件首妖,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡荣倾,警方通過查閱死者的電腦和手機(jī)悯搔,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來舌仍,“玉大人妒貌,你說我怎么就攤上這事≈恚” “怎么了灌曙?”我有些...
    開封第一講書人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)节芥。 經(jīng)常有香客問我在刺,道長(zhǎng)逆害,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任蚣驼,我火速辦了婚禮魄幕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘颖杏。我一直安慰自己纯陨,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開白布留储。 她就那樣靜靜地躺著翼抠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪获讳。 梳的紋絲不亂的頭發(fā)上阴颖,一...
    開封第一講書人閱讀 49,166評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音丐膝,去河邊找鬼量愧。 笑死,一個(gè)胖子當(dāng)著我的面吹牛帅矗,可吹牛的內(nèi)容都是我干的侠畔。 我是一名探鬼主播,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼损晤,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了红竭?” 一聲冷哼從身側(cè)響起尤勋,我...
    開封第一講書人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎茵宪,沒想到半個(gè)月后最冰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡稀火,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年暖哨,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片凰狞。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡篇裁,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出赡若,到底是詐尸還是另有隱情达布,我是刑警寧澤,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布逾冬,位于F島的核電站黍聂,受9級(jí)特大地震影響躺苦,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜产还,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一匹厘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧脐区,春花似錦愈诚、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至倔叼,卻和暖如春汗唱,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背丈攒。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來泰國(guó)打工哩罪, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人巡验。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓际插,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親显设。 傳聞我的和親對(duì)象是個(gè)殘疾皇子框弛,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

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