上這個課程除了教會學生怎麼寫Android APP,我自己也從學生那邊學到了很多。學生來自各行各業,常常會用不同於資工人的角度來問問題。有的問題是我從來不曾考慮到
的,觸發了我一些想法,有的讓我很想直接丟"Let me google for you"給他,也有的問題會讓人很想吐槽,尤其是關於程式語法的問題。
上這個課最累的地方是要兼顧所有人的學習情況。因為學生來自各處,大概有八成是已經在程式界工作的,也有外校的學生來上課。他們程度相差很大,有的Java很熟只是想學Android,有的寫過VB,還有根本狀況外不會寫程式的。
為了盡可能讓所有人都有收穫,我在前面兩小時講課的時候講得比較深入,而在最後一小時的練習則開一些比較簡單的程式給他們實作。這樣可以讓大家都能實作出程式,而強的人也能學習到更深入的東西,不過意見調查表上說我教太難的也出現過好幾次。
我是覺得Android的東西很雜,教的東西本來就很難全盤吸收,所以主要還是讓學生知道有這個東西,大概要怎麼用。有概念的話,之後開發的時候就可以很容易找到教學或範例,不管是從書上或是Google。
每次練習實作的時候,我基本上就只會開出要求,讓他們自己發揮。同時我也會在底下巡看大家實作的情況,同時有問題也可以問我。基本上效果不錯,同時我也能透過他們實作的程式跟他們的問題來判斷他們的程度。
大部分的學生都至少能把實作簡單的部份給完成,有的強者還會自己練習我放在補充的部分。不過也有少數裝死的同學。之前某期有個同學每次都躲在最後面,實作的時候就開Eclipse裝忙,我到後來才發現他完全沒跟上的時候已經來不及沒救了。我一直告訴他們有問題就盡量問,不過遇到這種上課完全沒聽又死都不問的,我真的不知道他花錢來上課幹嘛。
下面是我自己做的投影片。我自己做投影片都做得非常精簡,通常都是幾點重點的說明再加上片段的範例程式碼,之後上課的時候再來詳細的介紹。
初學者直接看這些投影片的話應該會不知道在幹嘛。但是對於有一定Android基礎的人,裡面的範例程式碼應該會滿好用的,因為我把範例的程式碼切得很乾淨,只要知道Android的程式架構,知道該把程式擺在哪邊,通常複製貼上就能作用了。至少我自己在寫程式的時候也常常翻投影片來複製貼上XD。
我上課是上比較舊的Android 2.2版本,主要是因為相容性的關係,4.x的程式常常不能在2.x的手機上跑,但是2.x的基本上可以相容於新版本。當然還是有一些例外,例如menu之類的,這些我會在上到的時候補充。之後我也會把這些上課內容打成網誌,希望能對大家有所幫助。
1.Android應用程式設計基礎
http://ppt.cc/CpUN
2.瞭解Android生命週期與運作原理
http://ppt.cc/CsCo
3.手機事件與系統預設廣播訊息
http://ppt.cc/Z02R
4.Intents、Broadcast Receiver自訂廣播訊息
http://ppt.cc/hfiR
5.背景服務Service與執行序構成
http://ppt.cc/gXWD
6.使用者人機介面架構模型(互動視窗與訊息)
http://ppt.cc/6UsS
7.手機資料處理
http://ppt.cc/ZGRO
8.存取手機電信資料與識別
http://ppt.cc/A3Nk
9.LBS、GPS與Google Map地圖服務
http://ppt.cc/yJvp
10.音訊與影像
http://ppt.cc/uLNc
附註:
Let me google for you:
http://zh-tw.lmgtfy.com/
可以把Google搜尋做成一個簡單動畫,效果非常嘲諷
http://zh-tw.lmgtfy.com/
可以把Google搜尋做成一個簡單動畫,效果非常嘲諷
沒有留言:
張貼留言