軟體開發的哲學思考
來源:互聯網
上載者:User
軟體開發的哲學思考
(2002.01.11) 來自:電腦世界 棗莊張偉 編譯
譯者註:這篇文章雖然年代久遠(1996年寫的,對於IT行業來說用'久遠’二字應該說還是十分合適的),但讀過之後還是為作者的才華所傾倒,這是不可多見的一篇文章。
卡內基-梅隆軟體開發學院及其它學院的研究人員用盡畢生的精力去定義一個理論學科(即軟體開發理論),到後來才發現仍有很多東西比較模糊,他們對此也不隱瞞。軟體開發,自從產生以來,它以迷人的風采征服了許許多多有才華的人,一些教授、專家學者及商業管理人士不由提出這樣一個問題:即然軟體能迷住這麼多人,為什麼人類無法定義它、解釋它,深刻地瞭解它?為什麼一些天才的科學家窮其一生的精力也不能把這些迷惑歸納成一種科學工程學科或行業標準?
我們當中的大部分人,特別是商人、工程師及學術機構研究人員把電腦與軟體看成一個非常普通的東西,他們用各種荒唐的方式同電腦交流,電腦對來自使用者的威脅與譴責充耳不聞。軟體無處不在,然而軟體卻常常表現為失敗、罷工及不正常,這主要有兩方面原因:一是程式失敗,就會導致檔案定義不準確,最後軟體表現為罷工、不正常;二是一些軟體開發主管胡亂指揮,逼迫軟體應用一些華而不實的技巧來實現主管們不切實際的想法及美妙的空想。
緩慢的軟體開發與互連網訪問佔用了人們大部分時間,尤為重要的是,這兩方面在當代都容易使人上癮。一旦上癮,正常的人也會成為檔案處理、檔案上傳及下載的奴隸,這種情況大都要歸結為管理它的軟體具有一定的缺點。這時不得不讓人疑惑:我們能蓋摩天大廣告、能造速度很快的賽車及高效能電子產品,我們甚至能理解量子力學及亞原子,那為什麼我們不能開發出高品質的軟體?
【神秘背後的真相】
軟體開發的本質就是基於人類思考的一種心智活動,電腦及運行其上的軟體就是人類大腦活動的一面鏡子,因此軟體開發同樣也面臨心理學與精神學所固有的一些問題。眾所周知,心理學的所有目的不外乎去瞭解人類難以捉摸的靈魂,一些醫學專業人員研究這方面。軟體開發與之相比,情況可能會更糟糕,因為軟體開發畢竟只是人類智力活動的一個模型,它來自於人類的智力思考。不管你承不承認,智力活動只是靈魂行為的一部分。
從相當多的方面來看,軟體與心理學的關係要比工程學、技術及數學的與心理學的關係要近的多,這是因為軟體直接來自於人類靈魂的思索,上等的軟體常常要藉助於靈魂的創造性。與藝術相比,軟體缺少了藝術之美;與自然科學相比,它缺少一點正規性。此外,軟體永久只能是軟體開發人員的心理模仿。