安卓手機如何學習編程
A. 手機如何編程
既然是簡單編程,那麼肯定就不是用Android Studio大動干戈寫工程文件做APP了,所以我們這里涉及到的是腳本語言python。簡單編程也只是用腳本語言在解釋器里運行而已。而這,已經實現了程序正確運行的目的。
話說有一段時間,想買個表,這樣可以看時間,但又一想,何不弄個自動整點報時的軟體,於是在安卓手機上打開應用市場,找整點報時的APP,順利下載了一個安裝包小的APP,簡單設置好時間後,默認後台運行,就可以了。
不過往往一段時間後,它會自動啞火。開啟前一段時間好用,很准時很正常,但後來就沒聲響了。於是覺得不合適,又想別的辦法,突然想到,何不編程寫個整點報時的軟體呢?於是想到腳本語言,為什麼想到Python,因為它簡單啊。但Python並不直接支持安卓手機,所以我們需要下載安裝一個APP解釋器。這個就是一人客在很早以前就介紹過的安卓的Python解釋器QPython了。這里是3版本的。
這個解釋器,也集成了大多數的安卓手機應用開發的介面。我們要實現的也很簡單,就是通過不斷的時間檢測來決定是否用語音報時。當然核心是這個意思,但具體的代碼就有一點點繁瑣了。Python要用安卓手機的應用開發介面,就要用到androidhelper模塊。而要用語音播報,那就要用droid.ttsSpeak(「這里就是你想要播報的字元串」)。而我們要正確地檢測時間和播報時間,那不可避免要用time模塊。而time模塊出來的時間,不適合我們口語使用習慣,是需要根據年月日時等參數來用time.strftime轉換的。
這里還有一個問題,就是語音播報的方式,比如23點11分鍾,我們往往是這樣表達:二十三點十一分鍾。而用手機系統的語音播報則是這樣:二三點一一分鍾,所以這個也要注意,這里就要寫一個轉換函數了,也就是把數字正確地轉變成漢字表達。
這個把數字轉變成漢字的轉換函數,大家可以自己寫,也可以從網上找。而具體的實現代碼,則很簡單,這里是個人用的,每一分鍾播報一次,每到半點或整點,繼續播報,同時省略了轉換函數_to_chinese4而直接寫了實現代碼,所以這里的代碼僅供大家參考:
droid = androidhelper.Android()
xh=1 '''循環判斷'''
while xh:
droid.ttsSpeak("現在是:"+"")
if (int(time.strftime("%M"))==30) or (int(time.strftime("%M"))==31):
droid.ttsSpeak("一人客,現在時間是:"+_to_chinese4(int(time.strftime("%H")))+"點半")
droid.ttsSpeak("一人客,現在時間是:"+_to_chinese4(int(time.strftime("%H")))+"點半")
else if (int(time.strftime("%M"))==00) or (int(time.strftime("%M"))==01):
droid.ttsSpeak("一人客,一人客,現在時間是:"+_to_chinese4(int(time.strftime("%H")))+"點鍾啦")
droid.ttsSpeak("一人客,一人客,現在時間是:"+_to_chinese4(int(time.strftime("%H")))+"點鍾啦")
time.sleep(59)
B. 用安卓手機怎麼練習c語言編程
我想我是有資格來回答你的問題的,我算是徹底的從編程白痴一步步學習過來的。 之前寫了一篇博客 Android學習之路 被瘋狂轉發,帶起了一陣學習Android的大風,我不曉得具體影響了多少人,但是這篇博客已經成為Android新手學習必備的資料。很多人問我是怎麼一路過來的,姑且借這個機會說說我的故事吧。 =============================== 內容有點長,大家姑且當做勵志小說來看吧,對這些經歷不感興趣的可以直接看最後「如何自學Android」部分 =============================== 大學 大學上的是全國二流本科,專業主要就是數學專業。大學的總結就是:逃課、掛科、籃球、泡妞、Dota。 目前為止可以說我的大學是我這輩子過的最爽的時期,大一開始就逃課,好點的理由是我對大學那些課程完全沒興趣,其實本質上是因為高考太壓抑了,大學之後沒人管了,開始無止境的放縱自己。毫不誇張的說大學四年上的課應該沒有逃的課多。逃課最直接的影響就是掛科,從大一掛到大三,專業課數學分析特么每年都掛,後來聽說補考考不過要重修,還得交錢,這特么讓家裡人知道還了得,於是發憤圖強,最終補考每門都以優秀的成績過了。 相信英語四級應該是大學必考吧,英語四級這輩子我都忘不了,我考了三次才過,每次考試說是裸考都褒獎了,大學英語全是吃高中的底子,第一次沒過,少了十幾分,第二次他媽睡覺睡過了,就沒有去考,現在想想當時的自己真是腦殘,終於在第三次勉強過了。現在想想幸虧當時過了,之後畢業找工作時英語四級是最低要求。做編程這行,英語真的挺重要的,大學的時候一定得想辦法把四級給過了。 現在想想大學和編程唯一相關的課程就是C語言了,但是對於我們專業是屬於全校公開課,最終這門課雖然考過了,但是連i++ 和++i我都弄不明白,可想而知你們應該能猜到我是怎麼過的。 由於高中就開始打籃球,大學時毫無疑問就入了學院籃球隊,而且擔任隊長,所以大一、大二過來基本就是一大半是在籃球場度過的,也是因為籃球征服了我現在的老婆。大二下學期周圍的人都在玩Dota,於是也開始了游戲之路,籃球也基本放棄了,那時候玩的瘋狂,記得最長的一次和同學在網吧連續包夜兩星期,不過白天是回來睡覺的,不然估計早猝死在網吧了。 轉眼間大四了,這一年終於在我老婆的監督下不再掛科了,而且在畢業前的最後一次評比竟然拿到了三等獎學金,真是受寵若驚啊,後來錢也被狐朋狗友們拿去腐敗了。周圍的同學都在准備考研,我卻唯獨對考研沒興趣,自始至終都沒有為考研花過一分錢,買過一本書。後來證明我的決定是正確的,周圍的小夥伴放棄的放棄,考不上的考不上,考上的後面也沒見混的有多好,當然如果能考上好的學校還是很有幫助的。 畢業 又一轉眼畢業了,去參加了學校幾個招聘會也是醉了,全是沒聽過的小企業,一去參觀都是各種廠房,根本不需要任何學歷,是個人出點力都可以乾的那種,要麼就是各種電話銷售。。。那時候真的有點急了,大學四年,畢業一份像樣的工作都找不到,回去怎麼面對鄉親父老。 三月份的時候一家IT測試培訓機構來做宣講會(具體什麼名字我就不說了,免得認為是廣告),聽完之後就說培訓之後包就業,培訓地點在大上海的最中心,當然是自費,但是可以工作之後分期付款。那時候哪知道測試是幹嘛的,更不懂IT是幹嘛的,回來就查了下這個機構確實存在,網站也有的,知道不是騙子遍決定來上海試一試。當時下定決定要來上海培訓之後,幾個狐朋狗友毫不猶豫的跟著我一起來了,總共應該是7個人,決定之後沒幾天便毅然而然的背著大包小包來到上海,我們之中一部分是一次性付費,另一部分是分期。後來證明我們當時來上海的決定是正確的。 培訓之路 這里並不是宣傳大家去培訓,只不過被工作所逼,學校不好,大學也沒學啥真本事,稍微有點出路都不會去培訓! 培訓的日子還是蠻輕松的,一周就上四天課,朝九晚五,畢竟大家家庭都不富裕,家裡辛苦攻讀了四年大學,畢業還要再交錢去培訓,打心裡大家都很愧疚。一開始卯足了勁要好好學習,但是堅持了沒多久就有點放鬆了,但是好歹也是都有學習的。 培訓的時候算是接觸了點編程吧,課程有C語言、Oracle、Linux,然後其他都是軟體測試的理論,其實都是非常基礎的東西,算是帶你入行吧,Orace就學習一些基本SQL語句,Linux就學了幾個命令,但是起碼知道原來電腦可以干這么多事,之前還一直以為電腦就是用來看電影、聊天、打游戲的呢。現在回頭看給我一周的時間我可以看完整個培訓課程,但是當時的培訓周期要四個月。 第一份工作--SunNet 7月份拿到畢業證書就直接來了上海,四個月的時間對於我來說實在太漫長了,我等不及了,於是在課程還有最後一個月的時候我提前出來單獨找工作,當時培訓老師說工作後的工資大多是3500左右,我覺得我學的比別人好,所以必須要比別人高,做好了長期准備面試的過程。沒想到面試第一家就直接錄取了(後來才知道原來是公司的測試懷孕在家,急需測試),公司名叫SunNet,中文名山諾,工資4000。收到offer的時候欣喜若狂! 真正接觸編程 之後便在SunNet正式入職,工作就是測試,但是就在SunNet我才真正的接觸了什麼是編程。SunNet是一家小型外企,總部在休斯頓,上海這邊主要是研發部。研發人員總共不到10人,主要業務是以web為主,使用語言是.NET。當然我的職責就是web測試了,工作倒是沒什麼難點,主要測試就我一個,一進來就有好幾個項目等著我測試,還好自己是數學專業,邏輯思維能力還不錯,加加班總算能按時完成任務。 三個月的時間順利轉正,之後的某一天偶然得知公司一開發人員工資比我高2000,其實也就比我早畢業一年而已,才知道原來開發和測試工資差距這么大,於是當時就下定決心要轉行做開發,所以說起我從測試轉行開發的原因是因為錢,一開始說因為興趣堅持下來的都是扯淡。。。 編程之路 由於在公司我的主要任務仍然是測試,任務也挺多,基本每天要9點能到家。下定決心之後只能利用業余時間來學習,由於公司主要業務是.NET,很自然我一開始學習的方向便是.NET,後來才了解到.NET是基於C#的,學習.NET之前必須要先學習C#,於是像公司借了一本C#學習資料,就這樣學習了大概兩周吧,還仔仔細細做了一大堆筆記。之後覺得語法學的差不多了,便又借了本.NET的書開始學習web開發。 但是web開發遠沒有學習一門語言這么簡單,後來才知道web開發涉及到html, css, javascript, ajax, database等,范圍太廣了,於是為了效率,我只能每一項掌握住基礎,於是網上搜索找到 w3school 在線教程 這個好東西,裡面的東西都是基礎的,我把教程整理到手機里,每天上下班的地鐵上,吃飯的時候,回家的時候等等利用一切時間來學習,也是差不多大概2周的時間掌握了html, css, js的一點基礎,接下來准備正式學習.NET的時候,被我們老大知道我正在學習開發,我們老大叫Aaron,是一位典型的程序員,比較胖,人品超好,知道後不建議我學習.NET,說.NET出來都十來年了,已經很成熟了,很多人在學校都有.NET教程,現在學習已經比別人晚了。現在移動開發剛嶄露頭角,也沒多少人會,建議我直接學習移動開發。真是一句點醒了我啊!! 移動開發 聽了老大的建議,於是放棄了.NET,開始准備學習移動開發。那時候是12年初,整個移動互聯網也是剛起步階段,iPhone4還是非常火的時候,毫無疑問我把目標鎖定在了iPhone開發上。 這次有經驗了,知道了iPhone開發首先肯定得有一門編程語言的,了解到是Objective-C,於是又從公司借了一本OC的書(公司書很多,老大每月都會買來好多書,雖然看的人很少),又花了將近一周的時間來了解了基本語法,因為之前學了C#,這次沒完全看完的情況下想直接上手實踐。正打算學習的時候,才知道iOS開發必須得在mac上才可以,也就是說我得自己有台mac電腦,雖然當時公司是有的,但是回家的時候不能繼續學習練習,肯定影響效率的,一台mac對於當時的我簡直是奢侈品,雖然現在也依然是奢侈品,但當時根本不可能買得起。於是只有放棄iPhone開發轉向Android(後來才知道有虛擬機這東西。。。) Android學習之路 幾經波折,終於才確定自己的方向,這期間已經耽誤了不少時間,走了不少彎路了,但是仍然阻擋不住我轉行開發的腳步。公司關於Android的書竟然沒有,於是我自己親自買了一本Android書籍,叫《瘋狂Android講義》,作者是李剛!!不說這本書有多好吧,這本書比較厚,非常厚,所以講的一些基礎比較細,新手按照上面的完全可以看懂,現在不知道這本書內容更新了沒,之前內容對於現在來說有點老。這個時候應該是12年的3月份,說起來也巧,這個月公司剛好接了個移動端項目,iOS有人來做,但是公司上下沒有會Android開發的,其他人都有自己的項目在忙,老大看出我的興趣,就問我想不想試一下,我當然欣然同意了,只此就開始正式的邊做邊學習Android。 那個時候的測試任務仍然很重,於是我只能擠出時間來做這個項目,基本是每晚以及周末都會自動加班來完成這個項目,現在看來那個項目真是太簡單不過了,快的話一周都不要就可以搞定了,但在當時我摸爬滾打了一個多月總算搞定了。 做完這個項目自己有了點信心,但當時自己的主要任務還是測試,自己開發的時間是少之又少,於是下定決心離職找一個專門做Android的工作。說明原因之後老大很理解,也是建議我想做開發的話就放手去找一個專門做開發的職位,這樣進步會比較快。 第一份工作能遇到我的老大Aaron,真是我的福分!
C. 手機上怎麼編程
這里介紹幾個可以在手機上編程的軟體,感興趣的可以下載一下,試著操作一下:
1.Python:這里推薦一個軟體—QPython3,集成了Python3解釋器、Console控制台和QEdit編輯器,可以直接編輯運行python代碼,也可以進行簡單的安卓開發,下面我簡單介紹一下這個軟體的安裝和使用:
安裝的話,直接在手機應用中搜索就行,如下:
打開軟體,終端測試效果如下,就行電腦版的python shell:
QEdit編輯器,編輯完python代碼後,可以直接運行:
效果如下:
2.Java:這里推薦一個軟體—AIDE,一個Java集成環境,可以直接新建Java項目,進行Java代碼的編輯和運行,還可以進行游戲開發,功能強大,內置學習教程,很適合初學者學習掌握,下面我簡單介紹一下這個軟體的安裝和使用:
安裝的話,與上面一樣,直接在手機應用中搜索就行:
打開軟體如下,可以直接新建Java文件,編寫Java代碼並運行:
當然,也可以直接開發簡單的安卓游戲,並直接在手機上安裝運行:
游戲效果如下:
3.HTML:這里推薦一個軟體—w3cschool編程學院,可以在線瀏覽查看前端開發的資料,包括html,css,javascript等,同時可以在線編輯代碼並運行,是一個很不錯的學習前端開發的軟體,下面我簡單介紹一下這個軟體的安裝和使用:
安裝的話,直接在應用商店中搜索就行:
打開軟體,就可以搜索前端編程的資料,如下:
在線編輯運行代碼的效果如下:
4.C/C++:這里推薦一個軟體—C++編譯器(C4droid),一款很不錯的C/C++編譯器,安裝完GCC插件後,可以直接編輯運行C/C++代碼,是一款很不錯的手機編程軟體(這里也可以使用「C語言編譯器」這個軟體,效果也不錯),下面我簡單介紹一下這個軟體的安裝和使用:
安裝的話,與上面類似,直接搜就行:
安裝完成後,這里需要下載一個GCC插件(編譯器),之後才能正常編譯運行代碼:
5.Termux:這是一個高級終端,類似手機版的XShell,可以直接在手機上登錄Linux伺服器,支持bash,zsh命令,可以編輯和運行C/C++,Python,Ruby等代碼,只需要安裝對應的插件就行,就像在Linux系統上使用一樣,下面我簡單介紹一下這個軟體的安裝和使用:
安裝的話,直接在手機應用商店中搜索就行,首次安裝,需要耐心等待一會兒:
打開這個軟體,界面效果如下,類似xshell一樣,可以運行shell命令:
安裝完python後,就可以直接運行python代碼,當然,其他語言也可以:
就介紹這5個在手機上編程的軟體,使用起來都還不錯,感興趣的話,可以在手機上下載一下,嘗試一下,當然,如果真想練習編程,建議還是在電腦上進行,調試起來更方便,希望以上分享的內容能對你有所幫助吧,也歡迎大家留言、評論。
D. 新手如何學習編程
熟悉以下關鍵東西,可以邊學邊做,定期訓練,經常思考,長期積累:
1、語法。
2、基礎理論(數學、數據結構、演算法等)。
3、設計方法(編程原則、設計模式、框架設計等)。
4、庫(核心、基礎、UI、擴展、游戲引擎等)。
5、計算機相關(操作系統、網路、圖形學等)。
6、領域知識(游戲設計、網站設計等)。
7、開發工具(編輯器、IDE、自動部署等)。
8、項目管理(進度管理、分工協作、Bug管理、版本控制等)。
最普遍也是最重要的能力:創造力。努力分析並理解好做什麼以及怎麼做。要知道上面那些東西一開始都是不存在的。
具體方法包括:
1、快速閱讀入門教程和書籍,適合學習語言和基礎庫。比如我學Java讀的《Java編程思想》,練習題做過一點,然後學ActionScript就沒讀過書,只讀過Adobe官方文檔《ActionScript 3.0編程》。
2、閱讀庫的文檔、實例、源碼。比如Flash、Flex開發,熟悉官方API很重要,很多細節要具體使用時才注意到,這時候最好做個筆記,雖然我從沒看過我的筆記。
3、做一個自己感興趣或熟悉的小項目,比如我就以黑白棋游戲作為多個語言的試水項目,一樣的邏輯,便於把關注點放在語言特點上。
4、自己動手豐衣足食。廚師有菜譜,程序員可沒菜譜。比如我做游戲,最關鍵的游戲編程知識全部是動手學出來的,很少有專門針對某個業務領域(如游戲)的編程書籍,要麼是入門書,要麼是模式書(如演算法)、理論書(圖形學),很少有書籍教你如何開發一個45度角地圖系統加編輯器的,全靠自己思考,以及看前人的代碼,需要時找些網路資料。關鍵是,可以培養最重要的創造力。
對於演算法和設計模式,可以研讀下,但是關鍵還是靠平時如何使用了。新手勉強不來的。
項目管理方面的,就得靠工作經驗了,多思考多提意見不要只走流程。
E. 新手一名!怎麼用手機學習編程
如果你是安卓系統的手機,就安裝【c4droid】編程軟體,它支持c\c++編程,不過建議學編程還是用電腦好一點。
F. 如何自學 Android 編程
自學Android開發可以分階段學習安排,由基礎學起,在學習中可以能會遇到很多問題,這就需要多向別人請教解決了,自學會稍微吃力些,有人帶學是最好不過的。學Android編程可以參照以下階段來學習安排:
第一階段:Java面向對象編程
1.Java基本數據類型與表達式,分支循環。
2.String和StringBuffer的使用、正則表達式。
3.面向對象的抽象,封裝,繼承,多態,類與對象,對象初始化和回收;構造函數、this關鍵字、方法和方法的參數傳遞過程、static關鍵字、內部類,Java的垃極回收機制,Javadoc介紹。
4.對象實例化過程、方法的覆蓋、final關鍵字、抽象類、介面、繼承的優點和缺點剖析;對象的多態性:子類和父類之間的轉換、抽象類和介面在多態中的應用、多態帶來的好處。
5.Java異常處理,異常的機制原理。
6.常用的設計模式:Singleton、Template、Strategy模式。
7.JavaAPI介紹:種基本數據類型包裝類,System和Runtime類,Date和DateFomat類等。
8.Java集合介紹:Collection、Set、List、ArrayList、Vector、LinkedList、Hashset、TreeSet、Map、HashMap、TreeMap、Iterator、Enumeration等常用集合類API。 9.Java I/O輸入輸出流:File和FileRandomAccess類,位元組流InputStream和OutputStream,字元流Reader和Writer,以及相應實現類,IO性能分析,位元組和字元的轉化流,包裝流的概念,以及常用包裝類,計算機編碼。
10.Java高級特性:反射、代理和泛型。
11.多線程原理:如何在程序中創建多線程(Thread、Runnable),線程安全問題,線程的同步,線程之間的通訊、死鎖。 12.Socket網路編程。
第二階段:Java Web開發
1.Java解析XML文件DOM4J。
2.MySql資料庫的應用、多表連接查詢的應用。
3.Jsp和Servlet應用。
4.Http協議解析。
5.Tomcat伺服器的應用配置。
6.WebService服務配置應用。
第三階段:android UI編程
1、Android開發環境搭建:Android介紹,Android開發環境搭建,第一個Android應用程序,Android應用程序目錄結構。
2、Android初級控制項的使用:
TextView控制項的使用Button控制項的使用方法EditText控制項的使用方法ImageView的使用方法RadioButton的使用方法Checkbox的使用方法Menu的使用方法
3、Android高級控制項的使用:
Autocompletion的使用方法ListView的使用方法GridView的使用方法Adapter的使用方法Spinner的使用方法Gallary的使用方法ScrollView的使用方法
4、對話框與菜單的使用:
Dialog的基本概念AlertDialog的使用方法DatePickerDialog的使用方法Menu的使用方法自定義Menu的實現方法
5、控制項的布局方法:
線性布局的使用方法相對布局的使用方法表格布局的使用方法
6、多Acitivity管理:
AndroidManifest.xml文件的作用 Intent的使用方法使用Intent傳遞數據的方法啟動Activity的方法IntentFilter的使用方法Activity Group的使用方法
7、自定義控制項實現方法:
自定義ListView的實現方法可折疊ListView的使用方法自定義Adapter的實現方法自定義View的實現方法動態控制項布局的上實現方法
第四階段:android網路編程與數據存儲
1、基於Android平台的HTTP通訊:
Http協議回顧Apache Commons 工具包介紹使用Get方法向伺服器提交數據的方法解析伺服器響應數據的方法使用POST方法向伺服器提交數據的實現方法向伺服器提交非文本數據的實現方法使用Http協議實現多線程下載使用Http協議實現斷點續傳
2、Android數據存儲技術:
SQLite3資料庫簡介SQL語句回顧SQLite3編程介面介紹SQLite3事務管理SQLite3游標使用方法SQLite3性能分析訪問SDCard的方法訪問SharedPreferences的方法
3、ContentProvider使用方法:
ContentProvider實現共享數據、URI的解析與UriMatcher、ContentUris的使用、使用ContentResolver操作ContentProvider、ContentProvider的監聽Android當中的非同步操作:Handler的使用方法;非同步任務的基本概念;AsyncTask的使用方法。
第五階段:android手機硬體管理
1、地圖及定位技術:GPS簡介;LocationManager的使用方法;在Google Map上添加標記的方法;查詢某地附近建築的方法;使用Google Map實現點對點導航。
2、感測器使用方法:方向、加速度(重力)、光線、磁場、距離、溫度等感測器的使用。
3、近場通信技術:NFC技術簡介;NFC技術是用場景介紹;NFC技術實現方法。
4、媒體管理技術:MediaPlayer的使用方法。
5、觸摸屏技術:手勢識別;多點觸摸技術。
第六階段:Android圖形編程技術
1、圖形處理基礎:2D圖形編程基礎;
2、點、線、面等基本圖形元素繪制方法;
3、Android動畫框架簡介;
4、位移動畫的實現方法;
5、淡入淡出動畫的實現方法;
6、旋轉動畫的實現方法;
7、Matrix的使用方法。
第七階段:Android游戲開發
1、Android游戲開發:Android游戲開發概述;
2、SurfaceView的使用方法;
3、物理小球技術;
4、碰撞檢測技術;
5、圖片、文字和背景音樂等資源的使用方法;
6、游戲引擎基礎概念;
7、Cocoa2d-Android引擎使用方法;
8、OpenGL ES使用方法。
自學一般人會很難堅持下去,學習中遇到的問題解決效率不是很高,可以參加明確講師授課的Android開發培訓班,由資深高級講師帶領學習,和同學們共同學習,遇到問題互相解決,學習效率還是非常高的。
G. 想自學安卓手機系統編程,可以先看哪些書啊,具體一點可以嗎
首先,自學的話,書是必不可少的,我推薦幾本學習編程的書,作為過來人,這些書非常適合初學者。
關於java的學習,個人非常推薦《java編程藝術》和《thinking in java》。《java編程藝術》這本書好像有七百多頁,我也不是很記得,這本書對很多細節都有詳細的敘述,thinking in java就不多說了,必讀之書。
關於android編程學習,個人推薦《深入淺出google android》和《android核心技術與實例詳解》,這兩本書真的很適合初學android的人。
想學好編程,除了練習代碼之外,看多一些書也是非常重要,我的學校圖書館有很多編程書,我都看了不知多少本,每看一本書都有很大收獲,多看書真的很重要。
第二,善於上網找資料也是很重要的,網上有各種原代碼,各種視頻,各種心得體會。還有很多實際運用,這是書沒的。
第三,編程需要耐心,忌浮誇,正所謂堅持就是勝利。尤其是編程,不要遇到難題就放棄,當你的水平到了一定水平之後就會發現以前的難題都不算什麼。
第四,拿來主義,我覺得在編程的學習上是比較重要。不是說抄別人的源碼,而是先理解後模仿,在理解的同時想下有沒有可以改進的地方。
第五,學android之前,必須有扎實的java基礎,這是必須的,不要只是半桶水就學習android,否則越學android會越困難。
第六,要是對編程不是有很大興趣,單純覺得會編程很牛,可以在小白面前說幾個專業術語裝大神,我建議不要浪費時間。正所謂言者不智,智者不言,低調,再低調,真正的高手很多都是比較低調(我言了,所以我不是高手。偶爾我虛榮心暴增,會裝一下B,大家多見諒),多去一下編程論壇學習。
H. 如何學習安卓開發
目前國內的Android開發還是主要以應用開發為主,主要分成3類:為企業開發應用、開發通用應用(放到Android Market或者其他App Market銷售)以及游戲開發(放到Android Market或者其他App Market銷售)。第一類開發者一般身處規模較大的公司,這些公司主要為自有品牌或者其他品牌設計手機或者平板電腦的總體方案。除了根據需求對系統進行定製外,更多的工作在於為這些系統編寫定製的應用。第二類開發者,一般處於創業型公司或者是獨立開發者,他們的盈利方式主要是2種:為國外公司進行外包開發,或者通過Google的移動廣告(AdMob)通過廣告點擊分成。而理論上的通過付費下載的形式來盈利的,現在國內鮮見成功者。第三類開發者,目前和第二類開發者類似。下圖是開發者提交的應用和游戲的數目所佔的比例圖,從中也可以看出應用開發數目遠超游戲開發。
上面是Android的體系架構圖,自上而下分別為應用層、應用框架、類庫和Alvik運行時環境以及Linux內核。一般來說,我們想從事Android開發,可以從應用開發作為切入點,逐漸熟悉其整個體系,並慢慢往其底層滲透,從而能做到軟硬兼備,既涉及到應用開發的透徹掌握,又幫助大家在系統開發層面上做好充分的准備。而從學習的路線圖上來說,先熟悉Java SE編程,能比較熟練的使用Java語言進行編程,熟悉Java語言語法特點,熟悉Java IO、Java線程、網路編程、XML處理等。另外,因為很多的Android應用在運行時都需要去訪問網站伺服器,因此,熟悉一種網路編程語言也是必要的。無論是從學習的方便性還是市場佔有情況來說,使用JSP/Servlet都是不二的選擇,另外,在這個階段也順便學習一下SQL語法和熟悉一種SQL資料庫,以方便後續Android開發中進行SQLite資料庫開發。學習完這些課程後,就可以開始進行Android的應用開發的學習,例如Android中的UI組件、基本組件、數據存儲、感測器、圖形圖像處理、多媒體處理、游戲開發等。為了更好地進行應用編程,可以有選擇的對其Lib類庫進行分析,以加深對其工作機制的理解。再往下,就是操作系統層級了,這里應該要對Linux操作系統進行學習,熟悉其內核和運行原理,熟悉ARM體系架構以及常用指令,並熟悉驅動的編寫方式,掌握其移植方法等。
I. 如何學習安卓開發
Android開發學習路線的七大階段
第一階段:Java面向對象編程;
第二階段:Java Web開發;
第三階段:android UI編程;
第四階段:android網路編程與數據存儲;
第五階段:android手機硬體管理;
第六階段:Android圖形編程技術;
第七階段:Android游戲開發。