淺談Java開發(fā)和Android開發(fā)的不同
Java是具有多種用例的完整開發(fā)語言,包括Web開發(fā),PC程序開發(fā),嵌入式開發(fā)等。
Android開發(fā)是面向手機(jī)應(yīng)用,使用Java較多,還有常用的H5跨平臺(tái)混合架構(gòu)模式。
一,UI界面開發(fā)不同
1)Java Swing
現(xiàn)在Java開發(fā)基本上都是Web服務(wù),提供REST接口給前端頁面調(diào)用。其實(shí)Java有一個(gè)很好用的UI界面開發(fā)庫。Swing是GUI(圖形用戶界面)開發(fā)工具包,包括容器JFrame、組件JBox, JPanel和布局BorderLayout等。
2)Android Activity
Android界面通過Activity實(shí)現(xiàn),是用戶操作入口,接收指令。Activity之間通過Intent進(jìn)行通信,調(diào)用服務(wù)實(shí)現(xiàn)處理邏輯。
二,業(yè)務(wù)邏輯開發(fā)相同
實(shí)現(xiàn)業(yè)務(wù)邏輯的代碼,從開發(fā)語言來講兩者沒有大的區(qū)別,面向?qū)ο缶幊獭?shù)據(jù)封裝、類和實(shí)例,只是針對不同的業(yè)務(wù)場景做不同的事情。
比如Java開發(fā)Web服務(wù)時(shí)常使用MySQL數(shù)據(jù)庫、Redis緩存、Quartz定時(shí)任務(wù),Android開發(fā)時(shí)則使用SQLite、本地文件緩存等方式。
三,其它模塊
Android四大組件有Activity,Service,Content Provider,Broadcast Receiver。以Android Service后臺(tái)服務(wù)為例,可以理解成多了一層Android系統(tǒng)上的封裝,實(shí)現(xiàn)部分還是類似甚至一樣的,多線程、定時(shí)任務(wù)調(diào)度、數(shù)據(jù)共享,等等。
四,大前端
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,移動(dòng)端開發(fā)成了重點(diǎn),為了支持Android,iOS,還有微信小程序等平臺(tái),越來越多的應(yīng)用開始使用H5跨平臺(tái)架構(gòu),這時(shí)有個(gè)新名詞叫做“大前端”。
具體到H5開發(fā),常用三劍客:HTML, css, JavaScript,這時(shí)和Java開發(fā)基本上就是前后端的分工,H5和JS開發(fā)前端,Java開發(fā)后端服務(wù)。