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

成也Titanium,敗也Titanium之cons

移動開發
正如所有事情一樣,每一個設計方法,在每一個決策,都有優點和缺點。對于簡單,小的應用來說,Titanium應該是最好的選擇,但如果你希望強化你的應用程序的話還是選擇原生開發環境比較好。Titanium 作為開發原型來說是一個非常優秀的工具,你可以花費很少的時間,作成prototype展示給客戶,進行可用性測試。但是不管是正反哪個方面,在每次項目中都應該去評估,因為它跟取決于項目自身。需要考慮的關鍵點是:效益,成本,預算,開發的復雜性,跨平臺支持有多重要,項目的戰略,性能的重要性等等。你必須權衡每個正反方面的觀點,根據你的具

上篇,我們來說說Titanium另外一面,看看他到底有什么樣的不足。

1)收費的Titanium

   天下沒有免費的午餐,免費的另一面就是收費!Titanium的營收模式分兩種:增值收費和平臺。基本部件免費,高級部件、Titanium Studio的附加功能和官方專業指導服務都需要付費。而且要想獲得他們專業的1對1服務,更是相當的昂貴!

2)貧乏的開發文檔

   API文檔不完整,要么書寫的過于簡單,要么干脆就沒有提到,要么就是版本已經升級沒來得及更新,偶爾還有寫錯的。

   查看API是很多時候解決問題的***方式,應該在***程度上重視API的提供。

   提供的Guides內容也很有限,很多東西都沒有提到,也就是能夠得到一些基本的信息而已。

   Guides雖然是以WIKI的形式提供的,但也只能是他們自己的職員才能夠編輯。

     --->(2012/03/26)Titanium 提供可編輯的Community Wiki了

   同樣在Github上的project里理應開發的wiki也沒有開放。

   他們提供了很多的入門視頻,出發點是好的,但是一些由于版本升級后已經過期的視頻沒有被拿下,無法分辨是否還能觀看使用。

3)Q&A論壇不完善

   首先他們使用的Q&A論壇程序本身在技術和設計上就存在很多問題,比如你想查找個問題是很費勁的,它所給你顯示的結果的排序非常混亂,不知道是否結合了回答數,點擊數,發布時間等,但就是跟你想象的結果差的太遠,你就得挨個看看每個問題是否跟自己的問題類似,當你將你的Q&A Profile的Notifications設置成Enabled的時候,你也很多時候收不到來自論壇的郵件。這樣你就無法知道是否有人回答了你的問題,不得不每次都把問題挨個查看一遍。

   很多人希望得到他們開發人員的回答,但是他們很少在Q&A論壇中回答問題,偶爾一次就是很難得的了。你會發現很長時間都沒有人理會問題,很多時候還是一些熱心的開發者來提供回答。

4)構建問題太多

   這是大家普遍反應的問題,在環境構筑,應用構建時候會出現很多問題,比如找不到SDK,build時出錯,不能啟動模擬器等等

   應用構建花費時間太長,很多時候當你點擊啟動emulator后,很長時間才能把模擬器啟動起來,而模擬器啟動起來后,你又會發現,Titanium總是提示找不到模擬器,讓你重新啟動。你不得不一遍一遍的重復這啟動這個操作,直到它好用。

5)性能太差

   問題***的還是性能問題,在Android下尤為嚴重(1.8版后引入V8后稍有改善)。當你往頁面上添加很多View的時候,頁面顯示就很吃力,當你的Tableview中有很多行時,滾動起來就很費勁等等。

6)無緣無故的crash

   最苦惱的就是這個問題了,因為它會讓你抓狂。也不知道什么原因,莫名的系統就提示你發生錯誤,不能響應了。一個最嚴重的問題是,應用程序崩潰時沒有任何明顯的原因,而且錯誤報告太簡單,很難幫助開發者解決問題。很嚴重的時候他會影響到開發者發布應用到Appstore或AndroidMarket上去。

7)無法做內存管理

   不用開發者考慮內存管理,是好事也是壞事。你將無法知道你的內存使用狀況,發生內存溢出的話,你將無從下手。很多時候會讓你陷入內存溢出的困境中,無法解決。

8)UI也存在問題

   目前提供的UI控件也存在著Bug,比如說,不能響應事件,無法滾動,不能顯示等等。

UI是應用的“門臉”,如果這里出現了問題,將直接導致用戶卸載應用。有時候導航不能正常工作,造成了一些導航控制不能實現,UI的設計被打破,如果這發生在一個真正的應用程序商店的產品身上的話,對開發者來說將是一個災難。但是苦惱的是你怎么Review你的代碼都發現它沒有任何毛病。

9)Bug修復太慢

   成千上萬的開發者在使用Titanium,每天都會發現很多問題,提交給了Appcelerator。但是你會發現很多bug很長時間都未能解決,間隔幾年的都有。

10)IDE功能不全

   最開始Appcelerator提供的IDE是Titanium Developer,自從收購Aptana之后,開始提供Titanium Studio。Titanium Studio是一個基于Eclipse的Aptana自定義版的IDE開發工具,它允許你創建,管理,測試你的移動應用項目工程,而且將工程自動打包發布到模擬器或者真機上去。而Titanium Studio在一遇到問題是就不在往控制臺輸出信息,最為嚴重的是會偶爾在構建的時候忽略代碼的修改。你不得不每次修改完代碼后clean你的工程。

   沒有官方的可視化開發工具,可視化開發對于應用的頁面布局是很重要的,無論是Android還是iOS都提供了強大的GUI工具。Titanium卻遲遲沒有提供,這就意味著你必須手動書寫你自己的代碼來實現你的布局。

   調試代碼很不方便,Titanium studio還需要加強代碼的調試功能。

11)錯誤提示不準確

   對于開發者來說,調試程序相當重要的,而在程序出錯的時候,查看出錯的位置,異常的堆棧等信息是很必要的。但是在開發中Titanium的錯誤提示很難讓你找到問題所在,很多時候你都會得到一個模糊的錯誤提示,它沒有給出你具體的錯誤,你也很難判斷錯誤。很多時候不得不先把一大部分代碼刪除了,一點點的網上添加來看看那里出了錯誤。

12)應用文件太大

   在構建應用時會生成大量的文件,一個很簡單的應用動輒就5,6M大小。而如果用原生的話,估計也就幾十K大小。

   當Titanium把你的代碼轉換成目標平臺(iOS,Android)代碼的時候,它產生了大量的類。比如我們查看Xcode工程的話,會發現它生成了大概450個類,而這些類中我們可能用到的也就是10來個左右。這雖然不是很大的問題,但是他堆積到你的應用中,增大了應用的大小,從而將會加大用戶訪問網絡的流量。

   在Android上,如果你查看應用源碼的話,你會發現它被寫的特別的臃腫。

13)功能受限

   Javascript不是Objective-C也不是Java,所以相比Object-C和Java開發出來的原生應用,可實現功能的范圍有所限制。正如前所述,使用JavaScript開發是簡單快速的,但是也將失去了原生應用開發語言的一些特有的功能。

   而且從代碼上來說,Object-C和Java的結構化嚴格規范,使得程序很容易維護,而JavaScript靈活寬松的語法也加大了維護的難度。

14)并非完全的開源

   說Appcelerator不是完全的開源,一點兒不過,他不接受眾多開發者的貢獻。他是能說是公開了源代碼而已。

1***ppcelerator在監視你

   Appcelerator在監視你,你知道嗎?為了分析app,Titanium默認開啟了分析功能。還有你想使用Titanium Studio創建應用的前提是:從Appcelerator申請賬戶,這樣一來,你創建了什么應用,支持什么平臺等等,都會傳回給 Appcelerator。Appcelerator每次發布的移動應用趨勢報告就來源于此。

16)API封裝不足

  盡管Titanium同時支持iOS和Android,但是目前的API還是需要寫很多基于iOS和Android平臺的代碼(盡管他已經為各個SDK簡化了代碼)。

  對于JSON對象的正確性也需要特別的注意,自帶的parser很嚴格,***得先使用eval一下。

   Titanium API的靈活性也帶來了不足,雖然他能你用短短的幾行代碼實現原生代碼很長代碼才能實現的功能,但是另一面來說他也限制了功能。比如你想給window設置一個鋪滿的背景,在原生代碼中是很普通很簡單的功能,但是Titanium中需要很多代碼才能實現。

17)代碼的可維護性

   Titanium在一定程度上增加了代碼的復雜度。何出此言,隨著app的功能的增加,代碼在不斷增多,開發也變得更復雜,你也將會遇到更嚴重的技術問題,比如:隨機崩潰,奇怪的行為,惱人的錯誤,等等。

   而代碼的組織,代碼的可讀性,MVC層次的分割,multi-device的支持, multi-platform的支持等等,都是需要你考慮的問題。

18)其他

   不斷的發布新的產品而不去修復既有產品、網站的問題。而且“新”產品總是在beta或者準備階段發布。

   有開發者通過Titanium開發的應用未通過Apple的審查,原因是應用調用了Apple的私有API,但是Appcelerator不承認他們有這個問題。

http://developer.appcelerator.com/question/123785/app-has-bee-rejected-by-non-public-api

***說一個網上最差的案例!有人花2萬多美元通過Titanium開發了一個iPad應用,但是經常莫名的crash,內存溢出。應用作者開始尋找Titanium Professional support,這當然要付很昂貴的服務費。雖然應用作者很詳細的說明問題,甚至把相關代碼發給了他們,但在很長一段時間里都沒能解決問題。應用作者就把問題反映給了Appcelerator的CTO(抄送CEO),很快就有了回復。承任Titanium存在Bug,并相應的提出ticket承諾在以后版本中修正但是不可能等那么長時間等他們版本升級,所以應用作者需要更加專業的企業級服務

得到的回復是,每小時375美元幫他排查代碼的問題,而應用作者估計他們至少需要20到40個小時才能通讀他的代碼后給出建議,這將是一筆不小的花費啊!

http://labs.thesedays.com/blog/2010/02/04/review-of-appcelerator-titanium/

正如所有事情一樣,每一個設計方法,在每一個決策,都有優點和缺點。對于簡單,小的應用來說,Titanium應該是***的選擇,但如果你希望強化你的應用程序的話還是選擇原生開發環境比較好。Titanium 作為開發原型來說是一個非常優秀的工具,你可以花費很少的時間,作成prototype展示給客戶,進行可用性測試。但是不管是正反哪個方面,在每次項目中都應該去評估,因為它跟取決于項目自身。需要考慮的關鍵點是:效益,成本,預算,開發的復雜性,跨平臺支持有多重要,項目的戰略,性能的重要性等等。你必須權衡每個正反方面的觀點,根據你的具體優先順序,來確定它是否適合你的需求。但是從個人觀點來說,當你啟動一個新的項目時,應該考慮考慮 Titanium,它是一個很棒的選擇!

責任編輯:佚名 來源: rensanning的博客
相關推薦

2012-05-18 11:29:55

Titaniumpros

2015-07-06 11:18:40

游戲運營設計教程

2012-02-13 14:41:50

Titanium架構分析

2019-05-31 08:23:00

Oracle數據庫云渡劫

2012-04-20 11:07:12

Titanium

2012-06-26 10:40:43

Titanium

2012-04-19 12:58:26

TitaniumJSS

2012-04-19 13:55:19

TitaniumTiMVC

2012-05-17 09:09:05

Titanium單元測試

2012-06-14 09:42:20

跨平臺工具AppceleratoTitanium

2012-04-19 13:52:16

TitaniumMVCRedux

2012-04-19 16:22:12

TitaniumTabGroup

2012-05-23 09:41:37

Titanium St卸載

2012-09-10 09:14:13

2021-07-03 23:40:27

CTR算法工程師

2012-04-19 17:16:32

Titanium實例代碼分析

2012-05-18 11:28:57

TitaniumCommunity W

2012-05-23 09:28:14

Titanium錯誤應對辦法

2012-05-18 10:08:56

TitaniumAndroid

2012-04-19 11:40:21

Titanium
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩成人影院 | 日本a网站 | 精品九九九| 国产亚洲第一页 | 99精品一级欧美片免费播放 | 九九热精品视频 | 中文字幕丁香5月 | 亚洲三级av | 在线小视频 | 韩国主播午夜大尺度福利 | 国产精品福利在线观看 | 国产精品久久久久久久久久久久 | 欧美激情国产日韩精品一区18 | www狠狠干 | 欧美成人免费在线 | 国产 日韩 欧美 中文 在线播放 | 91视视频在线观看入口直接观看 | 久久久久网站 | 亚洲一区有码 | 天天操夜夜拍 | 在线国产小视频 | 99视频 | 超碰97av | 国产 欧美 日韩 一区 | 色一情一乱一伦一区二区三区 | 欧美一区二区三区的 | 精品国产一区二区三区在线观看 | 羞羞视频在线观免费观看 | 亚洲精品一区二区二区 | 粉嫩一区二区三区四区公司1 | 国产视频观看 | 99久久99| 国产一区不卡 | 日韩在线播放网址 | 亚洲二区在线观看 | 婷婷色在线播放 | 成人精品高清 | 九九九精品视频 | 亚洲一区二区三区视频在线 | 久久这里有精品 | 日韩成人 |