1. 程式人生 > >統一或是分裂的統一

統一或是分裂的統一

工程 現狀 優點 開發 就會 語言 提供商 通過 操作

就像有專門利用原料制作配件的,也有專門利用配件制作產品的,這樣的分類是合理並且被現實實踐的。c++就像是專門制作配件的,我們把這些工作者叫作‘軟件工程師’,java就像是專門制作產品的,我們把這些工作者叫作‘程序員’。

那麽一定會產生這樣的分工嗎?答案是一定的。因為現實中,c++是用來制作操作系統的,而程序的界面繪制部分是交給操作系統實現並提供的,如果有多個不同的操作系統,那麽他們在c++語言層面上提供的接口方法則不一定相同,那麽在合理的結構上來說,這時必須有一個更高層的編程語言環境來總持各個操作系統提供的不同方法,以此來滿足一次開發就滿足各個操作系統的優點,否則程序員就會陷入‘我到底要為哪個操作系統開發而使用哪一種語言?’的選擇困境。而現實中的java正是做到了這一點的編程語言環境,當然它還有其他方面例如代碼封閉完整、風格簡一、工具方便等的優點。

這些是基於合理性的架構談論的,現實有它的正確性,而理念有它的傾向性。

當然,如果趨勢是統一操作系統,以上的部分論據就都滅亡了。而根據我的推算,這是不可能發生的,因為硬件商不會把自己的門路限制在一家系統提供商上,這樣無異於本末倒置,良性的局面應該是存在多家系統提供商,防止被控制門路,也促進商家之間的改進。

然而,我還是少算了一步,那就是最根層的用戶。如果用戶的心願是統一操作系統,則一定會以某種形式去統一。用戶為了方便使用而需求統一操作系統是可能的,也可能是一時的,通過這個方面可以觀察到相關現狀之間的聯系道理。

統一或是分裂的統一