個人感覺,程序開發,是一個處理信息的過程。 一開始,我們什么都不知道,需求也是模糊的。 在需求分析過程中,我們漸漸能夠看清到底需要完成什么功能。 但是如何實現這樣的功能,我們還是不了解。 在設計階段,我們根據需求的內容,嘗試一個個原型,直至找到合適的,或者根據需求
創造出一個。 事實上,需求的信息量如此之大,可能有很多的原型,才有可能覆蓋住需求的要求。 之后是裁剪,組合,分割,把需求的信息量,整理成原型的模樣, 需求的信息處理得清清楚楚,整整齊齊。 最后還要看看有沒有信息遺漏的。 之后是寫代碼和寫文檔,確保這個過程中,信息沒有變化。
實際中,信息流不是那么清晰的,會有一些正反饋和負反饋, 信息在傳遞的過程中還會有失真和遺漏,于是傳遞系統就有了冗余和校驗。
一個新視角,可以帶來新的理論和方法,比如用信息處理的方法來指導軟件的設計和開發。 我想,應該有人在這方面做過研究的。