作者galic (嘎利)
看板CYCU_Talk
標題Re: [問題] 有老師開APP設計相關課程嗎?
時間Thu Jul 24 13:27:23 2014
看到這裡,我還是來介紹一下,
由資工系 朱守禮教授開設的兩門有關apps開發的課程。
不管你是什麼系的,我只大致介紹一下課程內容,
希望有興趣的人看完後,能對這兩門課程有稍微基本的認識。
////////////////////////////////////////////////////////////////////////
前言:
由於資工系的課程設計較偏重理論和基礎能力培訓,
系上教授對於實務性的技能,比較偏重(或希望)是自我學習。
因此除了專題以外,較少有實務性能力的培養。
apps開發的兩門課程是少有偏實務性的課程(畢竟是硬體組)。
簡單說就是重Project不重考試(連考試都沒有...)。
////////////////////////////////////////////////////////////////////////
課程內容:
這兩門課是 「iOS應用程式開發」和 「Android系統開發」
首先,看課程名稱就知道,iOS課程的教學內容比較偏重在apps軟體設計;
Android課程則偏重在系統開發,apps軟體設計是比較小的一部分。
都是採多次Lab實作(整學期約10支)和期末Project來作為評分依據。
iOS課程偏軟體設計,須具備物件導向和軟體工程的基本概念,
對電腦設備架構也須有一些基本理解。(至少要能分CPU、記憶體、IO週邊等)
對於本身就是apple設備使用經驗者,以及iOS軟體開發有興趣者,非常適合修。
如果不熟Object-C的話,建議至少理解C++, C#, Java之類的語言。
課程會花1/3帶你看這史上最醜的物件導向語言。
Android課程偏嵌入式系統開發,須對硬體和硬體週邊有稍微理解較佳。
也要稍微理解Linux的操作環境,尤其是下command這部份。
apps軟體開發約只佔課程1/3,剩下都是硬體和嵌入式設備教學。
從Build Kernel,Driver,ROM等底層系統移植、Java JNI中層介接介面、
到頂層Java api呼叫,甚至週邊介面的控制都會有基本教學,
比較適合想學基本嵌入式設備和系統移植者來修。
如果只是想開發android apps,這門課可能不是很合適,也會讓你覺得無趣。
另外,課程是假設你非常熟悉Java。
個人認為,兩門課程最終目的都是希望你學會如何追source code...。
設備介紹:
兩門課皆是在電學253嵌入式設備機房上課。
iOS課程有Mac電腦可以使用,作為程式開發平台,不過也希望學生能自備iOS設備。
(今年才好不容易弄好的Mac,摔一台好幾萬請小心...)
Android課程則是要在Linux環境下開發系統,若本身電腦沒有Linux沒關係,
課程主要是透過VM虛擬機跑環境,所以要自備外接硬碟比較好。
另外每組都會有一個android開發平台,目前用的是長高科技的6410xp板子,
是android api 2.1的系統,所以在app開發時,api的使用上會有很大限制。
不過作為系統開發,這套開發板已經足夠你理解整套系統移植的過程。
(不知道之後會不會買新的板子來...)
其它:
這兩門課程都有醫工系的學生來修過。
就算真的學不太來,還是可以和助教討論。
每次都把Lab做好,就算期末Project是拿前面Lab來改,
分數也不太差,但是這樣就真的有點可惜…。
認真一點做Project,八九十分是很常有的。
////////////////////////////////////////////////////////////////////////
有點題外:
剛好有提到apps開發相關,我分享一下我的經驗。
iOS跟Android在設計上有很多概念都互通,或者應該說在程式語言上。
只是中間可能都需要花上幾週的時間來做轉換,培養熟悉度等等。
只是apps開發除了牽涉設備上的基本功能、介面實作等技能外,
可能還會因為功能上,牽涉到像是連線、資料儲存或資料庫等基本應用問題,
使得開發變得較為困難,需要學習的層面也很廣。
所以該問的是「想開發什麼樣的apps?」以及「具備什麼樣的功能?」
當然如果你只是想寫個簡單的遊戲或是一些基本功能,或許從
遊戲引擎(game engine)或應用框架(application framework)下手還比較合適。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.34.22.235
※ 文章網址: http://www.ptt.cc/bbs/CYCU_Talk/M.1406179645.A.51C.html
推 mmiu:謝謝詳細介紹 推! 07/24 13:40
→ mmiu:不是apple使用者 感到QQ 07/24 13:42
推 iam52:目擊那台MAC螢幕爆調.... 07/24 13:43
推 mmiu:關於最後兩行 求詳細XD 我想寫的不是遊戲 07/24 13:53
→ mmiu:可以用Excel輕鬆做到 但不知道怎麼變成APP 07/24 13:53
推 Swampert:明明也強調基本功的重要性 待遇差那麼多 07/24 14:59
推 mabinogi805:目擊MAC螢幕爆掉+1 有請當天滑掉的出來說法WWW 07/24 15:08
推 jh961202:學長推 07/24 15:31
推 Swampert:不愧是老人(碩四?) 07/24 16:12
→ scott260202:他哪是老人 他很有名的 在杯木… 07/24 17:16
→ Swampert:杯木哪看的到ID呀 07/24 17:53
→ Swampert:沒興趣重新激活帳號 07/24 17:55
→ Swampert:混入取暖大會 07/24 17:56
→ feng800805:這ID好眼熟XXXD 07/24 19:36
推 lin13787:螢幕面前滑掉的...路過.. 07/24 20:25
推 ImSoGood:神秘路人甲 07/24 20:30
推 ghost800305:豈止有名根本紅遍天下,老大每年都會宣傳的人物 07/24 20:36
→ ghost800305:嗚嗚嗚 我推錯篇了 07/24 20:38
→ ghost800305:我看成gztin...... 07/24 20:41
→ Swampert:最後一段說的 其實是講高階API的撰寫 07/24 21:43
→ Swampert:iOS課程本身要求以低階API撰寫程式 07/24 21:44
→ Swampert:會知道的這麼清楚是因為 我們那組就是用高階API撰寫期末 07/24 21:45
→ Swampert:雖然pass了 不過老師有說他下一次開始會強調並改進 07/24 21:46
→ L4ys:可以請問學長 何謂高階API/低階API嗎? 虛心求教 07/24 22:01
→ L4ys:這門課只要期末可以Demo就行了吧 07/24 22:03
推 mabinogi805:先猜:高階是用框架的;低階就是手刻的 07/24 22:04
→ L4ys:我記得我修的時候愛怎麼寫就怎麼寫啊 有點好奇是哪來的要求? 07/24 22:04
→ L4ys:如果是說 framework 的話我好像有點印象啦 07/24 22:06
→ L4ys:應該是有用到 GameServer 那組吧 07/24 22:06
→ Swampert:TO mabinogi805 沒錯 我猜是有允許一定程度 07/24 22:13
→ Swampert:當時我們是百之百 老師看到嚇到 因為期末程式是要驗收 07/24 22:14
→ Swampert:這學期的教學成果 07/24 22:15
→ Swampert:授課老師擁有最高詮釋權 我講的不一定對 07/24 22:15
→ Swampert:詳細來說不是框架 而是現成API 而且包含很多現成參數 07/24 22:26
→ Swampert:和初始設定 改一改 拼一拼 一個APP誕生 07/24 22:27
推 brianliu:真的是好課 07/25 15:05
推 Swampert:給原PO強烈建議 要學ios 最好準備能夠執行MacOS的機器 07/25 15:48
→ Swampert:正版蘋果 次之黑蘋果 虛擬蘋果最不推 07/25 15:49
→ Swampert:才能調整學習時間 07/25 15:50