※ 本文為 ott 轉寄自 ptt.cc 更新時間: 2014-03-02 13:51:35
看板 Soft_Job
作者 s9503669 (稀飯)
標題 [請益] 關於開發手機app的職缺(ios/android/web)
時間 Sat Mar  1 11:45:06 2014


大家好,我是一個工作經驗約一年的工程師,主要工作會碰到
web端相關程式+java。然後有點問題想請教大家,就是就我所知
主要開發手機app的作法有三種(好像還有別的):
1.android 平台:原生碼(java)
2.ios 平台:原生碼(object c)
3.跨平台:html5+jquery mobile+css+phonegap

而我目前的工作主要會碰第3種,不過長期下來發現,第3種
雖然可跨平台,但會衍申很多問題,比如同一套code在各裝置上的畫面常常
會有差,或是同一個event的效果也會不一樣,變成常常會花很多時間
在解決這些事上面。有時候我會想說會不會native code的門檻雖然
比較高,但至少穩穩地學到熟練後,就不需去煩惱那些各裝置瀏覽器上的問題 。
我會想得太容易了嗎?

另一方面,照理來說第三種方式,應該可以替公司減少開發時程及減少人力,
但我在網路上看到的職缺,幾乎都是前兩種居多,這讓我也有點困惑,不知為何?
我現在也在想如果前兩種的職缺比較多而且待遇比較高的話,打算假日有空自學
第一種,因為本身對java還算熟練。


希望能有高手替我解惑一下,以現在的產業環境及薪水待遇,應該要選第三種還是前兩種
好呢?感激不盡。

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.193.242.247
foreverangle:如果想用一份code在不同裝置執行,可以考慮titanium1F 03/01 11:51
s9503669:請問用這就不會有跨browser顯示差異的問題了嗎?2F 03/01 11:59
foreverangle:基本上就是把js code轉成原生去編譯,所以是原生app3F 03/01 12:01
foreverangle:以學習的情況,我會比較建議直接學native....
foreverangle:如果求快和學習成本低可以可慮3或titanium
GX90160SS:以個人職涯發展當然是native,另外C#+XAML表示:......6F 03/01 12:16
GX90160SS:還有就算是用native開發,還是要考慮一堆裝置不同和相容
GX90160SS:的問題,Android是裝置尺寸最不統一的,iOS的裝置尺寸
GX90160SS:相對較少種,但是每次版本都會搞死人,像是XCode5上面
GX90160SS:編譯時,iOS7和iOS6以前版本的顯示畫面就差很多...
GX90160SS:而Windows Phone的話最簡單,考慮兩種尺寸就好,只是當
GX90160SS:需求是要同時在Windows RT上跑的話...除了重拉UI以外
GX90160SS:,Code也要改寫很多地方......
s9503669:!竟會如此,話說為何職涯發展還是會選native,是因為web14F 03/01 12:36
s9503669:被取代性還是太高了嗎?另外android native不是可以用xml
s9503669:去處理各裝置呈現的問題嗎,這樣相容性的問題應該會比第
s9503669:3種小很多吧? 還是先謝謝樓上兩位
GX90160SS:native可以處理所有不同裝置平台顯示的問題,只是18F 03/01 12:40
GX90160SS:Android是尺寸最多平台,光拉畫面就要拉好幾套
GX90160SS:另外不建議行動裝置開發走Web的原因就像你說的,職缺開
GX90160SS:出來都是native,如果要走web還是找網站的工作比較好,
GX90160SS:看是要寫前端專心在html、css、javascript,還是走後端
GX90160SS:學好java、C#、SQL以及對應的framework
kinanson:沒有人會知道三年後會怎樣,但學好html5和css3和js肯定24F 03/01 16:37
kinanson:不會錯,fb都用html5寫app了.....
kinanson:phonegap有一個缺點就是會導致事件變慢,但我覺得這倒是
kinanson:還好,比起一堆轉啊轉五秒才跑出資料的,稍慢個半秒鐘真
kinanson:的是小事
GX90160SS:Facebook一開始的確是用Html5寫APP,但後來都是native了30F 03/01 17:30
YahooTaiwan:Facebook那是功力問題 在它宣布改為native後馬上被人31F 03/01 17:58
YahooTaiwan:用自製FB html5 app打臉   平平是html5 速度差很多
YunJonWei:根據歷史,總是想要靠一招吃所有平台闖天下的,從來33F 03/01 17:59
YunJonWei:沒有成功過的。就連Java想全吃Web與Desktop都做不到了。
YunJonWei:另外待遇高不高,根本不是看你開發哪種平台。
YunJonWei:搞錯重點學什麼都一樣啦。
YunJonWei:個人建議是直接學 Native。深耕單一平台。
bonny5566:你想的太簡單了 如果可以取代 那native還有可能存活?38F 03/01 19:43
bonny5566:native會一直擁有它優勢 不然幹嘛還要存在?
kros:當然是雙主修呀,學會了早上寫iOS下午寫Android是很平常的40F 03/01 20:25
qweqweqweqwe:如果3比較強 1&2早就消失了 沒這麼單純吧 QQ41F 03/01 22:57
kvjo:沒有跨平台solution這種事情 實際上42F 03/01 23:08
kvjo:因為你跨了OS平台 你還有Browser要跨
kvjo:User是不同終端 這個事實要面對 要想清楚什麼原因去選方案
kvjo:Web App 的確有可用之處 但是目前環境還不夠成熟
kvjo:只能輕量應用 或是特定方式應用 夠活夠廣的功能還是很需要
kvjo:Native這種方式 才是根本的
kvjo:如果Native的成本 真的那麼好 那麼有效可以取代
kvjo:世界上的開發者 都比你想得少嗎 @@?? 總是有原因的
kvjo:走web app 比較好是走web+ web app 方便一起深入
kvjo:如果是期許自己能寫native的 很多基底的東西 還是深入native
kvjo:那個經驗不會讓你吃虧的  只會讓你豐富經歷
kvjo:PS. Web也是很多細節的 也可以走深@@ 如果未來HTML5的環境
kvjo:更成熟  也許更有發展 也有可能 @@
kvjo:個人覺得Browser的效率都還有瓶頸 要靠HTML走複雜或大資料
kvjo:目前都還不是容易的事情@@ 最常碰到資料一多 一複雜 就慢..
fortinet:不覺得FB HTML5換Native是純功力問題,Sencha那個也稱不上57F 03/01 23:41
fortinet:打臉. 有人覺得FB的RD會是泛泛之輩? Sencha解掉某些問題
fortinet:也證明不了什麼. 放大到這世界上這麼多寫HTML5的RD來看
fortinet:只代表了當一某App UI需求有必要像Native那樣完美. 大部
fortinet:份公司的RD功力,時間跟預算, 光靠HTML5是做不出來的.
fortinet:如果你是Mark Zuckerberg, 你有這麼多現金, 跟這麼多
fortinet:又牛又給力的RD,但他們的答案是仍然做不出Native順暢的UI
fortinet:那你會堅持HTML5?
fortinet:我覺得以一個CEO的角度看事情, 他的決定是非常正確
YahooTaiwan:我是說 FB的html5 app會慢是功力問題66F 03/02 00:02
YahooTaiwan:看過太多抱著web開發思維去寫html5 app然後嫌html5慢
YahooTaiwan:就像你不會抱著寫桌面app的思維去寫mobile app一樣
YahooTaiwan:不知道為什麼 焦點一換到html5身上 弱開發者就像自己
YahooTaiwan:不須為自己的錯誤思維負責一樣怪罪給html5
liddle:就都學起來很困難嗎?不知道要壓什麼的時候就是全壓71F 03/02 00:51
liddle:就是要花時間而已.
liddle:另外支持樓上YT的說法,js developer的等級差距很可怕的
kinanson:我覺得是看運用啦,終究一定是原生的應用最好,但也無法74F 03/02 08:07
kinanson:完全否定web app,等到html5和css3完全成熟,快取和離線
kinanson:存取做得好,web app也可以做得很好,我倒是覺得web app
kinanson:目前最大的缺點是google資源還太少,很多東西得要自己想
kinanson:辦法處理
fortinet:我本身也是HTML5開發者,當然知道JS開發者等級差距很大,79F 03/02 08:42
fortinet:但你確定開發FB這麼龐大的Project,要解決的點只有Sencha
fortinet:刻個非常順暢的山寨FB,就代表剩下全部的需求一定做得到?
fortinet:我碰過各式Mobile, iOS,Android,WP每個支援度差異極大.
fortinet:Android2.X web bug一大堆, WP7都被捨棄還是得支援.
fortinet:如同上面大大所講,事情不是跨完平台就ok,還有Browser要搞
fortinet:這世界上不會有完美的開發方式,用對地方才是真強者
fortinet:而且你還沒回答我的問題,如果你是FB CEO,你會堅持HTML5?
fortinet:反正滿手現金, Sencha說他做得到? 乾脆全部挖過來做FB
fortinet:如果最後還是沒做到99分的UI你要扛責任嗎?
fortinet:當人在不同位階,看事情做決定的角度會不一樣.我只能說在
fortinet:他的位子, 他捨棄HTML5絕對是正確的決定.
s9503669:謝謝各位,我決定利用假日的空檔開始學android native,91F 03/02 11:17
s9503669:增加自己在mobile app的經驗和實力~
YahooTaiwan:我不是CEO 我也不想當需要決定公司策略走向的人 只想93F 03/02 13:30
YahooTaiwan:以工程師的角度來說明這個技術用在FB功能這麼單純的
YahooTaiwan:APP上是絕對可行的
YahooTaiwan:假設我不幸當上CEO 看到技術人員寫的APP 每切換一次頁
YahooTaiwan:面 資料就要重撈 我不會相信這個技術人員跟我說的話

--
※ 看板: ott 文章推薦值: 0 目前人氣: 0 累積人氣: 267 
作者 s9503669 的最新發文:
點此顯示更多發文記錄
分享網址: 複製 已複製
guest
x)推文 r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇