自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

11個(gè)基本的移動(dòng)Web編程工具強(qiáng)烈推薦

開(kāi)發(fā) 前端
但有挑戰(zhàn)就有機(jī)遇,部分軟件開(kāi)發(fā)商已經(jīng)將注意力轉(zhuǎn)向構(gòu)建移動(dòng)工具和庫(kù),旨在建立一個(gè)充滿活力的生態(tài)系統(tǒng),以幫助移動(dòng)開(kāi)發(fā),特別是移動(dòng)Web開(kāi)發(fā)。隨著HTML 5的成熟,也讓許多開(kāi)發(fā)商看好移動(dòng)Web的發(fā)展前景。本文就極力推薦11個(gè)基本的移動(dòng)Web編程工具。

談到為移動(dòng)設(shè)備編程時(shí),我們面臨兩難的選擇,你是將目標(biāo)鎖定在有利可圖的iPhone市場(chǎng),還是著眼于處于上升勢(shì)頭的Android?你愿意做本地開(kāi)發(fā)還是移動(dòng)Web開(kāi)發(fā)?一個(gè)可以自動(dòng)適應(yīng)不同平臺(tái),不同設(shè)備的單一代碼堆棧將成為許多開(kāi)發(fā)人員的夢(mèng)想,但現(xiàn)實(shí)情況卻不容樂(lè)觀,即使是一個(gè)基本的任務(wù)也面臨挑戰(zhàn)。

但有挑戰(zhàn)就有機(jī)遇,部分軟件開(kāi)發(fā)商已經(jīng)將注意力轉(zhuǎn)向構(gòu)建移動(dòng)工具和庫(kù),旨在建立一個(gè)充滿活力的生態(tài)系統(tǒng),以幫助移動(dòng)開(kāi)發(fā),特別是移動(dòng)Web開(kāi)發(fā)。隨著HTML 5的成熟,也讓許多開(kāi)發(fā)商看好移動(dòng)Web的發(fā)展前景。

首先,網(wǎng)站是開(kāi)放的,產(chǎn)品發(fā)布或升級(jí)不需要App Store那樣的審核團(tuán)隊(duì)批準(zhǔn)。

其次,開(kāi)發(fā)人員可以獲得他們移動(dòng)應(yīng)用程序100%的收入,當(dāng)然,你必須找到一種收錢(qián)的方法,實(shí)施起來(lái)可不是那么簡(jiǎn)單,蘋(píng)果收取的30%收入可以說(shuō)是一個(gè)嚴(yán)重的關(guān)稅。

第三,HTML 5變得越來(lái)越強(qiáng)大,功能越來(lái)越豐富,最新版本允許你在客戶端保存數(shù)據(jù),可以做本地應(yīng)用程序可以做的大部分事情,可以說(shuō),瀏覽器沙盒和本地代碼沙盒的功能幾乎完全一樣。

第四,HTML 5應(yīng)用程序與設(shè)備無(wú)關(guān),雖然很多炒作都是圍繞蘋(píng)果的iPhone展開(kāi)的,但HTML 5應(yīng)用程序可以很容易地移植到其它平臺(tái),雖然沒(méi)有簡(jiǎn)單到按一下按鈕就解決問(wèn)題的地步,但比從Objective C轉(zhuǎn)換到Java要簡(jiǎn)單得多了。

當(dāng)然,限制也是有的,Web應(yīng)用程序可能會(huì)陷入連接問(wèn)題,它們比本地應(yīng)用程序可能要慢一點(diǎn),許多本地應(yīng)用程序開(kāi)發(fā)人員喜歡用毫秒數(shù)來(lái)表示延遲,喜歡談?wù)摱嗌俸撩胧强梢越邮艿?,游戲開(kāi)發(fā)人員需要加倍思考JavaScript中的代碼響應(yīng)問(wèn)題。

最大的限制可能是開(kāi)發(fā)本身,蘋(píng)果的工具對(duì)開(kāi)發(fā)本地應(yīng)用程序來(lái)說(shuō)的確很好,但它卻很難深入挖掘運(yùn)行在移動(dòng)瀏覽器上的代碼結(jié)構(gòu)。隨著人們對(duì)移動(dòng)開(kāi)發(fā)和移動(dòng)Web的興趣與日俱增,催生了大量的庫(kù)和工具,借助它們大大簡(jiǎn)化了移動(dòng)應(yīng)用程序的構(gòu)建過(guò)程,下面這些優(yōu)秀的項(xiàng)目都很有潛力,未來(lái)的移動(dòng)Web開(kāi)發(fā)在它們的幫助下將會(huì)更加簡(jiǎn)單。

1、ChocolateChip-UI

移動(dòng)設(shè)備的屏幕通常較小,這是UI設(shè)計(jì)師的一大考驗(yàn),美國(guó)北加州一名Web開(kāi)發(fā)人員Enter Robert Biggs開(kāi)發(fā)了ChocolateChip-UI,一個(gè)使用HTML生成整個(gè)程序界面的框架。

從技術(shù)上來(lái)講,開(kāi)發(fā)人員創(chuàng)建的底層代碼是WAML(Web應(yīng)用程序標(biāo)記語(yǔ)言),一個(gè)構(gòu)建在HTML 5之上的標(biāo)記語(yǔ)言,大多數(shù)簡(jiǎn)單的工作都是用WAML標(biāo)記(如或)實(shí)現(xiàn)的,該框架的JavaScript遍歷WAML,并將其轉(zhuǎn)換成純HTML 5代碼。

你可以將HTML、CSS和JavaScript代碼混入WAML,它指導(dǎo)ChocolateChip-UI順序執(zhí)行轉(zhuǎn)換過(guò)程。

雖然這個(gè)方法不是完美的,我也能理解為什么Biggs會(huì)選擇這條路。

ChocolateChip-UI收集的WAML Widget是相當(dāng)全面的,它們的外觀也和標(biāo)準(zhǔn)的iPhone UI類(lèi)似,甚至包括刪除列表,讓用戶輕點(diǎn)幾下就可以從列表中消除元素。

下載ChocolateChip-UI

2、Mobl

Web開(kāi)發(fā)人員對(duì)JavaScript有許多不滿,Moble團(tuán)隊(duì)決定做點(diǎn)什么消除這些不滿情緒,于是便誕生了創(chuàng)建可在WebKit瀏覽器中運(yùn)行的移動(dòng)應(yīng)用程序框架,不使用HTML、JavaScript和CSS轉(zhuǎn)換你的代碼,相反,你在Moble中編寫(xiě)代碼,由Moble編譯器將它們轉(zhuǎn)換成移動(dòng)瀏覽器支持的HTML、JavaScript和CSS代碼。

這個(gè)方法讓Moble團(tuán)隊(duì)一舉解決了JavaScript中一些比較棘手的問(wèn)題,例如,如何將一個(gè)函數(shù)傳遞給其它函數(shù)以便延遲執(zhí)行,跟蹤JavaScript所有必要的嵌套括號(hào),如果靠人工檢查,可能很快就會(huì)犯暈,出錯(cuò)的幾率極具上升。

Moble通過(guò)采用更多的聲明性語(yǔ)法擺脫了復(fù)雜性,如果你想暫停1000毫秒,可以這么寫(xiě):

sleep(1000); doNext();

Moble使用一個(gè)setTimeout函數(shù)和一個(gè)執(zhí)行doNext()的回調(diào)函數(shù)將其編譯成JavaScript,作為一名開(kāi)發(fā)人員,你不用思考回調(diào)語(yǔ)法,也不用思考如何封裝到另一個(gè)函數(shù)中,你需要做的是寫(xiě)一個(gè)你想看到的事件發(fā)生列表。

Mobl團(tuán)隊(duì)有很多種方法幫你編寫(xiě)這些代碼,而不必注意JavaScript中的標(biāo)點(diǎn)符號(hào),最終的結(jié)果是一套移動(dòng)應(yīng)用程序標(biāo)準(zhǔn)語(yǔ)法的集合,想要一個(gè)滾動(dòng)列表?只需要使用group關(guān)鍵字將你的項(xiàng)目清單打包起來(lái)即可。

不喜歡這個(gè)方法的開(kāi)發(fā)人員可能是已經(jīng)習(xí)慣了Objective-C或JavaScript,在他們看來(lái),既然最終還是要轉(zhuǎn)換成已經(jīng)明白的語(yǔ)言,何必要去學(xué)習(xí)另一種語(yǔ)言呢?

下載Mobl

3、jQuery Mobile

當(dāng)jQuery框架背后的開(kāi)發(fā)團(tuán)隊(duì)決定進(jìn)入移動(dòng)平臺(tái),為智能手機(jī)構(gòu)建一個(gè)簡(jiǎn)單的UI工具箱時(shí),注定會(huì)引起廣泛的關(guān)注,結(jié)果不出大家意料,jQuery Mobile項(xiàng)目得到了廣大硬件制造商的支持,和許多移動(dòng)設(shè)備成了捆綁關(guān)系。

jQuery Mobile最簡(jiǎn)單的部分是它以HTML為中心的布局,頁(yè)面(Page)置于DIV和其它標(biāo)準(zhǔn)HTML組件,因此jQuery Mobile很容易和動(dòng)態(tài)網(wǎng)站以及CMS集成,因?yàn)樗皇窃黾恿艘粋€(gè)新主題或皮膚,如很多Drupal主題和模塊就是圍繞jQuery Mobile創(chuàng)建的。

與jQuery緊密集成意味著許多但不是所有桌面插件也可以在移動(dòng)網(wǎng)站上運(yùn)行,也有一部分移動(dòng)插件擴(kuò)展了移動(dòng)框架,圍繞jQuery Mobile建立的生態(tài)系統(tǒng)將會(huì)迅速擴(kuò)大。

下載jQuery Mobile

4、The-M-Project

如果jQuery Mobile的方法和風(fēng)格集還不夠復(fù)雜,The-M-Project提供了一套可以編譯成jQuery Mobile對(duì)象的Widget,它處于許多設(shè)計(jì)細(xì)節(jié)問(wèn)題,如將某個(gè)圖標(biāo)放在正確的位置,以便你可以將注意力放在大局觀上。

代碼使用視圖-模型-控制器模式結(jié)構(gòu)化,大部分工作是構(gòu)建一個(gè)大型JSON結(jié)構(gòu),定義不同的頁(yè)面和位于這些頁(yè)面內(nèi)的Widget,布局通過(guò)The-M-Project處理。

應(yīng)用程序的行為是通過(guò)為每個(gè)頁(yè)面創(chuàng)建連接到各種事件鉤子的函數(shù)定義的,The-M-Project確保事件抵達(dá)它們的位置。

構(gòu)建和部署過(guò)程和Node.js集成,構(gòu)建代碼也運(yùn)行在Node.js中,測(cè)試使用相同的服務(wù)器完成,當(dāng)它工作時(shí),你可以攜帶代碼和庫(kù)的混合物到任何Web服務(wù)器,你也可以將它和Node.js進(jìn)一步集成。

下載The-M-Project

5、Touchqode

當(dāng)你坐在巴黎的咖啡館里慢慢品味咖啡的香味,當(dāng)你登上珠穆朗瑪之巔,或任何未帶筆記本電腦或沒(méi)有桌面電腦的情況下,如果突然冒出一個(gè)想法,這時(shí)你是用一張廢紙記錄下來(lái),等回到電腦前再錄入,還是拿出你的Android手機(jī),打開(kāi)Touchqode將這個(gè)想法記下來(lái)(iPhone版本很快就會(huì)到來(lái))?

這個(gè)微開(kāi)發(fā)環(huán)境在一個(gè)小小的屏幕上打包了數(shù)量驚人的功能,代碼高亮,腳本可本地運(yùn)行,你可以通過(guò)FTP同步你新增或修改的代碼,當(dāng)你在旅途中,上司打電話要你協(xié)助解決一個(gè)問(wèn)題,這時(shí)你只需點(diǎn)擊幾次按鍵可能就會(huì)解決問(wèn)題。我不能想象使用Android手機(jī)編寫(xiě)很長(zhǎng)的代碼會(huì)怎么樣,但我知道有寫(xiě)手在手機(jī)上完成了他們的長(zhǎng)篇小說(shuō),因此,使用Touchqode在手機(jī)上修改少量的代碼還是可行的,在緊要關(guān)頭,它的作用就是顯得淋漓盡致。

下載Touchqode

6、LimeJS

Flash游戲變得如此引人注目的一個(gè)原因是,整個(gè)生態(tài)系統(tǒng)已經(jīng)非常成熟和完善,DigitalFruit創(chuàng)建LimeJS旨在為開(kāi)發(fā)人員提供更好的支持,幫助他們更好地使用HTML 5中的WebGL對(duì)象。

早期的LimeJS在WebKit瀏覽器中是有效的,它的代碼全部是用JavaScript寫(xiě)成的,但結(jié)構(gòu)看起來(lái)和曾經(jīng)風(fēng)光無(wú)限的C類(lèi)似,只不過(guò)它調(diào)用的是OpenGL庫(kù),它應(yīng)該可以自動(dòng)交叉編譯一些OpenGL到這個(gè)庫(kù)中,雖然這需要一些手工調(diào)整。

LimeJS為簡(jiǎn)化游戲開(kāi)發(fā)提供了一些有價(jià)值的功能,有使用層填充的場(chǎng)景,根據(jù)靈活的調(diào)度觸發(fā)事件的指示器,有跨頁(yè)面移動(dòng)精靈的動(dòng)畫(huà)和過(guò)渡,所有這些功能對(duì)此前開(kāi)發(fā)過(guò)休閑游戲的人來(lái)說(shuō)是無(wú)比熟悉的。

開(kāi)發(fā)環(huán)境包括多個(gè)現(xiàn)代觸摸,基本建筑是用Python處理的,最終包可能會(huì)和Google的閉包編譯器綁定在一起,以便提高下載速度。

LimeJS將會(huì)吸引那些在其它環(huán)境中使用OpenGL框架開(kāi)發(fā)游戲的人,雖然最終語(yǔ)法是JavaScript,但它不依賴(lài)于讓JavaScript感到討厭的更復(fù)雜的想法,至少要等到閉包編譯器完成它的工作。

下載LimeJS

7、Jdrop

從表面上看,Jdrop似乎是大量JSON的堆積,可能被誤認(rèn)為是一個(gè)開(kāi)放的NoSQL數(shù)據(jù)庫(kù),實(shí)際上,這個(gè)Web資源是幫助移動(dòng)開(kāi)發(fā)人員管理小屏幕和桌面之間的性能數(shù)據(jù),以便可以得到更好的分析。

為了緩解從移動(dòng)設(shè)備提取性能數(shù)據(jù)的困難,Jdrop提供了Mobile Perf,一個(gè)聚合了一套性能書(shū)簽的書(shū)簽,包括Firebug Lite,Page Resources,DOM Monster,SpriteMe,CSSess和Zoompf,借助Mobile Perf,你可以在手機(jī)上調(diào)試你的應(yīng)用程序,結(jié)果自動(dòng)保存到Jdrop云,以便以后從桌面進(jìn)行分析,提供一個(gè)有趣的方法調(diào)試真正的移動(dòng)性能,以及分析你喜愛(ài)的移動(dòng)網(wǎng)站的HTML源代碼。

下載Jdrop

8、XUI和Zepto

本文介紹的大多數(shù)框架都有自己的一套語(yǔ)言,而XUI和Zepto不同,它們從一開(kāi)始就認(rèn)為HTML和CSS在展示頁(yè)面內(nèi)容時(shí)已經(jīng)夠好,唯一需要提供幫助的是創(chuàng)建和修改DOM。

這些庫(kù)不會(huì)布置你的Widget,也不會(huì)創(chuàng)建任何類(lèi)型的Widget,你獲得的是HTML能提供的,因此外觀是借助CSS來(lái)控制的,這里的庫(kù)通過(guò)提供查找元素,連接類(lèi)和篡改事件幫助你操作DOM。

Zepto的最新版本大約2300字節(jié),約jQuery的1/10,XUI稍微大一點(diǎn),和jQuery更易于比較,因?yàn)閮烧叩恼Z(yǔ)法都差不多,例如,XUI產(chǎn)生的代碼可能需要保持兼容BlackBerry或IE Mobile,如果你想要它們,你的庫(kù)將會(huì)變得更大。

下載XUI

下載Zepto

9、Jo和Sencha Touch

Jo和Sencha Touch是兩套使用JavaScript創(chuàng)建面向卡片式移動(dòng)應(yīng)用程序的Widget,其結(jié)構(gòu)是由一套創(chuàng)建Widget的JavaScript函數(shù)定義的,這些Widget按庫(kù)排列,因此在屏幕上看起來(lái)效果很好,它們的代碼通常包括大量嵌套的組裝部件的函數(shù)調(diào)用,然后調(diào)用其它將小部件組裝成大部件的函數(shù)。

Sencha Touch是一家名叫Sencha的新興公司創(chuàng)建的,它也為普通Web頁(yè)面提供了一個(gè)框架,公司靠銷(xiāo)售支持計(jì)劃為生,使用Sencha Touch并不需要為商業(yè)許可付費(fèi),公司的開(kāi)發(fā)團(tuán)隊(duì)親自回答用戶的問(wèn)題,維護(hù)一個(gè)開(kāi)放的支持社區(qū)。

Jo是一個(gè)開(kāi)源項(xiàng)目,以O(shè)penBSD許可形式發(fā)布,可以免費(fèi)使用,Jo的開(kāi)發(fā)者Dave Balmer為那些需要的人提供幫助和支持。

我曾用Sencha Touch創(chuàng)建了幾個(gè)Web應(yīng)用程序,發(fā)現(xiàn)整個(gè)開(kāi)發(fā)過(guò)程相對(duì)容易,因?yàn)榭蚣芴幚砹嗽S多布局問(wèn)題,在最好的情況下,我只需要?jiǎng)?chuàng)建一個(gè)新的Widget對(duì)象,Touch框架自動(dòng)將它放入頁(yè)面合適的位置,看起來(lái)還不錯(cuò),盡管屏幕大小不一樣,但有些應(yīng)用程序在iPad和iPhone上可以很好地運(yùn)行。

目前,Jo和Sencha Touch的文檔相對(duì)較少,在這方面應(yīng)該盡快做好彌補(bǔ),暫時(shí)只有Sencha的商業(yè)支持提供深入的文檔。

下載Jo

下載Sensa Touch

10、jQTouch

jQTouch是移動(dòng)Web應(yīng)用程序最偉大的框架之一,它的創(chuàng)造者,David Kaneda已經(jīng)離開(kāi)項(xiàng)目,現(xiàn)在為Sencha工作,但Jonathan Stark接過(guò)了大旗,繼續(xù)對(duì)代碼做值得做的調(diào)整。

jQTouch應(yīng)用程序是在DIV中插入HTML生成的,jQTouch解析這些DIV,尋找合適的類(lèi),然后插入它自己的代碼處理事件。

我用jQTouch創(chuàng)建了幾個(gè)Web應(yīng)用程序,發(fā)現(xiàn)它和創(chuàng)建一個(gè)Web頁(yè)面一樣簡(jiǎn)單,它也和動(dòng)態(tài)Web工具,如JSP,PHP和其它基于服務(wù)器的框架更容易集成。

在正確的情況下,代碼看起來(lái)和本地應(yīng)用程序的代碼一樣,但有時(shí)我發(fā)現(xiàn)一些奇怪的故障和沒(méi)有意義的轉(zhuǎn)換,有些觸摸事件在某些平臺(tái)上反應(yīng)也有點(diǎn)慢。

下載jQTouch

11、PhoneGap

另一個(gè)最大,最成功的開(kāi)源移動(dòng)框架是PhoneGap,一套非常簡(jiǎn)單的例行程序集,它允許你使用HTML,JavaScript和CSS代碼為智能手機(jī)構(gòu)建本地應(yīng)用程序。本文介紹的許多JavaScript框架在發(fā)給App Store之前,都意欲和PhoneGap捆綁在一起。

原理非常簡(jiǎn)單:這個(gè)框架打開(kāi)一個(gè)解析HTML的視圖。在iOS上被稱(chēng)為UIWebView,但在所有主流智能手機(jī)開(kāi)發(fā)堆棧中都有類(lèi)似的組件,其目標(biāo)是讓相同的HTML,JavaScript和CSS代碼在所有主流平臺(tái),如Android、iOS、BlackBerry和WebOS上都能工作。

從我使用PhoneGap的經(jīng)驗(yàn)來(lái)看,它的方法通常可以在不同平臺(tái)上正常工作,我只花了一個(gè)小時(shí),就將一個(gè)Web應(yīng)用程序轉(zhuǎn)換成iPhone和Android本地應(yīng)用程序,PhoneGap幫我完成了大部分工作。

但它仍然不是完美的,我曾發(fā)現(xiàn),盡管Android和iOS都使用WebKit核心,但相同HTML和CSS在Android和iPhone上的顯示效果不一樣,雖然我后來(lái)沒(méi)有創(chuàng)建完整的BlackBerry和WebOS應(yīng)用程序,但出現(xiàn)任何小問(wèn)題我認(rèn)為都是正常的,不管怎樣,PhoneGap可以將你的Web應(yīng)用程序從相對(duì)簡(jiǎn)單變得相對(duì)通用,相對(duì)快速。

下載PhoneGap

原文:http://tech.it168.com/a2011/0705/1213/000001213732.shtml

【編輯推薦】

  1.  Web設(shè)計(jì)師必備:10款最佳免費(fèi)CSS在線編輯器
  2. HTML 5來(lái)襲:Web前端開(kāi)發(fā)面臨十字路口
  3. 最受Web前端開(kāi)發(fā)者歡迎的五大開(kāi)發(fā)工具
  4. 11個(gè)優(yōu)秀的Web開(kāi)發(fā)框架新鮮出爐
  5. 高性能WEB開(kāi)發(fā)應(yīng)用指南
責(zé)任編輯:陳貽新 來(lái)源: it168
相關(guān)推薦

2011-04-21 14:42:46

CSSHTML工具

2023-12-22 14:09:08

AI文本編輯器AiEditor

2022-05-16 09:20:00

開(kāi)發(fā)工具

2012-02-03 15:13:27

JavaScript

2011-05-16 08:37:56

JavaScript庫(kù)

2023-12-07 19:13:48

Pythonprint

2020-02-24 10:06:43

Mac軟件工具

2011-06-30 17:41:46

SEO

2024-02-27 08:25:52

LiteFlow代碼語(yǔ)法

2024-04-25 16:27:07

數(shù)據(jù)可視化Python

2023-07-28 22:20:17

工具軟件

2009-11-04 13:12:33

VB.NET繼承類(lèi)

2023-07-10 08:44:00

2023-02-16 08:26:41

2010-04-08 09:43:12

2022-09-16 15:54:56

開(kāi)源C語(yǔ)言

2019-08-07 11:05:29

Java開(kāi)發(fā)代碼

2011-07-19 16:56:09

移動(dòng)Web編程工具框架

2012-06-14 11:14:14

運(yùn)維Firefox插件

2022-03-22 09:14:11

PythonIDE編輯器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)