對於事物的掌握的知識的等級
使用級 對於汽車,就是開車的知識,會踩油門和剎車,掛檔,轉方向盤就好了。
維護級 對於汽車,就是修車的知識,會拆裝發動機,裝輪胎。
製造級 對於汽車,就是按照圖紙,生產零件,組裝零件成爲整車
設計級 對於汽車,就是設計汽車圖紙,明確發動機的性能指標,輪胎型號等。
發明級 對於汽車,就是要闡明汽車的工作原理。發動機的工作原理。證明技術可行性等。
對於一個軟件,不管是開發工具,代碼庫,程序框架,還是底層的操作系統,數據庫,
驅動程序等,我們在學習軟件時,首先要明確,自己是在哪個層級上學習它,
是使用級,還是維護級,還是製造級?不同的層級上,需要學習的內容,可能是完全不同的。
對於開車,可能需要學習兩個月。
對於修車,可能需要學習兩年。
對於造一臺車,可能需要學習五年。
對於新車的設計,可能需要積累十年的經驗。
對於新概念車的發明,這不是學會的,可能需要是有天賦與靈感的。
軟件公司對人員的需求,主要集中在對軟件工具的使用和維護上。
例如招聘數據庫開發人員和數據庫管理員。他們分別要對數據庫管理系統
(mysql,oracle,sql server ,db2)等進行使用,以及維護。
有許多開發人員說數據結構之類的知識用不上。那是因爲他們沒有從事底層代碼庫的開發。
僅在第四代編程語言的應用上工作,只有配置參數的工作,當然用不上數據結構了。
對於消息中間件,如果僅是在使用級上的瞭解,完全不涉及數據結構,如果在開發級上工作,
需要對大量的數據類型進行封裝,需要對數據包進行打包與拆包,對數據結構的設計與使用
就太重要了。