作者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://webptt.com/cn.aspx?n=bbs/CYCU_Talk/M.1406179645.A.51C.html
1F:推 mmiu:谢谢详细介绍 推! 07/24 13:40
2F:→ mmiu:不是apple使用者 感到QQ 07/24 13:42
3F:推 iam52:目击那台MAC萤幕爆调.... 07/24 13:43
4F:推 mmiu:关於最後两行 求详细XD 我想写的不是游戏 07/24 13:53
5F:→ mmiu:可以用Excel轻松做到 但不知道怎麽变成APP 07/24 13:53
6F:推 Swampert:明明也强调基本功的重要性 待遇差那麽多 07/24 14:59
7F:推 mabinogi805:目击MAC萤幕爆掉+1 有请当天滑掉的出来说法WWW 07/24 15:08
8F:推 jh961202:学长推 07/24 15:31
9F:推 Swampert:不愧是老人(硕四?) 07/24 16:12
10F:→ scott260202:他哪是老人 他很有名的 在杯木… 07/24 17:16
11F:→ Swampert:杯木哪看的到ID呀 07/24 17:53
12F:→ Swampert:没兴趣重新激活帐号 07/24 17:55
13F:→ Swampert:混入取暖大会 07/24 17:56
14F:→ feng800805:这ID好眼熟XXXD 07/24 19:36
15F:推 lin13787:萤幕面前滑掉的...路过.. 07/24 20:25
16F:推 ImSoGood:神秘路人甲 07/24 20:30
17F:推 ghost800305:岂止有名根本红遍天下,老大每年都会宣传的人物 07/24 20:36
18F:→ ghost800305:呜呜呜 我推错篇了 07/24 20:38
19F:→ ghost800305:我看成gztin...... 07/24 20:41
20F:→ Swampert:最後一段说的 其实是讲高阶API的撰写 07/24 21:43
21F:→ Swampert:iOS课程本身要求以低阶API撰写程式 07/24 21:44
22F:→ Swampert:会知道的这麽清楚是因为 我们那组就是用高阶API撰写期末 07/24 21:45
23F:→ Swampert:虽然pass了 不过老师有说他下一次开始会强调并改进 07/24 21:46
24F:→ L4ys:可以请问学长 何谓高阶API/低阶API吗? 虚心求教 07/24 22:01
25F:→ L4ys:这门课只要期末可以Demo就行了吧 07/24 22:03
26F:推 mabinogi805:先猜:高阶是用框架的;低阶就是手刻的 07/24 22:04
27F:→ L4ys:我记得我修的时候爱怎麽写就怎麽写啊 有点好奇是哪来的要求? 07/24 22:04
28F:→ L4ys:如果是说 framework 的话我好像有点印象啦 07/24 22:06
29F:→ L4ys:应该是有用到 GameServer 那组吧 07/24 22:06
30F:→ Swampert:TO mabinogi805 没错 我猜是有允许一定程度 07/24 22:13
31F:→ Swampert:当时我们是百之百 老师看到吓到 因为期末程式是要验收 07/24 22:14
32F:→ Swampert:这学期的教学成果 07/24 22:15
33F:→ Swampert:授课老师拥有最高诠释权 我讲的不一定对 07/24 22:15
34F:→ Swampert:详细来说不是框架 而是现成API 而且包含很多现成参数 07/24 22:26
35F:→ Swampert:和初始设定 改一改 拼一拼 一个APP诞生 07/24 22:27
36F:推 brianliu:真的是好课 07/25 15:05
37F:推 Swampert:给原PO强烈建议 要学ios 最好准备能够执行MacOS的机器 07/25 15:48
38F:→ Swampert:正版苹果 次之黑苹果 虚拟苹果最不推 07/25 15:49
39F:→ Swampert:才能调整学习时间 07/25 15:50