想學IPHONE或是Android系統開發 請麻煩 … - 老師
By Kelly
at 2011-06-18T12:42
at 2011-06-18T12:42
Table of Contents
其實不管是自己看書學,或是去上課聽人教,
都是如何使用學習材料的主題。
沒有經驗的重點就是在開始的那幾步如何走下去,
即為怎麼樣才能順利入門的問題。
以版友分享的修課經驗來說,
上滿一學期的課,只是課程設計的需要。
即使有些主題不是在實務上需要使用的,
像一些歷史或相關的八卦。
但課程設計的目標是有系統的、全面性的介紹一群知識。
撇開師資的教學方式與特色,
若跟隨著課程進度學習,
那只是充當教導者職業生涯的道具罷了。
他扮演老師,你扮演學生。
他上課有鐘點,沒有曠職。
你上課有吸收,沒曠課。
他有出作業,能當作期末製作成績的材料。
你有交作業,至少能拿到學分。
問題是這樣的進行方式,
以學習知識的角度來說是極為緩慢且沒有效率的過程。
小學、國中、高中,多數的課都是這麼上的。
許多人也習慣了這樣,
以為只要上課去做著聽,
稍為弄懂老師說的重點就算得到需要的知識了。
若是要學習技術可就不行這般任制式的課程計劃擺佈。
情況得反過來,
教師與課程需要是你的道具。
有幾點必需掌握:
1. 入門該學些什麼。
2. 不掌握就無法進行下去的重要觀念
3. 有哪些實務見常的議題
入門其實是學習野外求生的技能:該如何建立好能夠開發出 hello world 的環境。
要生存下去,至少要準備哪些工具,要有識別環境是否安全的能力。
0. 最好要會 Java 跟安裝 JDK
1. 安裝開發工具 IDE or Ant tool
2. 建立虛擬裝置或使用手機或平板 (Windows 安裝 Driver/Linux udev rules)
3. 建立專案。專案的一些名稱規範 (Ex. package name 至少得有二節)
4. 熟悉自動產生的專案樣本,至少會有個 Activity 用來顯示 Hello World
5. 執行看看 hello world 顯示出來的樣子。
入門的第一個門檻就是這些:
確認自己是否有足夠的先備知識,並自有能力自進建構出開發環境。
無論是利用書本,或透過老師教。你得充份掌握例外的情形。
自己或同學常會示範出不可思議的錯誤,
若能在[砍掉重練]之外,找出主因,那是對於錯誤排除經驗提昇的好機會。
主要是您得明白,在做每個動作前,必要的滿足條件是什麼。
準備好這些野外求生基本的器具後,課程的焦點大至會轉移到[概念]的建立。
但時間有時拖得太久,而遺忘了主軸是什麼。
學習者可以回饋課本或授課大綱,抓出一些重點。
以最常用的 Activity 來說,它的 lifecycle 理解由其重要:
http://developer.android.com/reference/android/app/Activity.html
官方文件寫得過於詳細,可能一開始無法好好理解。
但許多書上有作者自行簡化版的,雖然有些不忠於原味,但卻容易吸收理解。
就像小學還未有小數點的知識前,圓週率是 3,這麼一回事。
當然還有許多重要的概念,另外一個例子是 UI Thread 與非 UI Thread 的合作方式。
這也是常被遺忘得區辨的事情。這也是為什麼需要有 AsyncTask 這些工具的理由。
您得走得比課程快,先試著理解。而在授課的那天,在自己腦中檢視教師說的是否正確。
因此,學習進度不比授課內容快,就少一次加深概念的機會。
甚至來不及聽懂就當作不重要。
而最後寫的實務議題,其實不是建議在最後才做。至少能跟概念建立同時進行。
這樣做出與重要概念相悖的實作時,衝擊來會巨大,印象就深刻了。
『我曾經犯下這樣的錯誤。。。』
直接寫點實用的東西,是老梗也無所謂。
像弄個正妹報時 AppWidget、或是寫個 twitter/plurk app。
實務的議題是驗證你學習概念是否正確的時候,
有時也是練習程式組態設定跟 debugger tool 使用是否適當的時刻。
從未寫過網路程式的人,怎麼會記得要開網路使用權限呢?
在課程結束前,只要能保持進度領先。
就能將授課教師當作解題的家教使用,
將同學犯錯的經驗當作自己的教訓。
而使用書本自學者,只要能寫出像樣的問題,
網路上永遠有發問的地方。
ptt 就有 java 版,android 版。
--
都是如何使用學習材料的主題。
沒有經驗的重點就是在開始的那幾步如何走下去,
即為怎麼樣才能順利入門的問題。
以版友分享的修課經驗來說,
上滿一學期的課,只是課程設計的需要。
即使有些主題不是在實務上需要使用的,
像一些歷史或相關的八卦。
但課程設計的目標是有系統的、全面性的介紹一群知識。
撇開師資的教學方式與特色,
若跟隨著課程進度學習,
那只是充當教導者職業生涯的道具罷了。
他扮演老師,你扮演學生。
他上課有鐘點,沒有曠職。
你上課有吸收,沒曠課。
他有出作業,能當作期末製作成績的材料。
你有交作業,至少能拿到學分。
問題是這樣的進行方式,
以學習知識的角度來說是極為緩慢且沒有效率的過程。
小學、國中、高中,多數的課都是這麼上的。
許多人也習慣了這樣,
以為只要上課去做著聽,
稍為弄懂老師說的重點就算得到需要的知識了。
若是要學習技術可就不行這般任制式的課程計劃擺佈。
情況得反過來,
教師與課程需要是你的道具。
有幾點必需掌握:
1. 入門該學些什麼。
2. 不掌握就無法進行下去的重要觀念
3. 有哪些實務見常的議題
入門其實是學習野外求生的技能:該如何建立好能夠開發出 hello world 的環境。
要生存下去,至少要準備哪些工具,要有識別環境是否安全的能力。
0. 最好要會 Java 跟安裝 JDK
1. 安裝開發工具 IDE or Ant tool
2. 建立虛擬裝置或使用手機或平板 (Windows 安裝 Driver/Linux udev rules)
3. 建立專案。專案的一些名稱規範 (Ex. package name 至少得有二節)
4. 熟悉自動產生的專案樣本,至少會有個 Activity 用來顯示 Hello World
5. 執行看看 hello world 顯示出來的樣子。
入門的第一個門檻就是這些:
確認自己是否有足夠的先備知識,並自有能力自進建構出開發環境。
無論是利用書本,或透過老師教。你得充份掌握例外的情形。
自己或同學常會示範出不可思議的錯誤,
若能在[砍掉重練]之外,找出主因,那是對於錯誤排除經驗提昇的好機會。
主要是您得明白,在做每個動作前,必要的滿足條件是什麼。
準備好這些野外求生基本的器具後,課程的焦點大至會轉移到[概念]的建立。
但時間有時拖得太久,而遺忘了主軸是什麼。
學習者可以回饋課本或授課大綱,抓出一些重點。
以最常用的 Activity 來說,它的 lifecycle 理解由其重要:
http://developer.android.com/reference/android/app/Activity.html
官方文件寫得過於詳細,可能一開始無法好好理解。
但許多書上有作者自行簡化版的,雖然有些不忠於原味,但卻容易吸收理解。
就像小學還未有小數點的知識前,圓週率是 3,這麼一回事。
當然還有許多重要的概念,另外一個例子是 UI Thread 與非 UI Thread 的合作方式。
這也是常被遺忘得區辨的事情。這也是為什麼需要有 AsyncTask 這些工具的理由。
您得走得比課程快,先試著理解。而在授課的那天,在自己腦中檢視教師說的是否正確。
因此,學習進度不比授課內容快,就少一次加深概念的機會。
甚至來不及聽懂就當作不重要。
而最後寫的實務議題,其實不是建議在最後才做。至少能跟概念建立同時進行。
這樣做出與重要概念相悖的實作時,衝擊來會巨大,印象就深刻了。
『我曾經犯下這樣的錯誤。。。』
直接寫點實用的東西,是老梗也無所謂。
像弄個正妹報時 AppWidget、或是寫個 twitter/plurk app。
實務的議題是驗證你學習概念是否正確的時候,
有時也是練習程式組態設定跟 debugger tool 使用是否適當的時刻。
從未寫過網路程式的人,怎麼會記得要開網路使用權限呢?
在課程結束前,只要能保持進度領先。
就能將授課教師當作解題的家教使用,
將同學犯錯的經驗當作自己的教訓。
而使用書本自學者,只要能寫出像樣的問題,
網路上永遠有發問的地方。
ptt 就有 java 版,android 版。
--
Tags:
老師
All Comments
By Robert
at 2011-06-23T11:53
at 2011-06-23T11:53
By Cara
at 2011-06-25T11:49
at 2011-06-25T11:49
By Elvira
at 2011-06-29T05:42
at 2011-06-29T05:42
By Blanche
at 2011-07-03T16:19
at 2011-07-03T16:19
By Anthony
at 2011-07-06T15:14
at 2011-07-06T15:14
By Poppy
at 2011-07-08T18:40
at 2011-07-08T18:40
By Noah
at 2011-07-10T19:33
at 2011-07-10T19:33
Related Posts
這樣收入買房冒險嗎?
By Valerie
at 2011-06-17T22:10
at 2011-06-17T22:10
再留一年or回家?
By Odelette
at 2011-06-17T16:21
at 2011-06-17T16:21
要先當兵再讀研究所 還是 先讀研究所呢?
By Margaret
at 2011-06-17T09:12
at 2011-06-17T09:12
也請大家幫我想一下,關於大學問題
By Aaliyah
at 2011-06-17T01:03
at 2011-06-17T01:03
想學IPHONE或是Android系統開發 請麻煩 …
By Lauren
at 2011-06-15T20:28
at 2011-06-15T20:28