android應(yīng)該如何學(xué)習(xí)
安卓開(kāi)發(fā)學(xué)習(xí)已經(jīng)成為IT行業(yè)的新潮流。時(shí)下,安卓也以其創(chuàng)造力、前瞻性、延續(xù)性和實(shí)現(xiàn)能力成為行業(yè)首領(lǐng),可是怎么學(xué)好安卓呢?下面學(xué)習(xí)啦小編收集了一些關(guān)于android學(xué)習(xí)方法,希望對(duì)你有幫助
android學(xué)習(xí)方法
熟悉一門編程語(yǔ)言
現(xiàn)在大學(xué)里面和計(jì)算機(jī)相關(guān)的專業(yè)甚至理工類專業(yè)一般都會(huì)開(kāi)設(shè)C語(yǔ)言課程,只是很多同學(xué)在大學(xué)期間并沒(méi)有好好學(xué)習(xí),如果對(duì)它掌握的不太好或者很久沒(méi)用了,建議先從將其好好復(fù)習(xí)一下,將其基本的語(yǔ)法再好好回顧一下,最好能搭建一個(gè)環(huán)境來(lái)運(yùn)行、調(diào)試它。如果沒(méi)有學(xué)過(guò),不妨也提前學(xué)習(xí)一下。大部分的高校所開(kāi)設(shè)的C語(yǔ)言使用的教材都是用它作為教材,因此無(wú)論是購(gòu)買還是借閱,都容易找到。
熟悉數(shù)據(jù)結(jié)構(gòu)和算法基礎(chǔ)知識(shí)
如果后續(xù)有志于游戲方面的開(kāi)發(fā),最好具備一定的數(shù)據(jù)結(jié)構(gòu)和算法基礎(chǔ)知識(shí)。雖然現(xiàn)代的高級(jí)編程語(yǔ)言中,其類庫(kù)中已經(jīng)幫我們實(shí)現(xiàn)了大部分的數(shù)據(jù)結(jié)構(gòu),一般情況下,我們直接使用即可。但如果能對(duì)其原理有所了解,當(dāng)需要在這些數(shù)據(jù)結(jié)構(gòu)和算法中間的時(shí)候,可以更加的清楚到底應(yīng)該選擇哪個(gè)數(shù)據(jù)結(jié)構(gòu)或者算法。另外,在圖形圖像處理上面,線性代數(shù)的作用也非常重要,如果能掌握一點(diǎn)這方面的基礎(chǔ)知識(shí),無(wú)疑也會(huì)在后續(xù)的學(xué)習(xí)中如虎添翼;
熟悉Java基礎(chǔ)知識(shí)
Android應(yīng)用的開(kāi)發(fā)語(yǔ)言用的是Java語(yǔ)言,并且在Android中也用到了Java核心類庫(kù)的大量的類,因此,在學(xué)習(xí)Android開(kāi)發(fā)之前,可以先把Java基本語(yǔ)法和Java SE的基礎(chǔ)類庫(kù)好好學(xué)習(xí)一下。Android應(yīng)用程序開(kāi)發(fā)是以Java語(yǔ)言為基礎(chǔ)的,所以沒(méi)有扎實(shí)的Java基礎(chǔ)知識(shí),只是機(jī)械的照抄別人的代碼,是沒(méi)有任何意義的。 建議在安卓課程前期的java學(xué)習(xí)階段中,需要用心的學(xué)好。
Android開(kāi)發(fā)者應(yīng)該深入學(xué)習(xí)的10個(gè)開(kāi)源應(yīng)用項(xiàng)目
1.Android團(tuán)隊(duì)提供的示例項(xiàng)目
如果不是從學(xué)習(xí)Android SDK中提供的那些樣例代碼開(kāi)始,可能沒(méi)有更好的方法來(lái)掌握在Android這個(gè)框架上開(kāi)發(fā)。由Android的核心開(kāi)發(fā)團(tuán)隊(duì)提供了15個(gè)優(yōu)秀的示例項(xiàng)目,包含了游戲、圖像處理、時(shí)間顯示、開(kāi)始菜單快捷方式等。
2.Remote Droid
RemoteDroid是一個(gè)Android應(yīng)用,能夠讓用戶使用自己的無(wú)線網(wǎng)絡(luò)使用無(wú)線鍵盤、觸摸屏操作手機(jī)。這個(gè)項(xiàng)目為開(kāi)發(fā)者提供了如網(wǎng)絡(luò)連接、觸摸屏手指運(yùn)動(dòng)等很好的樣例。
3.TorProxy和Shadow
TorProxy應(yīng)用實(shí)現(xiàn)了Android手機(jī)無(wú)線電電傳通訊(TOR),和Shadow應(yīng)用一起使用,可以使用手機(jī)匿名上網(wǎng)。從該項(xiàng)目源代碼中,可以掌握socket連接、管理cookie等方法。
4、 Android SMSPopup
SMSPopup可以截獲短信內(nèi)容顯示在一個(gè)泡泡形狀的窗口中。從這個(gè)項(xiàng)目中可以掌握到如何使用內(nèi)置的短信SMS接口。
5、 Standup Timer
Standup Timer應(yīng)用用于控制站立會(huì)議時(shí)間,類似秒表倒計(jì)時(shí),可以提醒每個(gè)人的講話時(shí)間已到,從而保證每個(gè)與會(huì)者使用時(shí)間一樣。從該項(xiàng)目的代碼中,可以學(xué)會(huì)如何使用時(shí)間函數(shù)。另外,這個(gè)項(xiàng)目的代碼是采用視圖view、模型model嚴(yán)格分離的設(shè)計(jì)思路。
6、 Foursquare
是Foursquare.com的一個(gè)客戶端應(yīng)用,該應(yīng)用主要分為兩個(gè)模塊:API(com.joelapenna.foursquare)和界面前端(com.joelapenna.foursquared)兩部分。從該項(xiàng)目代碼中,可以學(xué)會(huì)如何同步、多線程、HTTP連接等技術(shù)。
7、 Pedometer
Pedometer應(yīng)用用于記錄你每天走路步數(shù)的。盡管記錄不一定精準(zhǔn),但是從這個(gè)項(xiàng)目中,可以學(xué)習(xí)幾個(gè)不同的技術(shù):加速器交互、語(yǔ)音更新、后臺(tái)運(yùn)行服務(wù)等。
8、 OpenSudoku-android
OpenSudoku是一個(gè)簡(jiǎn)單的九宮格數(shù)獨(dú)游戲。從代碼中可以學(xué)習(xí)到如何在視圖中顯示表格數(shù)據(jù),以及如何和一個(gè)網(wǎng)站交互等技術(shù)。
9、 ConnectBot
ConnectBot是Android平臺(tái)的一個(gè)客戶端安全殼應(yīng)用。從該項(xiàng)目代碼中,可以學(xué)習(xí)到很多Android安全方面的內(nèi)容,這些是你在開(kāi)發(fā)應(yīng)用時(shí)經(jīng)常需要考慮的安全問(wèn)題。
10、 WordPress的Android應(yīng)用
當(dāng)然在最后不能不提Wordpress的Android應(yīng)用了,這是Wordpress官方開(kāi)發(fā)團(tuán)隊(duì)提供的一個(gè)項(xiàng)目。從代碼中可以學(xué)習(xí)到XMLRPC調(diào)用(當(dāng)然還有更多的優(yōu)秀內(nèi)容)。
Android應(yīng)該向iOS學(xué)習(xí)的10個(gè)特點(diǎn)
1、設(shè)計(jì)不一致
讓我們面對(duì)現(xiàn)實(shí),即使谷歌公布了 Material Design(材料設(shè)計(jì))作為設(shè)計(jì)語(yǔ)言,并希望開(kāi)發(fā)者能夠遵循,但是目前真正采用Material Design 風(fēng)格界面的應(yīng)用程序非常少,而大多數(shù)仍然使用老舊的Holo Design設(shè)計(jì)語(yǔ)言。
不清楚是否是因?yàn)镸aterial Design不佳還是開(kāi)發(fā)者認(rèn)為沒(méi)必要,Google Play上還是有很多不同風(fēng)格應(yīng)用程序,而且看起來(lái)統(tǒng)一設(shè)計(jì)的道路還非常長(zhǎng)。就設(shè)計(jì)語(yǔ)言凝聚力和統(tǒng)一性而言,蘋果的應(yīng)用程序做得好很多,大多數(shù)應(yīng)用程序都已經(jīng)專門針對(duì)新的系統(tǒng)風(fēng)格調(diào)整用戶界面設(shè)計(jì)。
2、本身就不像精簡(jiǎn)的iOS
Android操作系統(tǒng)遠(yuǎn)不及iOS直觀,隨便一臺(tái)Android設(shè)備總能找到不同的選項(xiàng)或功能,而蘋果的iOS系統(tǒng)上做每一件事情都使用了同樣的方式。當(dāng)然,原生的Android操作系統(tǒng)可能最為直觀,但設(shè)備制造商就是不喜歡原生Android,幾乎每一個(gè)品牌的智能手機(jī)都有自家定制的用戶界面。
這意味著,一個(gè)用戶如果要換不同品牌的手機(jī),必須要通過(guò)一定的學(xué)習(xí)才能適應(yīng),這個(gè)學(xué)習(xí)過(guò)程有可能是輕量級(jí),也可能難以使用。更重要的是,同一品牌的智能手機(jī),每一款的界面還不一樣,這一點(diǎn)與iOS用戶更換新 iPhone 直接上手相比體驗(yàn)大為不同。
3、系統(tǒng)更新升級(jí)
這一點(diǎn)也是事實(shí)。每當(dāng)Android的新版本出來(lái)時(shí),大多數(shù) Android 用戶必須等待很長(zhǎng)一段時(shí)間,才能夠獲得來(lái)自官方的正式版系統(tǒng)升級(jí),而這已經(jīng)是幸運(yùn)兒了,如不幸可能永久等待也無(wú)任何升級(jí)希望。
反觀iOS設(shè)備,在規(guī)定新系統(tǒng)版本發(fā)布之日,總是會(huì)有大量用戶直接升級(jí),隨后新系統(tǒng)的人數(shù)占據(jù)絕大多數(shù)。當(dāng)然,如果用戶手持Nexus設(shè)備的話,將最快獲得升級(jí),不過(guò)Nexus在全球Android手機(jī)之中市場(chǎng)份額相當(dāng)之低。
4、內(nèi)置大量臃腫的應(yīng)用程序
內(nèi)置應(yīng)用程序的數(shù)量和臃腫程度,完全取決于用戶購(gòu)買的是哪一款A(yù)ndroid智能手機(jī)。品牌制造商和運(yùn)營(yíng)商,兩者都非常喜歡在智能手機(jī)里預(yù)裝各種應(yīng)用程序,而且大部分沒(méi)辦法直接禁用或者完全手動(dòng)刪除,不過(guò)其中也有一些設(shè)備不會(huì)太過(guò)于臃腫。
反觀iOS設(shè)備,雖然也有不少預(yù)裝應(yīng)用程序,一些對(duì)個(gè)人可能沒(méi)有多大用處,比如Apple Watch,但所預(yù)裝的應(yīng)用程序并沒(méi)有讓用戶感受到十分臃腫??傊?,雖然iOS系統(tǒng)正在變大,但不可否認(rèn)很多Android設(shè)備的體驗(yàn)的確毀在大量預(yù)裝應(yīng)用上。
5、控制中心更直觀易用
這一點(diǎn)不同的用戶感受不同,反應(yīng)有好有壞。iOS設(shè)備支持直接從任何界面向上滑動(dòng)訪問(wèn)控制中心,并提供一些重要的開(kāi)關(guān),包括音樂(lè)控制和音量調(diào)節(jié)。
Android是最早提供快捷設(shè)置和通知欄智能手機(jī),但是一些用戶認(rèn)為其排列混亂不夠直觀,比如Android Lollipop系統(tǒng)里,用戶必須滑動(dòng)那個(gè)兩次頂部或者使用雙指手勢(shì),才能找到需要的快捷開(kāi)關(guān),而iOS只要簡(jiǎn)單的從底部滑動(dòng),顯得更簡(jiǎn)單也更人性化,只是缺陷在于快捷開(kāi)關(guān)無(wú)法自定義。
6、內(nèi)置的相機(jī)應(yīng)用功能有限
就默認(rèn)相機(jī)功能而言,iOS相比Android看起來(lái)更直觀功能也更多,比如手動(dòng)控制曝光,自動(dòng)曝光/自動(dòng)對(duì)焦等,很多功能在Android設(shè)備上的默認(rèn)相機(jī)里缺失。不過(guò),新版Android以及大多數(shù)設(shè)備制造商提供的相機(jī)應(yīng)用,可以作為彌補(bǔ)。
7、無(wú)iCloud備份功能
iOS自帶的強(qiáng)大的數(shù)據(jù)備份功能莫過(guò)于iCloud,而且直觀性和易用性良好,用戶只要打開(kāi)開(kāi)關(guān),選擇需要備份的應(yīng)用和數(shù)據(jù)即可,在Wi-Fi環(huán)境下還能自動(dòng)備份,隨時(shí)還原。
Android上也有相類似的解決方案,只是大多數(shù)難以完整的備份,真要完美則需要Root獲取權(quán)限,然后再通過(guò)第三方Recovery備份和恢復(fù),比如Nandroid和鈦備份的方案。
8、應(yīng)用程序更新
這一點(diǎn)也是事實(shí),Google Play現(xiàn)在的確比蘋果App Store擁有更多的游戲和應(yīng)用,但后者總是更討開(kāi)發(fā)者歡迎,尤其當(dāng)涉及到發(fā)布新款或新版應(yīng)用程序,iOS總是開(kāi)發(fā)者優(yōu)先首選,Android才緊隨其后,很多用戶對(duì)開(kāi)發(fā)者或開(kāi)發(fā)商的“應(yīng)用無(wú)更新”不滿也源于此,不過(guò)蘋果的確為開(kāi)發(fā)者帶來(lái)了更多的收入。
9、缺乏連續(xù)互通功能
如果家里有蘋果家族全套產(chǎn)品,比如Mac、iPad和iPhone,只要移動(dòng)設(shè)備升級(jí)到了新版iOS 8,很多工作和生活上的任務(wù)處理將變得更方便一些,比如Mac未完成的工作可以在iPad上繼續(xù),iPhone來(lái)電時(shí)Mac可以代替接電話,就算沒(méi)有Wi-Fi也能共享熱點(diǎn)等等,很多功能在蘋果設(shè)備之間都能實(shí)現(xiàn)無(wú)縫銜接。
而這一點(diǎn)在Android上還無(wú)法真正實(shí)現(xiàn),谷歌也正在完善Chrome OS,讓其代替接受通知,甚至就直接運(yùn)行Android應(yīng)用。
10、蘋果的健康應(yīng)用目前比Google Fit完善
提到蘋果的健康應(yīng)用就難免不讓人想起Google Fit。相比蘋果而言,谷歌的方案目前在功能上還是令很多很多用戶失望,尤其是生態(tài)系統(tǒng)不夠完善。蘋果的健康功能更為豐富一些,同時(shí)還擁有很多配套的第三方應(yīng)用程序和配件產(chǎn)品,得益于完善的 HealthKit 和 ResearchKit,iOS設(shè)備就像是一個(gè)強(qiáng)大的醫(yī)學(xué)平臺(tái)。
1.初學(xué)者如何學(xué)習(xí)android