逆向法學編程_風聞
code2Real-有人就有江湖,有code就有bug2021-05-17 09:32
上學時,老師説,計算機技術其實很簡單,絕大多數理論早在計算機誕生之前,就由數學家、自動控制工程師解決了。 計算機模型在這些大師腦海裏已經存在很久了,只待電子電路技術取得突破,就形成星火燎原之勢。
這話讓我思考了很久。
受鍾道隆逆向英語法的影響,有人提出笨方法學python,有人提出逆向學習編程。
(這個人提的)逆向法學編程只是推進到彙編語言,建立編程的底層思維。
這個建議是有效的,畢竟不學彙編,對編譯原理、操作系統的知識的認識難以深刻。
但是這還不夠。
老師説過,計算機的發明者其實並不是學計算機出身的。這是一個先有雞還是先有蛋的問題。
這些發明者本身已經在自己的領域是大神級人物,解決計算機問題只是舉手之勞。
甚至在軟件發展到瓶頸階段,一些大神從其它領域獲得靈感,如計算機架構實際上是建築架構上獲得靈感。
至此,逆向法學編程可以進一步延伸到更原始的領域,如數學、自動控制、數電、模電、建築、影視製作、醫學等等。
數學自然是軟件建模、算法設計的基礎。
自動控制、數電、模電是傳感器、物聯網、外設驅動開發的基礎。許多人會編程之後,面對真實問題不知道如何下手,就是因為不知道如何與真實系統打交道,不知道如何處理硬件、控制、業務流程等問題。
建築是軟件系統設計、架構的靈感源泉。
影視製作對項目管理有益,有一本書就是講如何通過學習影視製作提高軟件項目管理。
醫學對系統診斷、調試有幫助,醫生面對的人體是一個灰箱系統,如何快速定位病因已經積累了幾千年的經驗了,而軟件開發的歷史不超過75年(雖然第一個程序是200年前由ada寫出來的,但是這個程序當時沒有硬件可運行)。當然學中醫更有啓發性,西醫純粹是依賴各種化驗數據,但是目前,計算機系統還沒有提供足夠的CT、核磁、驗血數據,關鍵時刻,還得靠中醫的望聞問切。
總之,他人之石,可以攻玉。
曾經在學C++時,長期對面向對象編程沒有感覺,生搬硬套,直到用三天學完python後,對OO編程豁然開朗。
一些電腦極客其實並沒有受到計算機高等專業教育,計算機技術也並非全靠自學的,他們之所以能成為大神級人物,其實是因為他們自帶其它領域大神級思維,只不是用計算機技術展現出他們大神級超能力。
就象孫悟空在拜菩提之前,已經在花果山的石頭裏吸取日月精華很長時間了,早已慧根深種。
當菩提講道時,別人都沒有反應,他卻聽出其中的奧妙,禁不住手舞足蹈。