作者huice (灰色先生)
看板AndroidDev
标题[转录]Re: [请益] 想学IPHONE或是Android系统开发 请麻烦 …
时间Sun Jun 19 20:45:40 2011
※ [本文转录自 CareerPlan 看板 #1D_2oTUT ]
作者: qrtt1 (null) 看板: CareerPlan
标题: Re: [请益] 想学IPHONE或是Android系统开发 请麻烦 …
时间: Sat Jun 18 12:42:03 2011
其实不管是自己看书学,或是去上课听人教,
都是如何使用学习材料的主题。
没有经验的重点就是在开始的那几步如何走下去,
即为怎麽样才能顺利入门的问题。
以版友分享的修课经验来说,
上满一学期的课,只是课程设计的需要。
即使有些主题不是在实务上需要使用的,
像一些历史或相关的八卦。
但课程设计的目标是有系统的、全面性的介绍一群知识。
撇开师资的教学方式与特色,
若跟随着课程进度学习,
那只是充当教导者职业生涯的道具罢了。
他扮演老师,你扮演学生。
他上课有钟点,没有旷职。
你上课有吸收,没旷课。
他有出作业,能当作期末制作成绩的材料。
你有交作业,至少能拿到学分。
问题是这样的进行方式,
以学习知识的角度来说是极为缓慢且没有效率的过程。
小学、国中、高中,多数的课都是这麽上的。
许多人也习惯了这样,
以为只要上课去做着听,
稍为弄懂老师说的重点就算得到需要的知识了。
若是要学习技术可就不行这般任制式的课程计划摆布。
情况得反过来,
教师与课程需要是你的道具。
有几点必需掌握:
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 版。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.231.52.13
1F:推 jimlexus: 06/18 17:06
2F:推 darptt:YA! 中肯! 06/19 01:26
3F:推 tomap41017:这篇好棒!!学起来 06/19 01:32
※ 编辑: qrtt1 来自: 61.231.52.13 (06/19 13:15)
4F:推 SkyIllusionn:推,自学的精神! 06/19 15:31
5F:推 coronach:Android开发在AndroidDev版 06/19 16:14
6F:→ huice:可以借转 AndroidDev版 吗? 06/19 17:44
7F:→ qrtt1:呵,可以啊。反正都po出来了。 06/19 20:16
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 78.225.41.201
8F:→ huice:生涯版看到觉得不错 就转过来了 06/19 20:47
9F:推 ericinttu:推一下野外求生. 06/19 21:42