一直以來都比較關注跨平台開發,無論是gui還是cui,想跨平台都不是一件容易的事。但是,跨平台開發都是乙個難以避免的事情。沒有人可以保證10年後大家電腦裡面使用的都是什麼作業系統,或許pc已經不再是主流的都有可能,更不用說windows和linux之爭了。
毋庸置疑,跨平台很多很多的好處。但是,從程式設計師的角度看,跨平台卻是個**煩。因為那樣做,意味著程式設計師要考慮更多與程式邏輯無關的瑣碎事情。這些瑣碎非常的令人討厭,足以使程式設計師發瘋崩潰。舉個簡單的例子,當你想寫乙個程式即在windows下執行又像讓它在linux下執行,僅僅執行緒同步這乙個小問題就足以令人發狂。windows下和藹可親的事件(eevent)和waitformultipleobjects,到了linux卻消失的無影無蹤,令開發人員駐足相望、舉手無錯。你大可跟我抬槓,不用event和waitformultipleobjects就可以了。我只想說我們逃是逃不掉的,真的勇士應該直面淋漓的鮮血,何況更多的勇士是不得不去面對淋漓的鮮血。
現在我們已經確定自己想要什麼了,那麼接下來幹啥呢?是不是應該著手開發了?非也。為了防止製造重複的輪子,我們還需要了解一下,我們現在的需求是不是已經有了開拓者,畢竟站在巨人的肩膀上才能更高。選擇了乙個正確的跨平台開發包可以事半功倍一勞永逸。找到乙個適合的開發包,無異與找到了一把稱手的寶劍,自然是削鐵如泥,即便是它爸是微軟也無所畏懼。但是,選擇不僅僅是個技術活,更多時候還要靠人品和運氣。技術人員考慮的都是可預見的需求,而顧客心如大海針。某人一拍腦袋可能就會導致你的選擇變成了愚蠢的判斷。例如本來計畫涉及乙個單執行緒cui的小工具,最後卻需要做成gui的大專案,不僅僅需要多執行緒更是需要多**、網路通訊等一系列的東西,那你就慘了。
總之,跨平台不是一件那麼容易的事。所以,如果你想寫跨平台程式不妨聽我將其中內幕一一道來。
討論 關於跨平台
跨平台是軟體的乙個重要指標。一般程式可分為平台無關和平台相關兩部分,平台相關部分主要涉及外圍裝置 如串列埠 鍵盤 滑鼠 lcd等 和作業系統api 如定時器 互斥鎖 檔案系統操作 執行緒操作等 除了程式本身的跨平台需求外,還有種應用是對目標機的模擬,例如在pc上模擬一些嵌入式平台的應用,一來可以方便...
跨平台開發Cygwin MinGW
linux寶庫 1 引言 今天程式開發人員面臨的最大問題就是如何使他們的應用程式支援各種不同的平台,如何使使用者能夠在不同的平台下不作任何修改地就能使用他們的應用程式。眾所周知,linux作業系統和其它基於unix的作業系統一直是國際上使用廣泛又非常重要的os operating system 但在...
deviceone 跨平台開發
lz最近很忙 好久沒更新blog了好久沒搞android了 最近一直在學習js語言和跨平台開發工具那麼多 lz用的deviceone 說實話 真的很快速 官方封裝的各種框架底層 用起來簡單的不得了 簡單直接 粗暴 有效果 也有各位大神封裝的元件 唯一一點感覺不大爽的是說明文件寫的並不詳細 但基本上有...