適合前端工做者的iPhone Web App開發

iPhone有着豐富的軟件資源,到目前爲止,僅在appStore上架的軟件就達十多萬個,而相比之下,有着10年曆史的WM系統卻不過只有大約2萬個應用程序。 隨着ipad和iphone 4的發佈,iphone/ipad的app應用開發將再次掀起熱潮。下面給你們介紹下iPhone App開發的兩種途徑及有優缺點,以及其中適合前端人員的iPhone webApp的一些開發工具,最後以無線UED Blog爲例子看看iPhone webApp的開發過程。 前端

一.什麼是iPhone Web App?web

目前有兩種方式讓你開發iphone上的應用:編程

  • 編寫Objective-C 及 iPhone SDK 直接運行在iphone上的原生應用程序
  • 在基於 WebKit 的Safari上利用HTML5, CSS3及Javascript編寫你所須要的WebApp網絡應用程序

而Apple的官方網站上,除了有iPhone/iPad SDK開發的詳細資料外,你也能夠像SDK應用程序提交到App Store同樣,把你的Web App提交到Apple的Web Apps Site。瀏覽器

固然,兩種開發模式, SDK應該是首選的開發方式,畢竟SDK纔是apple上的原生程序,而Web App是基於Safari,因爲本地文件操做等安全問題在功能上會存在較大的限制。可是Web App也並非沒有優點,它的開發更簡潔更快捷,它不須要像後者那樣向Apple 註冊申請使用SDK及 提交 Apple Store 審覈才能上架發佈;也不須要從新去學習Objective-C的編程語言,另外iPhone 4對CSS3支持的完善也將加快WebApp在iPhone上的應用。安全

至於iPhone Web App與普通的Web應用在開發上有什麼區別?恩,對於Web工程師來講,最明顯的一條就是你不須要去關心你的項目跨瀏覽器的兼容性,由於你面對的只有iPhone的Safari瀏覽器。iPhone 上的Safari 支持的標準:網絡

  • HTML 4.01
  • XHTML 1.0
  • CSS 2.1 以及部分 CSS 3
  • JavaScript (ES3)
  • DOM (Level 2)
  • AJAX (XMLHttpRequest)

下面是兩個比較出名的iPhone Web App應用:Facebook(http://iphone.facebook.com)以及Gmailapp

 

二.iPhone WebApp開發工具: iphone

Dashcode編程語言

Dashcode由Apple官方開發的, 能夠在iPhone/iPod Touch上用的Web Application而產生的開發工具。原來的DashCode是用來作Widget的,而新版的DashCode增長了iPhone的Web App的支持,並且很是方便。它提供了許多模板並附帶了很多用於製做iPhone特效的Javascript。這樣一來,製做iPhone原生界面的Web App能夠直接用這些JS提供的效果。不過,DashCode只能運行於Mac哦~:)工具

Eclipse iPhone插件

Apanta爲Eclipse提供的一個iPhone插件,利用它能夠生成特定的iPhone項目,讓你在開發的同時能直接在PC端看到頁面模擬在iPhone上的效果,固然,它支持旋轉取景器來預覽應用程序在iPhone上橫豎兩種不一樣效果。

三.iPhone Web App開發實踐:

上面是以無線UED博客作的一個iPhone WebApp的應用,使用了iUI的UI庫,iUI是一個是Joe Hewitt(目前就任facebook)開發的一套JS+CSS的UI, 徹底模擬iPhone缺省的視覺及交互。

先來看看iUI的樣式:它提供了iPhone 友好的交互方式與樣式。iUI提供的不只僅是一個CSS文件,基於這個CSS文件你所創建的頁面可以符合iPhone的人機界面指引,而且看起來的效果貼近iPhone原生的應用程序。

至於交互方面: iUI提供一個基於page的換頁導航機制。這裏的Page不是一個Web頁面,而是一個<body />內的頂級DOM元素,每個這樣的DOM元素均可以做爲一個page,同一時間上僅顯示一個page。頁面上的全部連接,要麼致使page轉跳,要麼致使整個頁面轉跳。

如下是Dem的一些頁面截圖:

橫屏效果:

除了SDK以外,web應用開發是否是也讓你眼前一亮?就像傳統的 Flash,Flex,Silverlight,Objective-C 那樣,造成本身的生態系統,畢竟Web應用比以上的技術更容易出如今任何設備上。

相關文章
相關標籤/搜索