歡迎來(lái)到 常識(shí)詞典網(wǎng) , 一個(gè)專(zhuān)業(yè)的常識(shí)知識(shí)學(xué)習(xí)網(wǎng)站!
[ Ctrl + D 鍵 ]收藏本站
答案 1:
這個(gè)問(wèn)題太難回答了,不過(guò)我可以說(shuō)說(shuō)我的看法。1. android是基于linux,所以要熟悉linux系統(tǒng),特別是嵌入式linux系統(tǒng)2. android平臺(tái)的程序都是通過(guò)Java語(yǔ)言開(kāi)發(fā)的,所以要熟悉java語(yǔ)言3. android系統(tǒng)級(jí)的程序或者底層調(diào)用NDK開(kāi)發(fā),需要用到C/C++4. 大多數(shù)android應(yīng)用都是客戶(hù)端應(yīng)用,所以對(duì)UI的設(shè)計(jì)及界面開(kāi)發(fā)也要有足夠的了解。5. 高手有很多種,比如做ROM、開(kāi)發(fā)系統(tǒng)應(yīng)用、一般的WEB手機(jī)端應(yīng)用、Android游戲。。。答案 2:
我覺(jué)得Android開(kāi)發(fā)上有三個(gè)層次技術(shù): 1. 第一個(gè)層次和傳統(tǒng)的嵌入式Linux最接近,主要涉及的是CPU、GPU以及外設(shè)的驅(qū)動(dòng)以及使能方面。多需要熟悉Linux內(nèi)核,Android框架定義中驅(qū)動(dòng)的接口規(guī)范等等,這部分開(kāi)源社區(qū)的力量最大。 2. 第二個(gè)層次主要是涉及Android框架中間件部分,如多媒體/3D框架,Java虛擬機(jī)等等,這部分Google控制的是最嚴(yán)格的,因?yàn)樗刂?Android各種feature以及捆綁自己的移動(dòng)互聯(lián)網(wǎng)應(yīng)用,必須規(guī)范中間件。這部分所涉及的軟件技術(shù)也最多,從各種C/C++庫(kù),Java虛擬機(jī)性 能,用戶(hù)體驗(yàn)抽象到數(shù)據(jù)庫(kù)設(shè)計(jì)等等很大的內(nèi)涵。開(kāi)發(fā)的一般也是選擇一個(gè)方向發(fā)力。 3. 第三個(gè)層次就是App開(kāi)發(fā)層次,這個(gè)層次主要就是利用Android SDK開(kāi)發(fā)了。很多C/C++出身的覺(jué)得是用Java開(kāi)發(fā),其實(shí)Java就是啥都是指針的C++,外帶try/catc-以及垃圾收集,上手其實(shí)是很快 的。Android程序最重要一點(diǎn)是理解生命周期概念,將一個(gè)Activity和Linux一個(gè)進(jìn)程對(duì)應(yīng)起來(lái),啥時(shí)候這個(gè)進(jìn)程啟動(dòng),啥時(shí)候睡眠,啥時(shí)候退出搞清楚,后臺(tái)的事件循環(huán)如何運(yùn)行的,最后時(shí)刻要提醒自己虛擬機(jī)在運(yùn)行,垃圾收集在運(yùn)行。Google Code上有還多參考代碼,在看中學(xué),體會(huì)很快的。答案 3:
入手Android 應(yīng)用app開(kāi)發(fā)快半年,感覺(jué)一直都在摸索,感覺(jué)還沒(méi)有入門(mén),需要學(xué)習(xí)的東西太多了: 1. java語(yǔ)言 2. android ui設(shè)計(jì)和app交互設(shè)計(jì),頁(yè)面布局,動(dòng)畫(huà)效果 3. android 后臺(tái)服務(wù) 等等等等 像樓上周昌說(shuō)的,第三個(gè)層次就是App開(kāi)發(fā)層次。 移動(dòng)互聯(lián)網(wǎng)節(jié)奏非常快,好多東西都是現(xiàn)學(xué)現(xiàn)做,建議從開(kāi)源項(xiàng)目入手,推薦幾個(gè)開(kāi)源客戶(hù)端: 飯否Android客戶(hù)端/foursquare開(kāi)源客戶(hù)端,學(xué)習(xí)多線程、-ttp、mvc設(shè)計(jì)模式 beem客戶(hù)端:學(xué)習(xí)xmpp協(xié)議,后臺(tái)服務(wù)與Activity之間的通信。 摸透這些客戶(hù)端的精華之后,做一般的app應(yīng)用就沒(méi)有太多問(wèn)題了。難點(diǎn)還是在交互設(shè)計(jì)上答案 4:
用步步高的一句廣告詞,“哪里不會(huì)點(diǎn)哪里”。理論再深,抱著書(shū)本比劃再熟練,都沒(méi)有親身實(shí)踐一下好得多。Linux的內(nèi)核,C/C++的底層,Java虛擬機(jī)作為頂層開(kāi)發(fā)語(yǔ)言……這些東西當(dāng)然很重要,但更重要的是自己的探索。如同在Android上的一個(gè)小小的點(diǎn)擊操作一樣,哪里不會(huì)點(diǎn)哪里。點(diǎn)準(zhǔn),點(diǎn)深。答案 5:
看源碼。。。自從down了android源碼后。api都手冊(cè)完全不需要了。。。任何手冊(cè)都是基于源碼而來(lái)的。但有些方法的描述很無(wú)厘頭。還是自己看邏輯去理解比較靠譜答案 6:
之前做過(guò)一些嵌入式linux的東西,在轉(zhuǎn)向android之后,我覺(jué)得比較適合我的就是做ndk這一塊。開(kāi)發(fā)的層面很多,前面的前輩說(shuō)的也很詳細(xì),我覺(jué)得還是要結(jié)合實(shí)際,從一點(diǎn)出發(fā),專(zhuān)注一個(gè)層面的學(xué)習(xí),不要怕。答案 7:
多實(shí)踐,多思考答案 8:
多研究Android原生應(yīng)用。答案 9:
多看源碼,多實(shí)踐。答案 10:
Stackoverflow上有一個(gè)關(guān)于如何學(xué)習(xí)android開(kāi)發(fā)的詳細(xì)討論 參考: stackoverflow/question...答案 11:
多看看別人寫(xiě)的代碼,理解,思考。我是剛?cè)胄械腶ndroid程序員,大家一起加油吧!答案 12:
你要先清晰了解什么叫高手。答案 13:
①學(xué)習(xí)java 把java學(xué)精了, ②多做項(xiàng)目,別老看書(shū),慢慢來(lái),做多了就會(huì)了 ③堅(jiān)持下去,別放棄答案 14:
多敲代碼,勤思考。答案 15:
多敲代碼 多思考答案 16:
如果想成為開(kāi)發(fā)高手,可以自己先寫(xiě)寫(xiě)簡(jiǎn)單的應(yīng)用,感覺(jué)上手了,再做一些稍大的應(yīng)用。差不多了,可以看看android底層C++實(shí)現(xiàn)方面的東西。如果想成為應(yīng)用高手,多去機(jī)鋒網(wǎng),安卓網(wǎng)等論壇逛逛,相信你會(huì)有所收獲。答案 17:
首先你得清楚你的高手的定位——是底層硬件呢,還是應(yīng)用層的軟件?想成為全才幾乎不現(xiàn)實(shí),如果鉆研底層的話(huà),可以研究C/C++,至少得會(huì)搞個(gè)ROM出來(lái),這樣才能配的上高手;如果專(zhuān)注于APP,那么得把Java搞透了,然后服務(wù)器端開(kāi)發(fā)也要通曉,畢竟現(xiàn)在的一流移動(dòng)應(yīng)用幾乎都得與服務(wù)器通信...答案 18:
循序漸進(jìn),厚積薄發(fā)答案 19:
你指的是開(kāi)發(fā)高手還是玩家高手?答案 20:
買(mǎi)個(gè)藍(lán)屏機(jī),然后等你把a(bǔ)ndroid裝上后,你就是高手了。答案 21:
標(biāo)記~!答案 22:
點(diǎn)點(diǎn)滴滴積累起來(lái)。下一篇:當(dāng)你20歲的時(shí)候你正在做什么?現(xiàn)在又在做什么? 下一篇 【方向鍵 ( → )下一篇】
上一篇:很想提高口語(yǔ),去新東方培訓(xùn)的最好方式是什么? 上一篇 【方向鍵 ( ← )上一篇】
快搜