瀏覽單個文章
godel_chen
*停權中*
 
godel_chen的大頭照
 

加入日期: Aug 2005
您的住址: Taipei
文章: 46
引用:
作者octapult
小弟不是相關行業的,所以有個疑問

Win 2K、XP、Vista、7 都是 NT kernel,只是版本不同
而且開發軟體都採用相同的 framework,軟體操作界面也類似
理論上來說,在 Win 2K 上面開發的軟體不是應該可以用最少的代價,讓軟體可以輕易的在 XP、Vista、7上面執行嗎?(這也是當初 MS 力推 Windows 其中一個賣點)
怎麼實際情況卻沒有想像中的容易?
跨平台要耗費龐大的工程,所費不菲
到後來還得弄出一個 .NET Framework 來?


以windows 2000是win xp/vista等的子集來說, 當然推論對.

win2000可以跑, xp, vista就可以跑.

但是前面說過, 為了加速軟體開發時間, 降低成本, 軟體都越來越"肥",
專業一點講, 不是肥, 是軟體IC modularize模組化.

微軟把常用的一些程式設計的動作包裝成一個progarmmer只要呼叫, 傳送參數就
可以完成的module, programmer就可以大大減輕壓力.

XP有directx等module可以呼叫, 多媒體/game的設計者就輕鬆多了, 沒有
direct的NT當然就玩不起來, 2000要更新升級 dirextx.

如果programmer習慣呼叫這些內建module, 怎麼可能轉換平台(要重新學過),
或者去為舊平台設計程式?

理論上最"超級", 最有效率的程式是用"組合語言", 直接呼叫CPU支援的指令.

但是目前的作業系統大部分都用C/C++, 比較輕鬆, 那就要看compiler的效率了.

但是就算用C, 我相信很多程式會開發到"天長地久", VisualBasic就這樣來了.

所以不是很多visualbasic程式需要共用的DLL, C也有啊...

這樣就不需要自己重新寫, 呼叫別人幫你設計好的DLL就好.
舊 2011-11-04, 01:43 PM #133
回應時引用此文章
godel_chen離線中