成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

谷歌:打造出色的移動應用必須知道的十點規則

譯文
移動開發
iOS與Android之間的不同成為移動領域一切差異的根源,但只要遵循以下技巧、大家就完全能夠在打造跨平臺應用程序的工作當中取得成功。

iOS與Android之間的不同成為移動領域一切差異的根源,但只要遵循以下技巧、大家就完全能夠在打造跨平臺應用程序的工作當中取得成功。

 

我最近撰寫并出版了一本名為《利用Appcelerator構建原生跨平臺App:寫給Web開發人員的新手指南》的跨平臺移動開發書籍。今天的文章內容主要源自對該書主干的摘錄,但在清晰性與篇幅長度上作出了針對性調整。總體來說,本文可以視為對該書內各核心重點的整理與總結——當然,如果大家愿意,也可以稱之為“備忘清單”。

 

盡管這些技巧主要圍繞Appcelerator平臺所展開,但其核心主旨仍然適用于任何一位打算為多種移動操作系統同時編寫應用程序的開發人員。如果大家能夠將這些技巧理解透徹并加以掌握,那么它們必定會幫助各位打造出出類拔萃的跨平臺原生應用程序。

 

技巧一號:不同平臺對于“美”的定義亦有所區別

 

以下各圖所示為Evernote移動應用在iOS 8、Android 4.4.4以及Windows Phone 8.1平臺上的運行效果。這些截屏顯示的是該應用的主屏幕內容,由于在同一時間由同一位用戶所登錄,因此其數據是完全相同的。

 

 

不過正如大家所見,Evernote在不同平臺上的用戶界面可謂截然不同。它們都很美觀而且擁有出色的設計,但很明顯“漂亮的Android應用”這一概述與“漂亮的iOS應用”可謂相去甚遠。總結來看,不同平臺對于“美”的定義亦有所區別。

 

在著手設計自己的應用程序之前,請大家別急著行動,先了解自己這套目標平臺的運作特色,并根據其具體參數實現自己的品牌表現效果。另外請大家記住,即使各位的應用程序渲染機制在不同平臺上有所區別,有了Appcelerator的幫助、我們仍然能夠在多平臺上使用同一套代碼庫并獲得相當高的代碼可重復使用比例。

 

技巧二號:所謂代碼重復使用指的是應用程序的邏輯——而不一定是UI

 

在使用Appcelerator或者其它跨平臺工具時,人們往往對于代碼重復使用這一概念存在著諸多誤解。事實上,期待能將全部代碼都加以重復使用本身并不合理,因為這不僅意味著我們對于自己應用的UI/UX幾乎不具備任何控制能力,同時也代表著應用程序在不同目標平臺上將擁有幾乎一致的視覺表現。

 

當然,有些朋友認為這正是跨平臺工具的終極目標——但我得說,這確實是種理解偏差。這是網絡瀏覽器的終極目標,跟跨平臺工具真的沒啥關系。再次強調一點,高重復可用性應該體現在應用程序的邏輯層面。

 

技巧三號:始終秉持“Web服務”的思維方式

 

因為我們要開發的是跨平臺應用程序,因此我建議大家最好在編寫代碼時確保其完全抽象,這一點與創建Web服務時非常相似(如果大家愿意,可以將跨平臺應用理解成一種本地化Web服務)。將所有編程邏輯完全獨立于其所將運行的屏幕之外甚至是平臺之外,這樣應用中的全部編程模塊就完全不會受到具體平臺類型的影響了,而且更重要的是,其能夠在其它平臺上得到重復使用。接下來,建立原本用戶界面,其作用是使用這些“本地Web服務”。在這套架構的支持下,各位將能夠確保自己的所有用戶界面代碼都徹底從邏輯中解耦出來,且各自擁有獨立的運作流程。

 

作為一位前Web開發人員,我在構建移動應用程序時花了很長時間才完成了這一思路扭轉與適應工作。是的,當時我一直在腦袋里想著“Web服務”這個概念。不過這種關于心理轉變的努力是完全值得的,而我們的應用程序也會因此變得更加出色。

 

更重要的是,通過這種方式,我們在iOS平臺上使用TabbedBar或者在Android平臺上使用ViewPager將不會帶來任何差異。畢竟用戶界面代碼僅僅只是應用程序邏輯的消費方。

 

為了幫助大家更順利地完成這段旅程,我特意準備了一套應用程序模板,大家可以利用它來創建自己的全新應用程序(詳見后文)。這套模板利用Alloy,也就是Appcelerator的MVC框架編寫而成。該模板提供針對不同平臺構建多套用戶界面所必需的MVC架構,而且其內容與邏輯皆具備可重復使用性。各位可以點擊此處從GitHub處下載這套應用程序模板。

 

技巧四號:請記住,標簽既可深入、亦可淺顯

 

iOS標準當中包含一套內置NavigationController,允許各個標簽當中包含多個導航層級。相比之下,Android標簽的結構則較為淺顯,并不具備標簽內導航機制。

 

為了更形象地說明這一點,我將向大家展示Facebook的Android版本應用程序在這方面犯下的錯誤(不過目前其已經得到修復)。下圖所示為Facebook的Android版本應用程序原本采用的通知標簽。

 

在任何一套Android應用設計指南當中都會提到,當用戶按下主屏幕處的后退按鈕時,當前應用程序就會被關閉。現在,如果大家點擊Facebook應用程序當中的任意通知信息,就會看到如下圖所示的畫面。

在Android標簽當中,這里并不應該存在導航按鈕。

 

很明顯,Facebook公司希望能夠像iOS那樣在標簽之內實現導航功能。然而這直接引發了兩個問題。第一,目前我們面對的是通知標簽,但ActionBar的標題處卻寫著“評論”。這實在讓人有點犯迷糊,而且也與直觀感受有所沖突。第二,也是最重要的一點,后退按鈕在這里被重新定義:按下它不再意味著關閉應用程序,而是將用戶帶回到前一個屏幕處。

 

作為一項重要的經驗法則,不要嘗試在自己的Android標簽當中強行加入導航機制。這么做只會破壞后退按鈕的操作效果,并讓大家的應用程序給人留下莫名其妙的印象。

 

技巧五號:透徹自己的目標平臺

 

以上列舉的實例也恰好證明了這一條,即我們應當對自己的目標開發平臺加以透徹了解。而了解自己的應用程序能夠借用平臺上的哪些功能特性、我們又應該或者不應該采取哪些設計思路的最佳途徑就是認真閱讀每套平臺的用戶界面開發指南。

 

除非大家每天都在使用自己的目標開發平臺,而且有信心對其中的運作方式、視覺相似性以及差異性都了如指掌,否則我建議大家先花點時間通往閱讀其開發者指南。

 

好好看看iOS開發指南與Android開發指南,在吃透了這些說明文檔之后,大家將擁有豐富的背景信息,足以幫助自己了解每套平臺的特色、設計出更優秀的用戶界面并了解能夠借助Titanium API或者第三方模塊實現哪些運行效果。

 

技巧六號:與設計團隊通力協作

 

如果大家身為一位圖形設計師,請確保自己了解每一套移動系統平臺、其導航模式以及視覺表達語言。大家會發現,這些細微的差別最終可能對應用程序的可用性造成巨大影響。

 

如果大家身為一位程序員,且開發團隊當中擁有一位專業的圖形設計師,或者以外包人員/自由職業者的身份為某個機構臨時工作,那么首先請學會如何與這些非技術設計人員順暢協作、同時教導他們吃透移動平臺的特性。幫助他們意識到,不同移動平臺各自擁有自己的一套信息顯示、屏幕布局以及導航實現機制,而這些差別絕不僅僅是Android設備上存在后退按鈕與ActionBar、但iOS上沒有這么簡單。移動平臺彼此間存在差異,因此根據定義,大家的跨平臺應用程序也應該在不同平臺之上提供有所區別的顯示效果。

 

技巧七號:不要畏懼模塊

 

Appcelerator的目標從來不是為100%原生SDK提供全面支持,恰恰相反,其核心訴求在于提供一套全面而卓越的跨平臺API。為了涵蓋那些尚未正式得到支持的功能特性,Appcelerator提供了一套原生模塊開發框架(即Native Module Development Framework),Objective-C與Java開發人員能夠利用它享受到更多特性與功能所帶來的便利。這些模塊能夠顯著增強應用程序的整體質量,并借此帶來更出色的用戶體驗。學習尋找模塊、使用模塊并接納模塊。

 

技巧八號:熱愛自己的目標開發平臺

 

不要讓我們的個人偏好影響到跨平臺應用程序的設計、功能以及質量。即使大家更喜愛iOS,也沒有理由因此而為iOS版本的應用作出更多承諾,而留下Android用戶孤伶伶無人問津。學會熱愛每一套移動平臺,了解其各自優勢與局限。學會對不同平臺進行比較,而不是有針對性地挑剔甚至進行語言攻擊。各平臺都擁有著自己的生存發展之道,而且從其背景來看都做出了正確的選擇。請記住,我們是專業的開發人員,我們的目標就是為每一套目標平臺開發出能力范圍之內最棒的應用產品。

 

技巧九號:經常測試

 

由于我們的跨平臺應用程序當中包含有大量跨平臺以及平臺專用性代碼及組件,因此請確保自己以較高頻率對其進行測試。不要連續幾天在Android版本上搞東搞西,最后卻發現自己的編寫成果運行在iOS平臺上時會產生對象位置偏差、顯示字體有誤甚至App載入時崩潰等問題。我的建議是經常進行測試,這樣如果單一平臺上存在問題、大家將能夠立刻意識到這一點。

 

技巧十號:從用戶的角度思考問題

 

在構建自己的應用程序時,我們的用戶是需要最優先考量的核心因素。要在目標平臺上開發應用,我們自己首先應該成為該平臺的用戶并了解該平臺的運作方式。另外,在用戶之前首先自行試用,看看應用程序體驗能否滿足自己的預期。再有,將視角放遠,感受一下其它應用程序,并從客觀的角度比較并分析它們與自己設計成果間的優劣。

 

在對自己的應用程序進行測試時,請注意以下幾個問題:我會使用自己的應用程序嗎?這款應用程序的使用感受是否理想?確保一切都符合我們自己的既定標準。如果大家熱愛自己的應用成果,那么相信用戶們也會對其表示認同。

 

在我們當下所生活的時代里,沒有任何一家企業能夠忽視移動技術的強大力量或者無視移動用戶們的預期及需求。了解如何正確地開發跨平臺應用程序將成為一項關鍵性技能,足以幫助大家(以及所在企業)在激烈的市場競爭當中脫穎而出。有了以上十條技巧作為保障,大家應該能夠以自己的方式在移動開發的道路上取得成功。

 

備注:我還將以上技巧制作成了信息圖表,以便于大家隨時激勵自己——點擊此處即可查看。圖表內容被設計成了海報尺寸,這樣大家就能根據需要將其打印并貼在辦公桌邊的墻上了。

 

原文鏈接:

 

http://www.infoworld.com/article/2918472/mobile-development/top-10-tips-for-building-better-mobile-apps.html

 

原文標題:Top 10 tips for building better mobile apps

 

核子可樂譯

 

責任編輯:chenqingxiang 來源: 51CTO
相關推薦

2020-07-13 07:10:09

SQLSQL語句查詢

2024-11-05 08:28:50

2024-06-11 08:00:00

2010-06-25 09:18:43

MySQLOracle

2010-02-26 09:08:14

Android系統改進

2017-06-07 08:54:47

APM儀表板Lombok設計框架

2012-10-23 11:14:45

BYOD移動設備管理移動設備

2013-01-06 10:53:10

2020-10-09 10:15:22

谷歌機器人輔助機器人

2024-09-26 21:44:29

2024-09-24 13:31:14

2016-10-17 20:54:34

Web技術堆棧編程語言

2010-10-28 10:26:56

求職

2023-11-13 08:18:56

2014-09-01 09:53:50

Android框架

2022-06-08 10:42:34

ReduceJavaScript技巧

2016-03-02 10:27:16

Python定制化Eclipse IDE

2013-12-10 09:00:51

WindowsLinux開發環境

2021-09-15 09:20:37

Python函數代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产欧美一区二区三区在线看 | 欧美日在线 | 99精品久久 | 久久中文字幕一区 | 国产精品国产三级国产aⅴ浪潮 | 久久久久国产一区二区三区 | 国产激情综合五月久久 | 黄色av网站在线观看 | 激情 亚洲 | 伊人狠狠 | 亚洲欧美一区二区三区1000 | 国产亚洲一区二区三区在线观看 | 日韩欧美在| 日韩久久久一区二区 | 一区二区三区中文字幕 | 亚洲成人免费视频在线观看 | av网站在线看 | 精品自拍视频在线观看 | 一区二区在线不卡 | 午夜免费网 | 欧美精品一区二区三区四区 | 色婷婷精品国产一区二区三区 | 偷拍自拍网址 | 久久99深爱久久99精品 | 欧美一区二区三区大片 | 香蕉大人久久国产成人av | 日韩在线一区视频 | 狠狠干网站| 亚洲成av人影片在线观看 | 欧美三区在线观看 | www.亚洲免费 | 91精品国产综合久久久久久丝袜 | 午夜影院 | 日本精品一区二区三区视频 | 水蜜桃亚洲一二三四在线 | 国产露脸对白88av | 国产精品久久久久久久久 | 日韩网站在线 | 羞羞色影院 | 成人高清在线视频 | 蜜桃视频在线观看免费视频网站www |