跨平臺的編程語言有哪些 原生態(tài)開發(fā)和跨平臺中間件各有什么優(yōu)劣?
原生態(tài)開發(fā)和跨平臺中間件各有什么優(yōu)劣?原生態(tài)開發(fā):開發(fā)者使用廠商提供的單一手機平臺SDK進行開發(fā)。跨平臺開發(fā):一次開發(fā),多次編譯。開發(fā)人員使用一種語言(Java)進行開發(fā)。通過跨平臺中間件(包括跨平臺
原生態(tài)開發(fā)和跨平臺中間件各有什么優(yōu)劣?
原生態(tài)開發(fā):開發(fā)者使用廠商提供的單一手機平臺SDK進行開發(fā)??缙脚_開發(fā):一次開發(fā),多次編譯。開發(fā)人員使用一種語言(Java)進行開發(fā)。通過跨平臺中間件(包括跨平臺運行時、平臺轉(zhuǎn)換引擎和eclipse編譯器插件),用各種原生sdk編譯源代碼,并自動打包成各種移動應用程序。原生態(tài)開發(fā)和跨平臺開發(fā)適合不同的開發(fā)者。原開發(fā)要求開發(fā)者熟悉原SDK的開發(fā)語言(Android、J2ME、Symbian等),操作效率較高(如涉及3D圖形加速的應用)。然而,在一個平臺上開發(fā)每一個移動應用程序都需要重新編碼,這不僅耗費人力,而且耗時長??缙脚_開發(fā)使用統(tǒng)一的語言(Java語言、XML和CSS進行UI控制),開發(fā)人員易于學習和掌握,不適合直接操作硬件應用程序(如3D游戲)。
有什么好的跨平臺的桌面軟件開發(fā)方案嗎?
開發(fā)跨平臺程序的最佳方法有三種:Microsoft Office:除了功能規(guī)范外,沒有共享代碼。但這需要錢。Adobe Photoshop:底層庫是自編的,上層庫是跨平臺的C.Adobe Lightroom:底層庫是C/Objective-C編寫的,上層庫是跨平臺的Lua。補充說明:這三種較好的解決方案都適合長期維護源代碼,但要達到這種狀態(tài)并不容易。對于首次接觸跨平臺開發(fā)團隊,應先關注某個平臺完成產(chǎn)品,再考慮移植。Photoshop最初只是Mac的產(chǎn)品。adobe Lightroom的方式是在其架構師對Lua語言底層的封裝做了大量實驗后選擇的。第二個最好的解決方案是:perforce、Skype:qt、eclipse/netbean:javaswt/javaswing
跨平臺概念是軟件開發(fā)中的一個重要概念,即它不依賴于操作系統(tǒng)或硬件環(huán)境。一般來說,軟件可以在windows、MacOS、Linux、Android等環(huán)境下運行??鐬g覽器是指可以應用于多個瀏覽器的服務。一般來說,在chrome、Firefox、Safari和internetexplorer中可以正常打開網(wǎng)頁。(一個擴展提供了chrome、Firefox和internetexplorer的版本,也可以成為跨瀏覽器)