以放松、扯淡的目光來看此文秕豫。這是一篇講“術(shù)”和“道”的文章朴艰。
一、序
哈哈混移,今天晚上做了一道題祠墅,雖然沒有做出來,但做的過程中歌径,引發(fā)了很多思考毁嗦。
當(dāng)然最多的,還是關(guān)于思維方式的思考沮脖。
第一個事情金矛,有時問題的情景很重要。
先說說那道題勺届,
假設(shè)一張試卷驶俊,上面有6道4分題,8道5分題免姿,8道7分題饼酿。總共120分胚膊。
每題答對就得相應(yīng)的分數(shù)故俐,打錯0分。問一個人卷面總分有多少種可能紊婉。
假如只用純數(shù)學(xué)來描述:
在m<=6,n<=8,k<=8的情況下药版,4m+5n+7k總共有多少可能?
雖然題沒答出來喻犁,但是發(fā)現(xiàn)一個事情槽片,如果一開始直接給的是純數(shù)學(xué)問題描述的話何缓,我就不會想到:竟然會有一種對稱性在里面。
能答對42分还栓,就有答對78分的情況碌廓,這是因為能得42分的那些題我不答,其他的都答對剩盒,自然會得到78分谷婆。
說明一個問題是啥呢?有很多抽象的東西辽聊,也許放到具體情境中就能理解了纪挎。讓我不由得想起一筆畫問題。
說一個圖形能否用一筆畫成跟匆,其中蘊含了一個數(shù)學(xué)原理廷区,即奇頂點(線段的交點連接的線段個數(shù))的個數(shù)為0或2,就能一筆畫成贾铝。
當(dāng)時學(xué)拓撲學(xué)時隙轻,就想為啥是0和2這兩個數(shù)字呢。后來想明白了垢揩,一筆畫個東西玖绿,可以想象成,你在走一個迷宮叁巨。
既然是迷宮斑匪,那么就有出口和入口。哈哈锋勺,2這個數(shù)字出來了蚀瘸。0的情況正是入口即出口。
原來如此庶橱!
記得高中時贮勃,學(xué)判斷病句時,有個例子:
“圍墻用的是紅磚砌的”苏章。
此句子讀起來怪怪的寂嘉,拿不準(zhǔn),所以我們可以用自己熟悉的東西來類比枫绅,比如:
“代碼用的是js寫的”泉孩。
果然很怪,應(yīng)該說“代碼是用js寫的”并淋,因此要改成“圍墻是用紅磚砌的”寓搬。
這里說了一個類比的事情,然而很多事情都可以用類比來解決县耽。
最好的說明方法是什么句喷?
打比方曼尊、舉例子。
因此文章寫的通俗易懂的原因就是脏嚷,用的全是讀者熟悉的語言。
反過來說瞒御,一個會學(xué)習(xí)的人父叙,肯定會舉一反N。
一個人的聰明程度怎么來刻畫肴裙,是看他對任何兩個不同事物趾唱,找到其最大的相似程度。
說有一道題蜻懦,請寫出接下來的數(shù)字是什么甜癞?
1、12宛乃、1悠咱、1、1征炼、( )
此問題是非常難的析既,其中最有提示信息的數(shù)字是12。由12你能想什么谆奥?
想到12生肖眼坏、12月份。能否想到鐘表呢酸些?
此題的答案是2宰译,刻畫老式臺鐘打點的個數(shù)。
我也是反思不得其解魄懂,看到答案的馬后炮沿侈。哈哈。
不過市栗,有一點很肯定肋坚,能在沒看答案情況下回答出來的,那肯定是聰明人肃廓。
說到相似性這個問題智厌,不得不說另一件事情:轉(zhuǎn)化問題的能力。
二盲赊、善于轉(zhuǎn)化問題的人是聰明人
先說一個我特別崇拜的人铣鹏,是誰呢,計算機之父之一:馮諾依曼哀蘑。
此人非常屌诚卸,基本上他插手的任何一個領(lǐng)域葵第,那都有成就的,比如博弈論合溺。
在我看來卒密,喬布斯在他面前就是個小學(xué)生。
之所以說他棠赛,是因為我要引用其師傅希爾伯特的一句話:
有一個問題你不知道怎么解決哮奇,說明有個類似相對簡單的問題你不知道怎么解決。
希爾伯特睛约,也是個屌得飛起的人物鼎俘,對于此人,學(xué)數(shù)學(xué)的同學(xué)肯定知道的辩涝。
他說的這句話贸伐,是有遞歸的意味在里面的。
用在我們前端怔揩,有個問題你不知道怎么解決捉邢,經(jīng)驗是一方面原因,另一方面是基礎(chǔ)不扎實商膊。
舉個例子歌逢,有什么辦法迅速走出迷宮?
手機上的迷宮游戲翘狱,太過簡單秘案,因為我懂其原理,本質(zhì)是一筆畫問題潦匈。
解決方法阱高,就是從入口開始,手摸著墻迅速的跑下去茬缩。
再說一道題赤惊,有這么樣的一個長方體。
是一個一個正方體塊累積起來的凰锡,
長方體的邊長是2未舟,4,6.
請問體對角線會穿過幾個正方體塊掂为?
此題是考察轉(zhuǎn)換能力的裕膀,
立體的不會做,那么平面呢勇哗?
2乘以4的長方形昼扛,對角線會穿越幾個格子。
還是很難欲诺,再來看抄谐,有一條繩渺鹦,我拿著刀平分兩份,然后假設(shè)繩子沒斷再平分四份蛹含,那么最好繩子分成了幾段毅厚?
基本問題解決反推回去,就能解決浦箱。
由原先的對角線穿塊的問題吸耿,轉(zhuǎn)化了,把對角線切成了多少段的問題憎茂。
你想像一下,有一塊大豆腐锤岸,從三個方向(上竖幔、前、左)切開是偷,體對角線切成多少段拳氢。
通過這個例子,想說明轉(zhuǎn)化問題的能力也分兩個方面蛋铆。
第一馋评、從量的角度考慮,把復(fù)雜的問題刺啦,處理成簡單的問題留特。
比如問你,兩人在圓形桌子上玛瘸,輪流平鋪一元硬幣蜕青,誰放不下了,誰輸糊渊。請問先放的贏還是后放的贏右核?
簡化問題,直接把桌子想象成硬幣的大小渺绒,你說先放贏還是后放贏贺喝。
有一個小故事說的明白,
物理大會上宗兼,一個哥們問旁邊的人躏鱼,
“他講的n維空間你明白嗎?”
“明白啊殷绍,他一說n我就想象成3挠他。”
說道n維空間篡帕,有個說法對于4維空間的理解很有幫助殖侵,可見“聰明人”的思考方式:
“我們對于四維空間的理解贸呢,就像地面上的蟲子看不到高爾夫球掉進洞里,會覺得平白無故地消失了拢军±阆荩”
同樣的理論可以,用在我們前端茉唉。
那些框架的作者固蛾,肯定不是第一次寫框架,像我們想的那樣思路流云行水的敲出來的度陆。
簡單的問題艾凯,基本的模塊保不準(zhǔn)人家自己敲了n便呢。就算沒敲過懂傀,源碼至少沒少讀趾诗。
要想站在巨人的肩上,得首先爬上人家的肩膀頭蹬蚁。
第二恃泪、從質(zhì)的角度去考慮,找到抽象的本質(zhì)犀斋,然后再去找同類贝乎。
正如迷宮問題,抽象是數(shù)學(xué)那個公式叽粹,其同類是一筆畫問題览效。
其同類的使用方式,正好拿過來用虫几。
用設(shè)計模式的話來說朽肥,面向接口編程、或者依賴倒置原則持钉。
用絕世武功來說衡招,那是化功大法。
我甚至把這個東西用在了興趣培養(yǎng)之上每强,
原先我以為我喜歡數(shù)學(xué)始腾,初高中物理化學(xué)的不上心。
后來我發(fā)現(xiàn)我喜歡的是邏輯空执。這下包含了很多事物浪箭,所以喜歡編程、喜歡魔方辨绊、喜歡臺球奶栖、喜歡看心理學(xué)書籍、甚至學(xué)了很多專業(yè)的專業(yè)基礎(chǔ)課。
再后來我告訴自己不僅喜歡邏輯宣鄙,也對非邏輯的事情感興趣袍镀,聽歷史、看新聞冻晤、關(guān)心國家大事苇羡。跟人扯淡。
艾瑪鼻弧,就這一個例子设江,就能改變一個人那。
如果你喜歡籃球攘轩,別人問你興趣愛好是什么時叉存,你不要說籃球,而要說運動6劝铩歼捏!
三、逆向思維
最近看了《你不知道的js》够傍,其里面感謝了TC39的所有人甫菠,
我發(fā)現(xiàn)我知道其中幾個人的名字挠铲。原因是冕屯,他們是很多書的作者。
逆向思考:通過這個列表去找其相關(guān)著作拂苹。
大伙不是想看大神的博客那么安聘,那些人不正是大神嗎?
想起一道邏輯題瓢棒,怎么用3升和5升的水桶量出4升水來浴韭?
逆向思考:4必須放在5里面,5得減1脯宿。1怎么來念颈?3-2=1,2=5-3连霉,問題解決榴芳!
小時候我同學(xué)給我表演了一個魔術(shù):13張撲克牌A到K,從上面移動一張放在底部跺撼,然后亮出最上面的那張窟感,保證整個順序是A,2,3...K
艾瑪,當(dāng)時各種嘗試去擺在這個順序歉井,最后好不容易擺了出來柿祈。記住順序,向老爸炫耀。
他看了說躏嚎,3副撲克蜜自,我也能按你說的順序擺出來!只要反著操作就行了紧索!
一句話點醒夢中人那袁辈,從此逆向思維深深的印在腦海。
再說一個相關(guān)的事情珠漂,電視上講的破解騙子的手段晚缩,與其說教會大家怎么防騙,不如說教大家怎么去行騙媳危。
逆向思維的應(yīng)用不只是算算題那樣簡單的荞彼。
如果你能摸清作者的脈絡(luò),那么讀完后待笑,會覺得:如果讓你來寫鸣皂,也會寫出同樣的故事。
四暮蹂、有一個有時比是一個更重要
如果說做程序員對我影響最大的東西寞缝,就是設(shè)計模式了。
其中一個原則就是合成復(fù)用原則仰泻。
化功大法荆陆,是抽出精髓為我所用。那么乾坤大挪移集侯,就是借力打力被啼。
你不需要成為活百度,你會用百度就行棠枉。
你不需要成為富二代浓体,你可以嫁個有錢的老公,或者傍個干爹辈讶。
你不需要成為解決一切問題的牛逼所在命浴,你會提問題就行了,或者找個大神贱除。
你不需要到處投簡歷生闲,網(wǎng)上一扔即可。
所以此思維的方式勘伺,就是委托跪腹。
js的prototype其實就是一個委托機制,我這沒有飞醉,到干爹那找找冲茸,找到就當(dāng)是我的來用屯阀。恩哈!
我們?yōu)樯兑每蚣苤崾酰瑸樯兑胘q难衰,乾坤大挪移啊逗栽!
為啥有中介的存在盖袭,委托啊彼宠!
為啥項目經(jīng)理不需要干所有活鳄虱!他可以委托其他人,自己負責(zé)調(diào)度就行了凭峡。
拙已。。摧冀。
五倍踪、拳頭比刀劍更重要
一本小說的主人公說,拳頭練好了索昂,那才是真正自己的建车,借助道具算啥英雄。
因為法寶總有不在手里的時候椒惨。
所以我喜歡素顏的女生缤至!
這個其實是第四條的反面。
你要成為活百度框产,知道很多東西凄杯。
你要奮斗成為富一代错洁。
你要成為大神秉宿。
別人借你的雞下蛋,你要成為別人的嫁衣屯碴。
牛逼在這里描睦,天天跟司機說去這去那的,如哪天司機不在导而,自己也能開車去跑忱叭。
知其然,知其所以然今艺,知其不然韵丑,知其所以不然,這才是一個很高的境界虚缎。
很多高手都是創(chuàng)建別人手里的法寶的撵彻,多的不說了。
六、水平思考
我們從小到大陌僵,邏輯思維訓(xùn)練得差不多了轴合。
然而這種垂直的思考方式,很容易讓我們成為一個見到現(xiàn)象碗短,就去評判的人受葛。
本來你跟對方說個事情,沒想到對方聽完后偎谁,只會評價好壞总滩。
反過來我們對世界的總總,要去換種角度想問題巡雨,不去說no或yes咳秉,對或錯,好或壞鸯隅,真或假澜建,有用或無用。蝌以。炕舵。
而要說這很有意思,讓我聯(lián)想到其他事情跟畅,讓我產(chǎn)生了新的想法咽筋,提供我一個不熟悉的思路。徊件。奸攻。
任何東西只是觸發(fā)想法的跳板!
指哪打哪變成了打哪指哪虱痕。
如果沒用這種思考方式:他怎么這么裝岸媚汀?
用了水平思考后:我靠部翘,原來還可以這樣硝训。
又想起一個故事,說
面對家里爸爸經(jīng)常打罵媽媽的現(xiàn)象新思,三個兒子窖梁,有不同的看法:
老大:長大可不要結(jié)婚,真是墳?zāi)梗?/p>
老二:以后我要對媳婦好些夹囚。
老三:還可以這樣打老婆啊纵刘。
后記
寫到這里,基本寫完了荸哟,看起來有點虎頭蛇尾假哎,太困了蛔翅,邏輯不太清晰。
估計沒有今天的熬夜位谋,此文是不會出的山析。
下面說說關(guān)于此文相關(guān)說明,我喜歡寫這種文章掏父,不過一般都發(fā)布在qq空間里笋轨。
所以就有一個問題,寫在本站赊淑,合適不合適的問題爵政,畢竟這是一個技術(shù)網(wǎng)站。
假如我是大神級別的人物陶缺,把標(biāo)題換成《前端開發(fā)的思考方式》钾挟,
并且去掉非前端的例子。那么也許就合適了饱岸。
后來覺得掺出,是因為本站的一道題,觸發(fā)了這篇文章的產(chǎn)生苫费,所以還是放在了這里汤锨。
我把它歸類于面試題中,只是因為文中提到了很多邏輯題百框。
任何觀點闲礼,都會得到正反兩面的評價。
不過我希望讀者能像文章提到的水平思考那種思考方式铐维,去看待此文柬泽,
不說此文是好還是壞,關(guān)心是否觸發(fā)了你的思考是關(guān)鍵嫁蛇。
我從小到大锨并,就堅信,最好的知識是關(guān)于如何掌握學(xué)習(xí)方法的方法棠众。
一樣?xùn)|西是“術(shù)”琳疏,我要掌握它的“道”有决,進而要掌握各種“道”的“道”闸拿。
文中講的東西,沒多少完備性和正確性之說书幕。只是一晚上的思緒新荤,純屬一家之言。
不過我可以推薦一些相關(guān)的書籍台汇,也許你也對此感興趣苛骨。
《水平思考法》篱瞎、
《創(chuàng)新思維:解決問題的19個公式》、
《影響力》痒芝、
《思考俐筋,快與慢》、
《清醒思考的藝術(shù)》严衬、
《黑天鵝》澄者、
《萬萬沒想到:用理科生思維理解世界》
上面這些書,都讀過请琳,當(dāng)然也有其他類似的書粱挡,沒列出來。
《黑天鵝》讀起來比較晦澀俄精。建議至少讀一下《清醒思考的藝術(shù)》询筏。
本文完。