現代Web應用開發者必備的六大技能

csdn發表於2013-08-14

  過去,應用開發需要注重大量的專業知識,程式設計師只需關注單一的語言(比如COBOL、RPG、C++等),並利用該語言建立應用。而如今,時代在變遷。Web不再是單單關注獨立的一面。相反,一個現代化的Web應用開發者應該是“樣樣精通”。他們不僅要理解開發方面還要明白Web應用安全漏洞問題,瞭解如何與其他裝置整合在一起等等。往深了說,他們還需要了解這些應用程式是如何執行在平板電腦和智慧手機上的。

  換句話說,Web應用開發正變得更加複雜化。它迫切需要一個不斷增加以及不斷髮展的配套技能。

  那麼,現代Web應用開發者理應具備哪些技能呢?作者 Joe Stangarone總結了幾大領域專家的意見(也包括他自身的想法),這六大技能是每位Web應用開發者必須具備的:

  1. 安全

  過去,企業在內部安裝應用,基於防火牆背後的應用無法與第三方服務或應用進行通訊。而隨著軟體的發展,現代Web應用能夠與其他裝置進行整合,並儲存在雲伺服器上或者訪問多種型別裝置。因此,安全問題顯得尤為重要。

  “作為一名應用開發者(web/desktop),深入理解應用程式的安全性是最為重要的技能之一。”Veracode首席安全顧問Stephen Jensen說道,“在當今世界,有關安全問題的新聞不絕於耳,大多數是揭露數以百萬計的人們的敏感資訊。因此,Web應用開發者必須知道如何預防常見的漏洞,比如Cross-Site Scripting (XSS),SQL隱碼攻擊等。為了確保應用在建立過程中免受安全問題的惡意攻擊,同時也為了保護使用者潛在的敏感資訊問題,這也是所有開發者應當學習的必備基礎技能。”

  2. 使用者體驗(UX)設計

  “隨著移動裝置使用者需求量的不斷增加,開發者需要充分理解使用者體驗設計顯得愈發重要。”Raster Media CEO Michael Smith說,“設計團隊單獨負責某款應用的使用者體驗的日子已經一去不復返了。開發者必須考慮互動、動畫、速度以及各個APP之間的通訊等問題。” 

  我完全贊同這一觀點。使用者體驗設計有幾大重要因素,首先,使用者的期望有所上升。使用者下載一款新的應用,他們想立即知道它是如何執行的。他們希望從業務應用中獲取相同的體驗。其次,使用者有選擇的餘地。如果不喜歡這款應用,他們會尋找另一款代替。由於使用者的期望值增加以及競爭的加劇,更為直觀的介面需求比以往顯得更加重要。

  3. 自適應/響應式設計

  談及UX設計,Web App開發者必須建立可隨處執行的應用程式。現在的問題不再是“使用者如何與我的應用進行互動?”而是演變成“使用者與我的應用如何在每款裝置型別上進行互動?”

  想要做到這一點並不容易。你必須回答以下這些問題:“智慧手機上的按鈕設定在哪裡?你如何在小螢幕上格式化資料表?當裝置從人像模式切換至風景模式會發生什麼?”總之,Web開發者必須知道讓Web應用適應不同螢幕大小的方法。

  針對跨平臺/裝置,響應式設計和自適應設計主要兩大方法:

  • 響應式設計使用流體網格以及CSS3媒體查詢來適應各種螢幕大小/型別上的應用。你可以通過Web找到各種響應式設計案例。例如 TheNextWeb就是個典型的案例。你會發現,當你調整瀏覽器大小時,該網站會自動適應新的尺寸。
  • 自適應設計根據不同的裝置提供不同的HTML頁面。比如,一款獨立的Web應用可能需要3個獨立的表示層(HTML):一個是PC端,一個是平板電腦,另一個則是智慧手機。例如,在不同的裝置上訪問 Web App,外觀和行為顯示的均各不相同。

  那麼哪一種方法最好呢?我想說它們有各有各的優勢。響應式方法對於Web網頁設計以及Web應用資訊來說是個不錯的選擇;而自適應方法可更好的適用於資料驅動Web應用,尤其是包含那些資料表的應用。為什麼?這是因為它讓開發者能夠更好的控制資料結構和樣式,而不是試圖去適應多種螢幕尺寸上的單個表格,自適應設計方法可讓你為每款裝置建立不同的表單。

  4.  JavaScript

  開發者總會為他們選擇的程式語言而爭論。你無法說服一個Java程式設計師稱讚PHP是最好的,反之亦如此,就像你也無法說服一個PHP程式設計師贊同Java是最好的。在Web應用中開發者大多數會選擇使用JavaScript。

  “隨著移動和Web桌面應用的發展,JavaScript已快速成為最為重要的計算機語言。” Coordinato創始人Ben Bakhshi表示,“不少業內人士認為利用JavaScript編碼將在未來10年內顯著增加。”

  5. Web應用架構

  在Web開發上,應用架構變得比以往更加重要。應用體系架構直接影響到應用可擴充套件性、靈活性,以及整合其他Web服務和應用的能力。如果開發者想要建立一款有用的、可持續性的應用,那麼理應深刻掌握Web應用架構知識。

“Web應用開發者應該充分關注Web應用架構”,MRC軟體開發經理Tyler Wassell說,“開發者應該瞭解,所開發的應用程式如何與所有系統元件進行互動,以及底層架構將如何影響諸如可移植性、可維護性、可用性等效能情況。”

  6. API整合

  現如今,API已發展成為Web開發一個重要的方面。從本質來講,API讓不同的Web服務之間相互通訊。開發者可以通過其他應用/服務上呼叫資料建立應用。

  SimpleCollegeRecipes網站創始人兼CEO Brendan O’Connor認為,“API整合已成為現在Web應用開發者必備的技能。API允許你從其他網站上整合內容和資訊。可以說,API使人人受益,包括終端使用者,API供應商以及程式設計師自己。”

  總結:

  Web應用開發正在不斷演變,Web開發所具備的技能也在不斷更新變化中。開發者唯有不斷進取、學習新的知識才能在開發行業中站住腳。當然,想要掌握每一種Web(移動Web)技能,幾乎是不可能的,大部分公司無法為員工給予Web以及移動開發方面不同的解決方案,不可能做到面面俱到。

  那麼,你的公司是如何解決日益複雜的Web應用開發的?

相關文章