国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

編程與人生(續(xù))

2007-12-29 00:00:00王愛勝
中國(guó)信息技術(shù)教育 2007年10期


  引題
  職業(yè)倦怠難免讓人發(fā)出“如果當(dāng)初”的感嘆,如遇“跳槽”、“轉(zhuǎn)行”、“深造”之類的時(shí)機(jī),卻又常被“優(yōu)柔寡斷”葬送。就像編寫程序,代碼用分支語(yǔ)句太多了,形成“質(zhì)疑”的思維定勢(shì)了。后悔不是良藥,允許自己或他人犯錯(cuò),善于改正就是好樣的。本專輯,我們將從決策與修正兩個(gè)角度試圖解開兩種心結(jié)。
  
 ?。ㄈ┓种В菏致房诘臎Q策
  
  我們經(jīng)常,甚至每天都在做出決策,只不過有時(shí)大有時(shí)小而已。換句話說,我們的人生時(shí)刻都處在緊急的丁字路口,左轉(zhuǎn)還是右轉(zhuǎn)經(jīng)常頗費(fèi)思量。一不小心選擇錯(cuò)了,要么是差之毫厘失之千里,要么背道而弛。
  用程序作判斷叫做分支,這種判斷的結(jié)果其實(shí)只有兩種。都說計(jì)算機(jī)很聰明,能夠做很多事,甚至使用專家系統(tǒng)可以幫助人來做出決策。計(jì)算機(jī)的聰明是從哪里來的呢?說到底很簡(jiǎn)單,人工智能的基礎(chǔ)就是分支結(jié)構(gòu)。但是,由于分支程序判斷條件是截然不同的“是”“非”關(guān)系,不存在模糊的判斷,所以,真要實(shí)現(xiàn)起不同層次的判斷來就顯得力不從心。比如,人生所遇需做出的判斷事,并非都是由“是”與“非”衡量。任何一個(gè)偉人,都有他成功的、正確的方面,即為了國(guó)家、民族的大義不惜生命去奮斗;但英雄也是人,也有人性的另一面,也可能犯不少的錯(cuò)誤,做出讓人失望的事。并且,他們身上的是非也不涇渭分明,在他們一生中的每一件事中都可能摻雜在一起,或多或少,甚至模糊不清。偉人尚且如此,我們平凡人更甚。
  要豐富單調(diào)的“是”“非”條件,可以借助于邏輯運(yùn)算。顯然,程序是建立在邏輯判斷基礎(chǔ)上的,但也并不是簡(jiǎn)單的“說一不二”,但是合理地運(yùn)用邏輯運(yùn)算就會(huì)好很多:用“或(or)”來拓展范圍,用“并(and)”來尋找共性,用“非(or)”來確定相對(duì),判斷就會(huì)復(fù)雜起來了。其實(shí),學(xué)會(huì)這樣的綜合考慮何嘗不是好事?我們生活在一個(gè)繁雜的世界里,待人待物就要能夠與他人求同存異,找出“并”的東西共同發(fā)展,在“或”的氛圍中互幫互利,在“非”的陣營(yíng)地廣交朋友,如此以來,就能把僅有兩種結(jié)果形式的邏輯內(nèi)涵豐富化,以應(yīng)對(duì)越來越復(fù)雜的局面,實(shí)現(xiàn)越來越多的目標(biāo)?;氐絾栴}的關(guān)鍵還是要看分支“條件”的構(gòu)成方式,由此更有機(jī)巧地決定轉(zhuǎn)向的目標(biāo)。不論是在“IF/Then”構(gòu)成的雙路分支判斷中,還是在由“Select”構(gòu)成的多路選擇判斷中,或許結(jié)果可能有很多,但是總歸只有一個(gè),如果要保證這個(gè)結(jié)果的正確性就需要強(qiáng)調(diào)條件的構(gòu)成。問渠哪得清如許,為有源頭活水來。只有保證了源頭的清楚明白,才能確保結(jié)果的正確。
  運(yùn)用分支嵌套能夠讓眼光放得更遠(yuǎn)些,做事更周到。在街頭的棋攤上經(jīng)??吹竭@樣的畫面,這位老頭說如果這樣走他會(huì)那樣走,那位老頭說如果那樣走他會(huì)這樣走,往往是執(zhí)棋者在走車、跳馬的爭(zhēng)論中舉棋不定。太多的“如果”,一層層地嵌套,不僅是走一步看三步的水平了,甚至是看到N步以后了。更有甚者,不顧老臉敗壞棋風(fēng),頻頻悔棋,最后不歡而散的局面也常有發(fā)生。是啊,如果有太多的如果,局面看上去就復(fù)雜了。超級(jí)計(jì)算機(jī)“深藍(lán)”下國(guó)際象棋時(shí),它判斷的條件可有千步、萬(wàn)步?當(dāng)然,簡(jiǎn)單的分支語(yǔ)句對(duì)“深藍(lán)”是不夠用的,單靠這種分支嵌套,計(jì)算機(jī)運(yùn)算速度再快也會(huì)吃不消的,而且結(jié)構(gòu)太復(fù)雜的程序代碼也難于編寫和理解,所以,“深藍(lán)”要借助其他數(shù)據(jù)結(jié)構(gòu)構(gòu)成搜索、篩選等更多有針對(duì)性的算法。
  總之,我們面臨是非問題的時(shí)候需要慎重決定,要預(yù)先看到不同選擇導(dǎo)致的不同后果,未雨綢繆強(qiáng)于亡羊補(bǔ)牢。尤其是對(duì)待人生選擇的大問題上,要多設(shè)想幾種情況,多看幾步棋局,盡量做到胸有成竹地當(dāng)機(jī)立斷,不要徘徊在丁字路口猶豫不決。
  
 ?。ㄋ模┱{(diào)試:允許自己和他人犯錯(cuò)
  
  不能不說,我們信息技術(shù)教師中很多是完美主義者。比如,使用軟件往往要用最新版本,因此安裝、卸載成為常規(guī)行為。我有段時(shí)間也不自覺有了追求“完美”的嗜好。記得剛開始在一個(gè)技術(shù)論壇上混的時(shí)候,對(duì)別人制作的軟件經(jīng)常是大加指責(zé),挑出一大堆的問題,也因此惹惱過壇友。其實(shí),我對(duì)自己的作品也是這樣,也經(jīng)常反思與悔過。有一天,我讀了一本叫《程序調(diào)試思想》的書,恍然大悟,知道自己的初衷雖沒錯(cuò),但是方向有錯(cuò)。發(fā)現(xiàn)問題固然很重要,解決問題也很重要,兩者結(jié)合才是正確的方法。軟件測(cè)試、程序調(diào)試已經(jīng)形成一個(gè)嶄新的專業(yè),甚至已經(jīng)有了自己專業(yè)的工程師。據(jù)說這一行目前大有前途。
  不少人許多時(shí)候都在與自己過不去。這樣說的原由,其實(shí)很簡(jiǎn)單,因?yàn)檫@樣的人不是缺乏發(fā)現(xiàn)問題的眼睛,是長(zhǎng)了個(gè)自找麻煩的腦子。自找麻煩并不是專門找自己的麻煩,而是總在找別人的麻煩,“挑剔”是他的信條。這樣的人,是一種虛無(wú)的完美主義者,對(duì)任何人、任何事都期待完美是他最大的意愿,并且時(shí)常用指責(zé)來付諸行動(dòng)。這樣的心態(tài)并不利于真正地發(fā)現(xiàn)問題、解決問題,不利于技術(shù)、人生的可持續(xù)性發(fā)展與提升。
  我們知道,在程序設(shè)計(jì)中,或者在應(yīng)用軟件時(shí),都經(jīng)常會(huì)碰到BUG(一種稱之為漏洞的不可預(yù)料的小錯(cuò)誤)。雖然BUG會(huì)影響系統(tǒng)的安全性、數(shù)據(jù)的準(zhǔn)確性和操作的方便性等,但是一般并不是致命的。在軟件工程上,對(duì)BUG有著科學(xué)的處理辦法,即在程序的調(diào)試中發(fā)現(xiàn)一部分,在各級(jí)測(cè)試中發(fā)現(xiàn)一部分,在軟件發(fā)布之后根據(jù)用戶反饋再發(fā)現(xiàn)一部分——對(duì)發(fā)現(xiàn)的問題及時(shí)發(fā)布補(bǔ)丁程序以求臨時(shí)解決,等到升級(jí)時(shí)進(jìn)行統(tǒng)一的修訂或改進(jìn)。所以說,問題本身雖然不可以預(yù)見,但是良好的程序設(shè)計(jì)工程師對(duì)出現(xiàn)問題的必然性是有著充分的應(yīng)對(duì)準(zhǔn)備的。
  無(wú)論是程序設(shè)計(jì)者,還是軟件的使用者,或者根本就不是一個(gè)與計(jì)算機(jī)有關(guān)的人,對(duì)待程序BUG與生活瑕疵都應(yīng)該是一致的。首先要善于發(fā)現(xiàn)問題,并善于修訂與改進(jìn)它。不論是自己修訂,還是借助他人的補(bǔ)丁進(jìn)行修訂,都是上策。如果僅僅用抱怨來對(duì)待它,即使是錯(cuò)在別人,你自己也會(huì)受到傷害。積極的方法就是要去調(diào)整心態(tài),糾正問題,用發(fā)展的視角去對(duì)待它,并以建設(shè)性的觀念去改進(jìn)它。
  調(diào)試程序是發(fā)現(xiàn)并解決BUG的重要方法,并已形成了比較完備的一套方法,甚至正在發(fā)展成一門學(xué)科,有了專門的程序調(diào)試工程師。對(duì)于比較小型的程序設(shè)計(jì),倒也不一定必須嚴(yán)格地遵循軟件工程實(shí)施規(guī)則,完全可以采用一些簡(jiǎn)單實(shí)效的方法來處理。
  其一,在調(diào)試之前要進(jìn)行靜態(tài)查錯(cuò)。先看看算法是否正確,其實(shí),這是在編碼之前就應(yīng)該做的工作;再查查有沒有筆誤,如,是不是把“i”誤寫成了“j”……
  其二,進(jìn)行數(shù)據(jù)測(cè)試。先要建立科學(xué)的測(cè)試數(shù)據(jù),尤其是要關(guān)注三種類型的數(shù)據(jù):一是具有一般性的數(shù)據(jù),二是臨界數(shù)據(jù),三是非法數(shù)據(jù)。BUG往往就出在后兩種數(shù)據(jù)處理上,要么是考慮不周,要么是受到了運(yùn)行環(huán)境的局限,總之是偶然間出錯(cuò)了。
  其三,進(jìn)行斷點(diǎn)跟蹤測(cè)試。即在程序中尋找多個(gè)位置使用顯示語(yǔ)句、交互程序等觀察此處的數(shù)值是否達(dá)到理想狀態(tài),從而找到問題所在,進(jìn)行相應(yīng)的調(diào)整。
  調(diào)試并非僅是對(duì)小錯(cuò)誤而言,往往也有可能查出較大的錯(cuò)誤。但是,總需要我們抱著一顆包容的心,能夠容忍自己或別人犯的錯(cuò),以海納百川之勢(shì)把問題化解,把可能或已經(jīng)造成的損失降到最低,盡力做到有容乃大的境界。有了這種境界,你再看錯(cuò)誤時(shí)的感覺就不再別扭,也不會(huì)再揪住別人的小辮子不放手,從而也就釋放了自己的內(nèi)心。比如,我小時(shí)就有過這樣一個(gè)心路過程,有段時(shí)間一位水平不高的數(shù)學(xué)教師給我任教,他經(jīng)常解錯(cuò)題導(dǎo)致我與同學(xué)都很煩他,也因此影響了我對(duì)數(shù)學(xué)的興趣。我后來的轉(zhuǎn)變緣于我那位極有智慧的班主任,他給我做思想工作時(shí)說:“你為什么就不當(dāng)成是一堂改錯(cuò)課來看呢?你能把她的錯(cuò)都改過來就是最大的成功了!”
  當(dāng)然,包容并不等同于姑息縱容,而是一種善意的理解。允許問題的發(fā)生,不等同于凡事粗心大意,心中仍然有一把尺子存在,只是不用它來衡量別人的是與非,而是用它來糾正謬誤,解決不足,持續(xù)改進(jìn)自己的心靈,不斷發(fā)展自己的人生。
  
  蒼山點(diǎn)題
  在這個(gè)“世界變化真的太快,你不明白會(huì)被淘汰”的時(shí)代,如何準(zhǔn)確地判斷、選擇,找出合理而現(xiàn)實(shí)的出路,這不僅僅是我們信息技術(shù)教師面臨的問題,其他學(xué)科教師、其他專業(yè)人員何嘗又不經(jīng)常面臨這樣的考驗(yàn)?在這樣的征途中,我們要善于原諒自己、諒解他人,修正錯(cuò)誤而不是陷于懷疑和挑剔的泥潭。
  本欄的熱點(diǎn)討論文章長(zhǎng)期征稿,只要有自己的思想,本欄又沒發(fā)表過,即可參加,具體形式參考本刊2007年第1~7期。聯(lián)系方式:wassoft@163.com。
  
  《?。∥蚁氲搅恕穼趨⒖即鸢?br/>  
  根號(hào)2鍛造機(jī)
  以VB為例,兩個(gè)按鈕所觸發(fā)的事件過程分別是:
  Text1.Text = Val(Text1.Text)+ Val(Text2.Text)
  Text2.Text = Val(Text1.Text)+ Val(Text2.Text)
  Label1.Caption = Val(Text2.Text) / Val(Text1.Text)
  交替點(diǎn)擊兩個(gè)按鈕,即可鍛造出黃金分割率。
  苛刻計(jì)算器
  其他幾種解答分別是:9801-8910=0891,9108-8019=10089,9108-8910=0198,8910-8019=0891,1089-0891=0198。當(dāng)然,用湊數(shù)法尋找答案比用編程更為方便。

青阳县| 淮安市| 小金县| 会宁县| 普定县| 余江县| 策勒县| 双流县| 喀喇沁旗| 阿尔山市| 平顶山市| 仲巴县| 特克斯县| 马鞍山市| 景德镇市| 随州市| 色达县| 福海县| 曲阳县| 东乌珠穆沁旗| 资中县| 甘孜县| 霞浦县| 进贤县| 吴堡县| 岳西县| 康马县| 南平市| 桐柏县| 石林| 乾安县| 阳山县| 乌兰浩特市| 兴安县| 邻水| 盐池县| 郓城县| 昂仁县| 蒲城县| 古蔺县| 辉县市|