2018年10月5日 星期五

富碼時代

重新移植Forth,但為何要新的語言,以及語言應會如何發展,我有疑惑。
因為已進入資訊時代,我發現程式開發行為也變得不同。
以前人要去了解原理,再轉成程式。但現在不是,都是網路上找原始碼,再加以拼裝。
這樣的行為在年輕及老工程師之間變成很大的行為不同。
為何行為不同?
個人發現,因為資料取得的方式不同,造成行為不同。

這個差異,我分成二個時代,貧碼時代及富碼時代。
貧碼時代,因為原始碼取得不易,大部分程式碼要自己寫,工具也不是很好,除錯方法有限。
所以工程師要對原理很清楚,不然程式跑不對,就無法從其他儀器或是除錯器上來看。
工程師會要求別人很仔細的看別人的程式,或是很追求程式效率。因為以前CPU跑很慢,效率加速是很明顯的。
再來網際網路出現,開始進入富碼時代。年輕一輩因為可以找到原始碼,且工具進化,有程式產生器。
程式設計變成富碼的設計方式。程式可以很容易下載到函式庫,很容易安裝,有各式各樣的函式庫取用。
利用別人的函式庫,很容易達成基礎建設,所以心力轉去應用架構上的設計。

那一個新起來的語言,變成別人不會在乎它是不是真的有效率,而是在乎它有沒有龐大的應用函式庫。
富碼時代,語言會傾向使用解譯式,因為效率不重要,反而是大型架構下,能不能重態修改程式。這種想法是受到網路程式javascript的設計style影響。
已不是說使用在MCU或是什麼領域上,而是新生代工程師認為那是理所當然。

個人是MCU工程師,這個領域在變。之前的貧碼時代已經很久了。
最近MCU開始支援Quad SPI Flash XIP模式。程式空間爆增。
於是正式要進入富碼時代,已不會因為程式空間太小,限定了程式的發展。
程式空間一大,各式工具程式就會開始使用。
MCU在富碼時代應如何開發,是新的議題了。