精華區beta Programming 關於我們 聯絡資訊
※ 引述《sniffer@kkcity.com.tw ()》之銘言: : ※ 引述《apia.bbs@bbs.ee.nthu.edu.tw (Orz)》之銘言: : directx 最好是還相容啦 : 用 directx 連不同 pc 都有相容問題 前文討論的是 Win32 API,並不是在討論 DirectX API Linux 上 gtk+ 1.2 和 gtk+ 2.0 也是大改, Qt 3 到 Qt4 也是大改 開發人員為此也是一直相當頭痛 : 對寫 application 的人, 用那一種 dist 差別在哪? : 如果帶 source code, 除非使用者沒裝你用的 library, 那會有不能 compile 的 : 沒 source code, static link 的 binary 更是不太可能出問題 就是碰到過其他 distro 包裝的 lib 有問題的,真的是有出過問題 該 distro 不是別人,就是 Fedora Core 要出問題也不難,您可以試試看開發 mozilla XPCOM 真的是大問題 光 makefile 就寫不出來了,編譯好了還真的不知道怎麼讓它 run 起來 mozilla Taiwan 提供的 Linux build 也曾發生過在 Mandrake 很正常 在 debian 不能執行的問題。 類似的例子隨便列舉還有很多 當然,硬要弄還是都有解決方式,大不了都自己重編,問題就是很不方便。 : linux 的設定檔相當於 winxx 的 registry, winxx registry 還不是一天到晚換 : 不同的是 linux 的設定檔擺那裡自己可以改, : 同 distribution 是一致的, 也有文件可查 : winxx 要把 registry 叫啥名你管不了 其實很多都有文件,只是不容易找到,主要的部份並沒有變動過 : 寫的人用不標準的功能才會 FreeBSD 和 Linux 就有些檔案位置不同了 同一 function 所在的 lib 也有不同,thread safety 也有所不同 Solaris 在這部份文件比較清楚,而不同系統... socket 相關的東西很麻煩 總之很多東西還是都要處理,並不是有 autotool 就可以輕鬆愉快 : VC->VC.net 改變才大, VB->VB.net 根本是不同語言 非 .net 的部份沒什麼變化,只有 IDE 變難用,.net 不是改變,是新增功能 : 在 VC 下用不標準的功能, 不同版 VC 比 gcc 變的更多 這點你說的沒錯,完全同意 : 我用的 15 年 motif application 連 autotools 都沒有照樣跨所有 unix : X window 是連 remote 端不同平臺都跨得了 : winxx 卻從 win16 變 win32, win32 還分 nt/9x/2k/xp, gdi/directx..... : msdn 的 example 都不一定正常, 還有 window message 順序也不太一樣 Win32 下仍然可以用 Win16,Windows 的向下相容做的不差 會有問題的是 API 有 unicode 版本跟非 unicode 而主要會有問題的是 Windows NT 和 9x 的 API 行為不一致,不同版 Common control 也有很大的問題。 MSDN 有些 example 確實是亂寫的,甚至有看過用法錯誤的 不過.... gtk+ 連 doc 到現在都不齊全....相形之下 MSDN 很完整 : 你用過 SDK 就會知道了, 重用舊 code 會非常的不保險 Win32 SDK 我還滿常用的,也見識到不少麻煩處,確實是很惱人沒錯 : like what? : windows 程式可以拿到 FreeBSD 去編譯? Win32 API 當然不行,但用其他 lib 包裝確實是可以,也不難 : 中 M$ 毒才會在 Linux 下用不標準 api, library 你可以去看一下,不同版本的很多函數,雖然都是 POSIX conformation 我想你看 manual 時沒有仔細注意到 Bugs 那欄,不同版本有不同 bug 而 thread unsafe 的函數很多並沒有明確標示,對 debug 是個麻煩퀊: Linux kernel 都是一樣, 程式會怎麼個不同運作法???? 當然會,你的程式並不是有 kernel 就會跑的,眾多 lib 中只要一個有所不同 就有可能運作出來會不同,當然那都可以克服,但是浪費時間克服這些問題 會降低效率,也是我所謂不該神化 Linux 下開發的方便性。 : 本公司都是在 pc linux 下寫好 application 再 cross compile 到 embedded 用 : > 你是我看過唯一說真話的人, : > 這年頭大家都只站在自己立場說話,非我類就批評。 : > 我的看法是: .NET 架構相當不錯,也簡潔,Java 則因為有過去的緣故,多些束縛。 : > Windows 若能順利的 .NET 化,並且跨平台方面也著力下去,則非常有機會 : net 化, 先去學一下作業系統吧 : net 是 framework : > 成為新的共通平台共主。 : 不能在不同 CPU 下用的平台都不叫共通平台 : 例如說很大很複雜的 M$ 平台, 沒有多少家 CPU 能跑 : porting 耗時耗力, driver 又臭又長 : Linux porting 到一個新 CPU 指另集架構都不用幾個月 : 在一般的 arm/mips/ppc 更是只有 driver 要寫 : 殘廢 windowz 的 wince 卻讓 M$ 人力不足放棄一堆 CPU : 完整的 windowz 只有剩 x86 一個平臺 : > 以 C# 來說,開發起來非常順手,Visual Studio.NET 很好用,而且免費。 : > 執行速度非常快,有時候跟 C/C++ 不相上下,這應該是最佳化以及 IL 做得好之故。 : > 另外,Linux/Unix 上的 Mono 計畫也令人激賞,先不論 Form 的部份, : > mono 相容性非常高,MS Windows 上的 C# 程式可以直接用 mono 編譯與執行, : > 不過,執行速度大約為 MS C# compiler 編譯出來的 1/2 到 2/3。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.129.59.3