網路城邦
上一篇 回創作列表 下一篇  字體:
用甚麼語言寫App比較好?
2013/12/18 07:41:04瀏覽33000|回應1|推薦19

公司老闆之前請人開發了一些App程式,主要是做一些活動的網路報名之用,但是據說這種「人才」很難找,做到一半還準備離職,所以希望我招收的新員工(要幫我寫程式的)能接手繼續開發。昨天我帶學生(新員工)去台中公司報到,順便了解如何接手此項工作,之後就寫了信提出一些技術建議,我想對於App開發有興趣的人也可以參考一下我的看法,有無道理就自己判斷囉!信的內容如下:

(老闆名諱)

稍稍了解您的App開發現狀與需求後,我比較建議不要繼續使用Java程式開發。因為雖然Android非常火熱,Java也號稱跨平台,但是據我所知只有HTML是真正跨平台的語言!用Java寫的App無法直接適用於iOSWindows 8,但是HTML+JavaScript(網頁架構)App可以!目前業界開發App的尷尬之處是一樣功能的程式要在iOSAndroid都適用,就必須用兩種語言(Java & Object C)各開發一次。直接用HTML+JavaScript開發則沒有這種問題,因為每個作業系統都有瀏覽器,也就都可以直接解讀這種App。以技術層面看,如果「不用」這種架構開發App的原因,我認為有三個:

1.     速度不夠快,如即時互動的遊戲程式

2.     較難直接與資料庫等伺服端功能結合

3.     一般程式師覺得傳統程式語言功能強於網頁JavaScript語言的成見!

如昨天討論,速度對於目前公司想開發的App來說不是問題(需求不高)

至於與資料庫的互動只是開發者對於JavaScript程式的通訊功能技術掌握的程度不夠而已,以我目前熟悉的技術是可以用HTML+JavaScript與伺服端資料庫或程式順暢溝通的,所以才能指導學生做很多完全不使用外掛元件(FlashJava AppletActiveX)的網頁連線遊戲。

這些技術或許開發出來的遊戲效能略略不如直接用JavaObject C開發的原生碼程式,但是確實可以與伺服端資料庫及各種程式功能無縫接軌,不只是你需要的報名系統,甚至簡單的通訊軟體都可以做得出來!其實Google的所有網頁程式,以及FaceBook早期開發(包括互動遊戲)也都是這麼做的!

簡單說,即使是已經寫好的那些Java App,我估計找我的其他學生重新用HTML+JavaScript改寫的時間,比起讓(新員工名諱)重新學Java App繼續製作的時間還更快!而且我聽(新員工名諱)說那個系統被搞得相當複雜,還夾雜有PHP程式元件等怪怪的東西,所以讓她聽得相當迷惑,因為照我們所知技術,要達到目標功能根本不需要這麼複雜的!

Java+PHP真的是很奇怪的組合?理論上我們可以用Java搭配資料庫寫成一般視窗程式(exe),也可以使用PHP搭配資料庫寫成網頁程式,都可以完全達到需求的功能,如果會做成這樣,可能原因之一是確實有些資源在某一程式函式庫中不支援,所以外叫其他語言的功能,以前我用VB6寫程式就常常需要呼叫API(實際上是C語言函式庫)

但是這麼簡單的功能應該任何語言都能獨立完成的!所以我不免會判斷為第二個原因:就是程式師功力不夠,不會用主要使用的程式達到目的,就亂亂搜一些撇步,或忍不住使用之前自己比較熟悉的另一種語言的功能。我指導過很多學生開發商業系統,聰明但是功力還不夠深的程式師非常容易開發出這種過度「複雜」的程式!反正老闆們不會看內容,只看結果功能,所以都不會被質疑 (我自己也是這樣過來的)。換言之,我猜想目前已開發的程式不是甚麼值得珍藏研究,並以之為基礎繼續開發的好作品。

以上請您參考!

張逸中

( 心情隨筆校園筆記 )
回應 推薦文章 列印 加入我的文摘
上一篇 回創作列表 下一篇

引用
引用網址:https://classic-blog.udn.com/article/trackback.jsp?uid=yccsonar&aid=9988886
 引用者清單(1)  
2014/09/30 09:50 【udn】 購買前先比價!App Android 完全 程式比價

 回應文章

PeterNJ(擁擠與便利)
等級:8
留言加入好友
2013/12/19 10:11
Model–view–controller; 您的方法將 view 和 controller 結合, 優點也是有!