00
首先聲明一下,本人對編程不太懂,對軟件工程思想的理解更是淺薄,技術(shù)大牛們不要噴我!
01
在 《西游記》 “車遲國斗法”一集中,孫悟空與虎、鹿、羊三妖怪斗法的時候,有這樣一幕,孫悟空和虎力大仙比試求雨,看看誰能求得到。
虎力大仙先求雨,他采用的是道家的“五雷法”進(jìn)行求雨。按理說,五雷法確實是正法,是經(jīng)過天庭認(rèn)證的。無論是誰,只要能修煉出此法,就相當(dāng)于獲得了調(diào)用該項資源的證書。只要使得出此法,雷公雷母就會乖乖地打雷、刮風(fēng)、下雨的。
因為對于雷公,雷母而言,“五雷法”就相當(dāng)于一個調(diào)用“祈雨”的接口函數(shù),只要有別的程序調(diào)用,他們就要乖乖地去執(zhí)行,而不會去驗證調(diào)用的人是誰。
如果沒有孫悟空的搗亂,虎力大仙是可以順順當(dāng)當(dāng)?shù)厍髞硪粓鲇甑摹5菍O悟空卻依仗自己administrator的身份,采用暴力的方式迫使函數(shù)調(diào)用的過程中斷,并強行修改“祈雨”接口函數(shù)參數(shù),使得該函數(shù)只為自己所用,別人無法調(diào)用,霸道之至。
孫悟空趁虎力大仙求雨的時候,跑到天上威脅風(fēng)雨雷電諸神:
我保護(hù)唐朝圣僧西天取經(jīng),路過車遲國,與那妖道賭勝祈雨,你們怎么不助老孫,返助那道士?我且饒你,把風(fēng)收了。若有一些風(fēng)兒,把那道士的胡子吹得動動,各打二十鐵棒!
在這里,孫悟空實際上扮演了360安全衛(wèi)士和代碼監(jiān)管者的雙重角色,作為前者,他強行阻止了電腦中一些“可疑”程序?qū)诵馁Y源,如dll,exe之類文件的調(diào)用。
作為后者,他強行修改了“祈雨”接口函數(shù)的參數(shù),原來該函數(shù)的格式是這樣的:祈雨函數(shù)(祈雨地點 as string,祈雨時間 as time),也就是說原來只有兩個參數(shù),不論是誰,只要擁有了調(diào)用的權(quán)限,就可以隨時進(jìn)行調(diào)用。
但孫悟空卻迫使程序開發(fā)者臨時增加了一個參數(shù),祈雨人,變成了這樣的格式:祈雨函數(shù)(祈雨地點 as string,祈雨時間 as time,祈雨人 as name)as Boolean,并且加了一個判斷:if 祈雨人=“孫悟空” then true,else false。這樣就從程序底層徹底封死了虎力大仙成功調(diào)用祈雨函數(shù)的可能性。
因此出現(xiàn)了這種局面:
孫悟空這一邊:
行者道:我將棍子為號,棍子往上一指,就要刮風(fēng);棍子第二指,就要布云;棍子第三指,就要雷鳴電灼;棍子第四指,就要下雨;棍子第五指,就要大日晴天,卻莫違誤。***
而虎力大仙那一邊:
那道士愈加著忙,又添香、燒符、念咒、打下令牌。卻果然雷也不鳴,電也不灼。***
可憐的虎力大仙至死也不知道背后的玄機,他一直以為是自己函數(shù)調(diào)用方式有問題,一直在可憐巴巴地修改、配置、調(diào)試各種環(huán)境變量與參數(shù)。豈不知,他所調(diào)用的函數(shù)已經(jīng)多了一個參數(shù),參數(shù)個數(shù)已經(jīng)不匹配了,調(diào)用怎么可能成功?
估計孫悟空在修改調(diào)用函數(shù)的時候,故意使了一個壞兒,在祈雨函數(shù)調(diào)用不成功的時候,沒有給出“Error:第3行,參數(shù)個數(shù)不匹配”之類的錯誤提示。
在那樣生死攸關(guān)的危急關(guān)頭,虎力大仙也沒有足夠的耐心和信心去進(jìn)行debug調(diào)試,所以也很難發(fā)現(xiàn)其中的錯誤。
02
孫悟空,一個地質(zhì)勘探人員/旅游導(dǎo)游/武術(shù)家/花果山創(chuàng)業(yè)者/取經(jīng)公司高管,一個有理想有道德的“斜杠青年“,不僅懂管理,善協(xié)調(diào),還喜歡親自沖鋒陷陣。最重要的是,懂編程,關(guān)鍵時候還能自己動手修改代碼,這樣優(yōu)秀的綜合業(yè)務(wù)能力,難怪最后成仙成佛。
Knuth 曾經(jīng)說過:A person does not really understand something until after teaching it to a computer。”
計算機并不聰明,它只能執(zhí)行絕對有邏輯的事情。換句話說:你在教計算機事情的時候,當(dāng)你在coding的時候,其實是在厘清自己的思考與整件事的邏輯。
Coding可以明事理,強邏輯,可以從中找尋到如玉的顏值,似黃金的屋子。
就連美國總統(tǒng)奧巴馬都號召,全民學(xué)習(xí)編程,編程從娃娃抓起:
不要只是買一個視頻游戲,更要去制作它。不要只是下載一個最新的應(yīng)用,更要去幫助設(shè)計它。不要只是玩玩你的手機,更要去學(xué)會編程。沒有人生來就是計算機科學(xué)家,但是僅需一些苦功,一些數(shù)學(xué)和科學(xué)知識,每個人都能成為一個計算機科學(xué)家。”*
03
又到一年高考季,又是考生填志愿時,看了上面這么多對coding專業(yè)介紹,這么多的優(yōu)勢與推崇,你還在猶豫什么呢?………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………趕快閃啊!